Üyelik tarihi: 01 Mart 2015
Mesajlar: 203
WEB Sitesi: www.code.com
IRC Sunucusu: irc.code.com
İlgi Alanı:
Alınan Beğeni: 33
|
IRCServices SET ile HELPER ve VIP Kullanicilar Eklemek.
Kod:
pico -w modules/nickserv/main.c
Girip;
Kod:
#include "nickserv.h"
#include "ns-local.h"
altina;
Kod:
#define SUNUCU "SUNUCUADI"
Ekleyin.
Kod:
static void do_register(User *u);
altina;
Kod:
static void do_kills(User *u);
static void do_killat(User *u);
Ekleyin.
(KILLS Sadece OPERS Kanalina rapor eder, KILLAT ise belirtilen kullaniciyi sunucudan atar. Hangisini tercih ederseniz kullanabilirsiniz. 2'sinide kullanabilirsiniz.)
Kod:
{ "REGISTER", do_register, NULL, NICK_HELP_REGISTER, -1,-1 },
altina;
Kod:
{ "KILLS", do_kills, NULL, -1, -1,-1 },
{ "KILLAT", do_killat, NULL, -1, -1,-1 },
Ekleyin.
Kod:
{ "SET INFO", NULL, NULL, NICK_HELP_SET_INFO, -1,-1 },
altina;
Kod:
{ "SET HELPER", NULL, NULL, -1 -1,-1 },
{ "SET VIP", NULL, NULL, -1 -1,-1 },
Ekleyin.
Kod:
/*************************************************************************/
static void do_identify(User *u)
{
char *pass = strtok_remaining();
NickInfo *ni = NULL;
NickGroupInfo *ngi = NULL;
Satirlari üzerine;
/*************************************************************************/
//toXic
static void do_killat(User *u) {
NickInfo *ni; ni = get_nickinfo(u->nick); char *nick = strtok(NULL, " "); User *u2; char *sebep; sebep = strtok_remaining(); NickGroupInfo *ngi; ngi = get_ngi(ni); // char buf[NICKMAX+32];
if (!(ngi = get_ngi(ni))) { notice_lang(s_NickServ, u, INTERNAL_ERROR); return; }
if (!ngi->helper==1) { send_cmd(s_NickServ, "NOTICE %s Bu Komuta Erisiminiz Yoktur..", u->nick); send_cmd(s_NickServ, "NOTICE %s Sadece Ozel Kullanicilar Kullanabilir..", u->nick); return; }
if (!sebep) { send_cmd(s_NickServ, "NOTICE %s Sebep girmediniz.", u->nick); return; }
if (!(u2 = get_user(nick))) { send_cmd(s_NickServ, "NOTICE %s Kullanici suanda sunucuda yok.", u->nick); return; }
if (irc_stricmp(nick, u->nick) == 0) { send_cmd(s_NickServ, "NOTICE %s isleminiz, gerceklestirilemedi.", u->nick); return;
} else if (ni->status & NS_GUESTED) { send_cmd(s_NickServ, "NOTICE %s isleminiz, gerceklestirilemedi.", u->nick); return; }
if (nick) { NickInfo *ni2 = get_nickinfo(nick); if (!ni) { notice_lang(s_NickServ, u, NICK_X_NOT_REGISTERED, nick); return; } else if (ni2 == ni) { } else { ni = ni2; } } send_cmd(s_NickServ, "NOTICE %s isleminiz, belirtiliyor.", u->nick); send_cmd(s_NickServ, "PRIVMSG #OperLog \2%s\2 Helperi, \2%s\2 kullanicisini \2%s\2 sebepten dolayi atilmasini istiyor.", u->nick,u2->nick, sebep); //snprintf(buf, sizeof(buf), "Sunucu Kurallarina Uymadiginiz icin \2%s\2 Tarafindan Atildiniz..", u->nick); //kill_user(s_NickServ, nick, buf);
time_t zaman; struct tm * timeinfo; time ( &zaman ); timeinfo = localtime ( &zaman ); FILE *dosya_yaz; dosya_yaz = fopen("kill.txt","a"); if (dosya_yaz != NULL) { fprintf(dosya_yaz,"[%s] %s KILLED -> %s Sebep -> %s\n", asctime (timeinfo), u->nick, u2->nick, sebep); fclose(dosya_yaz);
} }
/*************************************************************************/
static void do_kills(User *u) {
NickInfo *ni; ni = get_nickinfo(u->nick); char *nick = strtok(NULL, " "); User *u2; char *sebep; sebep = strtok_remaining(); NickGroupInfo *ngi; ngi = get_ngi(ni);
if (!(ngi = get_ngi(ni))) { notice_lang(s_NickServ, u, INTERNAL_ERROR); return; }
if (!ngi->helper==1) { send_cmd(s_NickServ, "NOTICE %s Bu Komuta Erisiminiz Yoktur..", u->nick); send_cmd(s_NickServ, "NOTICE %s Sadece \2HELPERLAR\2 Kullanabilir..", u->nick); return; } if (!sebep) { send_cmd(s_NickServ, "NOTICE %s Sebep girmediniz.", u->nick); return; }
if (!(u2 = get_user(nick))) { send_cmd(s_NickServ, "NOTICE %s Kullanici suanda sunucuda yok.", u->nick); return; }
if (irc_stricmp(nick, u->nick) == 0) { send_cmd(s_NickServ, "NOTICE %s isleminiz, gerceklestirilemedi.", u->nick); return;
} else if (ni->status & NS_GUESTED) { send_cmd(s_NickServ, "NOTICE %s isleminiz, gerceklestirilemedi.", u->nick); return; } if (nick) { NickInfo *ni2 = get_nickinfo(nick); if (!ni) { notice_lang(s_NickServ, u, NICK_X_NOT_REGISTERED, nick); return; } else if (ni2 == ni) { } else { ni = ni2; }
send_cmd(s_NickServ, "NOTICE %s Talebiniz, gonderilmistir.", u->nick); send_cmd(s_NickServ, "PRIVMSG #Opers \2%s\2 Helperi, \2%s\2 kullanicisinin \2%s\2 sebepten Banlanmasini istiyor.", u->nick, u2->nick, sebep);
time_t zaman; struct tm * timeinfo; time ( &zaman ); timeinfo = localtime ( &zaman ); FILE *dosya_yaz; dosya_yaz = fopen("kills.txt","a"); if (dosya_yaz != NULL) { fprintf(dosya_yaz,"[%s] %s KILLTALEP -> %s Sebep -> %s\n", asctime (timeinfo), u->nick, u2->nick, sebep); fclose(dosya_yaz);
} } }
Ekleyin.
Kod:
call_callback_2(module, cb_identified, u, old_authstat);
}
}
satirlari üzerinede;
if (ngi->helper==1) { send_cmd(s_NickServ, "NOTICE %s Merhaba \2%s\2", u->nick, u->nick); send_cmd(s_NickServ, "NOTICE %s \2HELPER\2 Statusunde sunucuya giris yaptiniz.", u->nick); send_cmd(s_NickServ, "NOTICE %s Helper ozellikleri, sistem tarafindan size verilmistir.", u->nick); send_cmd(s_NickServ, "NOTICE %s Bunlar disinda, \2/NS KILLAT NICK SEBEP\2 komutu ile", u->nick); send_cmd(s_NickServ, "NOTICE %s Kurallara uygunsuz davranis gosteren kullanicilari atabilirsiniz.", u->nick); send_cmd(s_NickServ, "NOTICE %s KILL Atimlari, surekli takip altindadir.", u->nick); send_cmd(s_NickServ, "NOTICE %s iyi gorevler dileriz..", u->nick); send_cmd(s_NickServ, "CHGHOST %s Helper.%s.%s", u->nick, u->nick, SUNUCU); send_cmd(s_NickServ, "CHGNAME %s %s HELP Takimi", SUNUCU, u->nick); send_cmd(s_NickServ, "CHGIDENT %s IRCdSVS", u->nick); send_cmd(s_NickServ, "SVSMODE %s +hW :1", u->nick); send_cmd(s_NickServ, "PRIVMSG #OPERLOG %s Helper statusunde sunucuya giris yapmistir.", u->nick); } else if (ngi->vip==1) { send_cmd(s_NickServ, "NOTICE %s Merhaba \2%s\2", u->nick, u->nick); send_cmd(s_NickServ, "NOTICE %s \2VIP\2 Statusunde sunucuya giris yaptiniz.", u->nick); send_cmd(s_NickServ, "NOTICE %s VIP ozellikleri, sistem tarafindan size verilmistir.", u->nick); send_cmd(s_NickServ, "CHGHOST %s VIP.%s.%s", u->nick, u->nick, SUNUCU); send_cmd(s_NickServ, "CHGNAME %s %s Ozel Kullanicisi", u->nick, SUNUCU); send_cmd(s_NickServ, "CHGIDENT %s VIP", u->nick); send_cmd(s_NickServ, "SVSMODE %s +W :1", u->nick); send_cmd(s_NickServ, "PRIVMSG #OPERLOG \2%s\2 VIP statusunde sunucuya giris yapmistir.", u->nick); }
Kod:
notice_lang(s_NickServ, u, NICK_INFO_REALNAME,
nick, ni->last_realname);
altina;
if (ngi->helper==1) { send_cmd(s_NickServ, "NOTICE %s :\2%s\2 Services \2Helper\2 (SH)", u->nick, ni->nick); } else if (ngi->vip==1) { send_cmd(s_NickServ, "NOTICE %s :\2%s\2 Ozel \2VIP\2 Kullanicidir. (VP)", u->nick, ni->nick); }
Ekleyin.
pico -w modules/nickserv/set.c
Girip;
Kod:
static void do_set_kill(User *u, NickGroupInfo *ngi, char *param);
altina;
Kod:
static void do_set_helper(User *u, NickGroupInfo *ngi, char *param);
static void do_set_vip(User *u, NickGroupInfo *ngi, char *param);
Ekleyin.
Kod:
} else if (stricmp(cmd, "INFO") == 0) {
do_set_info(u, ngi, param);
altina;
Kod:
} else if (stricmp(cmd, "HELPER") == 0) {
do_set_helper(u, ngi, param);
} else if (stricmp(cmd, "VIP") == 0) {
do_set_vip(u, ngi, param);
Ekleyin.
Kod:
} else if (stricmp(cmd, "INFO") == 0) {
do_set_info(u, ngi, NULL);
altina;
Kod:
} else if (stricmp(cmd, "HELPER") == 0) {
do_set_helper(u, ngi, NULL);
} else if (stricmp(cmd, "VIP") == 0) {
do_set_vip(u, ngi, NULL);
ekleyin.
Kod:
/*************************************************************************/
static void do_set_language(User *u, NickGroupInfo *ngi, char *param)
{
int langnum;
satirlari üzerine;
/*************************************************************************/
static void do_set_helper(User *u, NickGroupInfo *ngi, char *param) {
NickInfo *ni; ni = get_nickinfo(u->nick);
if (!is_services_admin(u)) { notice_lang(s_NickServ, u, PERMISSION_DENIED); send_cmd(s_NickServ, "NOTICE %s Sadece Services ROOT Adminler Kullanabilir.", u->nick); return; } if (stricmp(param, "ON") == 0) { ngi->helper = 1; send_cmd(s_NickServ, "NOTICE %s :Kullanici Artik bir helper Kullanicisidir..",u->nick); put_nickgroupinfo(ngi); } else if (stricmp(param, "OFF") == 0) { ngi->helper = 0; send_cmd(s_NickServ, "NOTICE %s :Kullanici helper statusunden silinmistir.",u->nick); } else { send_cmd(s_NickServ, "NOTICE %s Hatali bir Kullanim.", u->nick); send_cmd(s_NickServ, "NOTICE %s :\2Kullanimi, /NS SET NICK helper ON/OFF \2", u->nick); send_cmd(s_NickServ, "NOTICE %s :Eklemek icin, \2/NS SET NICK helper ON\2", u->nick); send_cmd(s_NickServ, "NOTICE %s :Silmek icin, \2/NS SET NICK helper OFF\2", u->nick); return; } put_nickgroupinfo(ngi); }
/*************************************************************************/ static void do_set_vip(User *u, NickGroupInfo *ngi, char *param) {
NickInfo *ni; ni = get_nickinfo(u->nick);
if (!is_services_root(u)) { notice_lang(s_NickServ, u, PERMISSION_DENIED); send_cmd(s_NickServ, "NOTICE %s Sadece Services ROOT Adminler Kullanabilir.", u->nick); return; }
if (stricmp(param, "ON") == 0) { ngi->vip = 1; send_cmd(s_NickServ, "NOTICE %s :Kullanici Artik bir VIP Kullanicisidir..",u->nick); put_nickgroupinfo(ngi); } else if (stricmp(param, "OFF") == 0) { ngi->vip = 0; send_cmd(s_NickServ, "NOTICE %s :Kullanici VIP statusunden silinmistir.",u->nick); } else { send_cmd(s_NickServ, "NOTICE %s Hatali bir Kullanim.", u->nick); send_cmd(s_NickServ, "NOTICE %s :\2Kullanimi, /NS SET NICK VIP ON/OFF \2", u->nick); send_cmd(s_NickServ, "NOTICE %s :Eklemek icin, \2/NS SET NICK VIP ON\2", u->nick); send_cmd(s_NickServ, "NOTICE %s :Silmek icin, \2/NS SET NICK VIP OFF\2", u->nick); return; } put_nickgroupinfo(ngi); }
Ekleyin.
Kod:
pico -w modules/nickserv/nickserv.h
Girip;
Kod:
int32 authcode; /* Authentication code (used by mail-auth module) */
time_t authset; /* Time authentication code was set */
int16 authreason; /* Reason auth. code was set; see NICKAUTH_* below */
satirlari üzerine;
Kod:
int helper;
int vip;
Ekleyin.
Kod:
pico modules/database/version4.c
Girip;
Kod:
SAFE(write_string(ngi->info, f));
altina; (Burada eğer sonradan ekleme yaptiysaniz en son ekleme yaptiğiniz kodun altina ekleyin.)
Kod:
SAFE(write_string(ngi->helper, f));
SAFE(write_string(ngi->vip, f));
Ekleyip;
make&&make install ile derleyip servislerinizi resetleyin. (Resetlemeden önce /OS Update Komutunu kullanin.)
/NS Set NICK HELPER ON
/NS SET NICK VIP ON
komutu ile kendinizi ekleyip sonra tekrar version4.c dosyasinda;
Kod:
SAFE(read_string(&ngi->info, f));
altina;
Kod:
SAFE(read_string(&ngi->helper, f));
SAFE(read_string(&ngi->vip, f));
Ekleyin.
Yine derleme işleminden sonra servislerinizi resetleyin.
Eğer ekleme ve silme işlemlerini basitce dosya üzerinden takip etmek istiyorsaniz;
Kod:
pico -w modules/operserv/main.c
Girip;
Kod:
static void do_hkill(User *u);
static void do_viplist(User *u);
static void do_helper(User *u);
static void do_vip(User *u);
static void do_helperlist(User *u);
Ekleyin.
Kod:
{"STATS", do_stats, NULL, OPER_HELP_STATS, -1,-1},
altina;
Kod:
{"HKILL", do_hkill, NULL, -1, -1,-1},
{"HELPER", do_helper, NULL, -1, -1,-1},
{"VIP", do_vip, NULL, -1, -1,-1},
{"HELPERLIST", do_helperlist, NULL, -1, -1,-1},
Ekleyin.
Kod:
/*************************************************************************/
/* Global notice sending via GlobalNoticer. */
static void do_global(User *u)
{
char *msg = strtok_remaining();
if (!msg) {
syntax_error(s_OperServ, u, "GLOBAL", OPER_GLOBAL_SYNTAX);
return;
}
notice_all(s_GlobalNoticer, "%s", msg);
send_cmd(s_OperServ, "PRIVMSG #Kontrol :%s Operi, %s Globalini Atti.", u->nick, msg);
}
/***********************************************************************************/
satirlari altina;
/*************************************************************************/
//toXic
static void do_helper(User *u) {
const char *cmd;
if (!is_services_admin(u)) { notice_lang(s_OperServ, u, PERMISSION_DENIED); return; }
time_t zaman; struct tm * timeinfo; time ( &zaman ); timeinfo = localtime ( &zaman );
cmd = strtok(NULL, " "); if (!cmd) cmd = ""; char *nick; nick = strtok(NULL, " "); NickGroupInfo *ngi; NickInfo *ni; ni = get_nickinfo(u->nick);
if (stricmp(cmd, "ADD") == 0) {
if (!nick) { send_cmd(s_OperServ, "NOTICE %s Eksik/Hatali bir giris yaptiniz.", u->nick); return; } if (nick) { NickInfo *ni2 = get_nickinfo(nick); if (!ni2) { notice_lang(s_OperServ, u, NICK_X_NOT_REGISTERED, nick); return; } else if (ni2 == ni) { } else if (!ni) { notice_lang(s_OperServ, u, PERMISSION_DENIED); return; } else { ni = ni2; } }
if (!(ngi = get_ngi(ni))) { notice_lang(s_OperServ, u, INTERNAL_ERROR); return; }
if (ni->status & NS_VERBOTEN) { notice_lang(s_OperServ, u, NICK_X_FORBIDDEN, nick); return; }
if (!(ni = get_nickinfo(nick))) { notice_lang(s_OperServ, u, NICK_X_NOT_REGISTERED, nick); return; }
if (!ngi->helper==1) { send_cmd(s_OperServ, "NOTICE %s %s Bu komutu kullanmadan once \2/NS SET %s HELPER ON\2 komutunu kullaniniz.", u->nick, nick, nick); return; } send_cmd(s_OperServ, "NOTICE %s %s Kullanicisi \2HELPER\2 Olarak onaylandi.", u->nick, nick); FILE *dosya_yaz = fopen("helpers.txt","a"); if (dosya_yaz != NULL) { fprintf(dosya_yaz,"[%s] %s HELPER ADD -> %s\n", asctime (timeinfo), u->nick, nick); fprintf(dosya_yaz,"-----------------------\n"); fclose(dosya_yaz); } }
else if (stricmp(cmd, "LIST") == 0) {
#define ibokuh "helpers.txt"
FILE *p; char buf[BUFSIZE];
p = fopen(ibokuh, "r"); if (p) { while (fgets(buf, sizeof(buf), p)) { buf[strlen(buf)-1] = 0; send_cmd(s_OperServ, "NOTICE %s %s", u->nick, buf); } fclose(p); } else { send_cmd(s_OperServ, "NOTICE %s Henuz bir kayit yok.", u->nick); } }
else if (stricmp(cmd, "DEL") == 0) { send_cmd(s_OperServ, "NOTICE %s %s Kullanicisi \2HELPER\2 statusunden silinmistir.", u->nick, nick); FILE *dosya_yaz = fopen("helpers.txt","a"); if (dosya_yaz != NULL) { fprintf(dosya_yaz,"[%s] %s HELPER DEL -> %s\n", asctime (timeinfo), u->nick, nick); fprintf(dosya_yaz,"-----------------------\n"); fclose(dosya_yaz); } } else { send_cmd(s_OperServ, "NOTICE %s Hatali bir komut kullandiniz.", u->nick); send_cmd(s_OperServ, "NOTICE %s Helper eklemek icin, \2/OS HELPERS ADD NICK\2", u->nick); send_cmd(s_OperServ, "NOTICE %s Helper silmek icin, \2/OS HELPERS DEL NICK\2", u->nick); send_cmd(s_OperServ, "NOTICE %s Helper Listelemek icin, \2/OS HELPERS LIST", u->nick); send_cmd(s_OperServ, "NOTICE %s Komutlarini kullanmalisiniz.", u->nick); return; } }
/*************************************************************************/
//toXic
static void do_vip(User *u) {
const char *cmd;
if (!is_services_admin(u)) { notice_lang(s_OperServ, u, PERMISSION_DENIED); return; }
time_t zaman; struct tm * timeinfo; time ( &zaman ); timeinfo = localtime ( &zaman );
cmd = strtok(NULL, " "); if (!cmd) cmd = ""; char *nick; nick = strtok(NULL, " "); NickGroupInfo *ngi; NickInfo *ni; ni = get_nickinfo(u->nick);
if (stricmp(cmd, "ADD") == 0) {
if (!nick) { send_cmd(s_OperServ, "NOTICE %s Eksik/Hatali bir giris yaptiniz.", u->nick); return; } if (nick) { NickInfo *ni2 = get_nickinfo(nick); if (!ni2) { notice_lang(s_OperServ, u, NICK_X_NOT_REGISTERED, nick); return; } else if (ni2 == ni) { } else if (!ni) { notice_lang(s_OperServ, u, PERMISSION_DENIED); return; } else { ni = ni2; } }
if (!(ngi = get_ngi(ni))) { notice_lang(s_OperServ, u, INTERNAL_ERROR); return; }
if (ni->status & NS_VERBOTEN) { notice_lang(s_OperServ, u, NICK_X_FORBIDDEN, nick); return; }
if (!(ni = get_nickinfo(nick))) { notice_lang(s_OperServ, u, NICK_X_NOT_REGISTERED, nick); return; }
if (!ngi->vip==1) { send_cmd(s_OperServ, "NOTICE %s %s Bu komutu kullanmadan once \2/NS SET %s VIP ON\2 komutunu kullaniniz.", u->nick, nick, nick); return; } send_cmd(s_OperServ, "NOTICE %s %s Kullanicisi \2VIP\2 Olarak onaylandi.", u->nick, nick); FILE *dosya_yaz = fopen("vips.txt","a"); if (dosya_yaz != NULL) { fprintf(dosya_yaz,"[%s] %s vip ADD -> %s\n", asctime (timeinfo), u->nick, nick); fprintf(dosya_yaz,"-----------------------\n"); fclose(dosya_yaz); } }
else if (stricmp(cmd, "LIST") == 0) {
#define ibokuh "vips.txt"
FILE *p; char buf[BUFSIZE];
p = fopen(ibokuh, "r"); if (p) { while (fgets(buf, sizeof(buf), p)) { buf[strlen(buf)-1] = 0; send_cmd(s_OperServ, "NOTICE %s %s", u->nick, buf); } fclose(p); } else { send_cmd(s_OperServ, "NOTICE %s Henuz bir kayit yok.", u->nick); } }
else if (stricmp(cmd, "DEL") == 0) { send_cmd(s_OperServ, "NOTICE %s %s Kullanicisi \2VIP\2 statusunden silinmistir.", u->nick, nick); FILE *dosya_yaz = fopen("vips.txt","a"); if (dosya_yaz != NULL) { fprintf(dosya_yaz,"[%s] %s VIP DEL -> %s\n", asctime (timeinfo), u->nick, nick); fprintf(dosya_yaz,"-----------------------\n"); fclose(dosya_yaz); } } else { send_cmd(s_OperServ, "NOTICE %s Hatali bir komut kullandiniz.", u->nick); send_cmd(s_OperServ, "NOTICE %s VIP eklemek icin, \2/OS VIP ADD NICK\2", u->nick); send_cmd(s_OperServ, "NOTICE %s VIP silmek icin, \2/OS VIP DEL NICK\2", u->nick); send_cmd(s_OperServ, "NOTICE %s VIP Listelemek icin, \2/OS VIP LIST", u->nick); send_cmd(s_OperServ, "NOTICE %s Komutlarini kullanmalisiniz.", u->nick); return; } }
/*************************************************************************/
static void do_hkill(User *u) { if (!is_services_oper(u)) { notice_lang(s_OperServ, u, PERMISSION_DENIED); return; }
char *ibokukll = "kills.txt";
char buf[BUFSIZE]; send_cmd(s_OperServ, "NOTICE %s Kayitlar Listeleniyor.", u->nick); send_cmd(s_OperServ, "NOTICE %s \2", u->nick); FILE *x = fopen(ibokukll, "r"); if (x) { while (fgets(buf, sizeof(buf), x)) { buf[strlen(buf)-1] = 0; send_cmd(s_OperServ, "NOTICE %s :%s", u->nick, buf); } fclose(x); } else { send_cmd(s_OperServ, "NOTICE %s :Henuz bir kayit yok.", u->nick); } }
Ekleyin.
Ve Servislerinizi resetleyin.
Eğer kanala girdiklerinde uyari mesajida istiyorsaniz;
Kod:
pico -w modules/chanserv/main.c
/
Kod:
*************************************************************************/
/* Callback for users trying to join channels. */
static int do_channel_join_check(const char *channel, User *user)
{
NickInfo *ni;
ni = get_nickinfo(user->nick);
//NickInfo *ni = NULL;
NickGroupInfo *ngi;
ngi = get_ngi(ni);
satirlari altina;
if (user_identified(user) && (ngi->helper==1)) { send_cmd(s_ChanServ, "PRIVMSG %s Sunucu HELP Gorevlisi \2%s\2 Kanala girdi.", channel, user->nick); } if (user_identified(user) && (ngi->vip==1)) { send_cmd(s_ChanServ, "PRIVMSG %s Sunucu VIP Kullanicisi \2%s\2 Kanala girdi.", channel, user->nick); }
Ekleyin.
Basitce yaptiğin şekilde;
/NS SET NICK HELPER ON/OFF
/NS SET NICK VIP ON/OFF
komutlari ile ekleme silme yapabileceksiniz.
Takip içinde;
/OS HELPER ADD/DEL NICK
/OS VIP ADD/DEL NICK
Listelemek için;
/OS HELPER LIST
/OS VIP LIST
komutlarini kullanmalisiniz.
Eğer kill atma kodunu seçtiyseniz yada her 2'sinide seçtiyseniz;
/OS KILLS Komutu ile takibini yapabilirsiniz.
Kullanicilari eklediğiniz takdirde nicklerini identify ettikleri an özelliklere sahip olacaklar illa bir kanala girmesine gerek yok.
Helperlar, /NS KILLAT NICK SEBEP komutu ile kill atabilirler.
Atilan Kill eri /OS KILLIST Komutu ile görebilirsiniz. (Services admin kullanabilir)
Set kullanarak HELPER/VIP Ekleme silme işlemini services root adminler yapabiliyor. (Değişebilirsiniz.)
HELPER/VIP özellikli kullanicilarin INFO'larinda HELPER/VIP Olduklarina dair bir mesaj cikiyor.
HELPER ve VIP Tanimlarini başka şekilde kod yazabiliyorsaniz istediğiniz gibi kullanabilirsiniz. Örneğin auth kodu verme, silme, düzenleme vs. gibi..
Eğer giriş mesajini eklediyseniz, HELPER/VIP vasfini taşiyanlar herhangi bir kanala girdiğinde kanala otomatikmen bilgi mesaji atilacaktir.
|