Tekil Mesaj gösterimi
Alt 23 Eylül 2015, 16:29   #1
Code
 
Code - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: 01 Mart 2015
Mesajlar: 203
WEB Sitesi: www.code.com
IRC Sunucusu: irc.code.com
İlgi Alanı:
Alınan Beğeni: 33
Standart IRCServices SET ile HELPER ve VIP Kullanicilar Eklemek.

Kod:
cd ircservices*-*
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;

PHP- Kodu: 
/*************************************************************************/

//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_NickServuINTERNAL_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(nicku->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_NickServuNICK_X_NOT_REGISTEREDnick);
                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->nicksebep);
//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->nicku2->nicksebep);
          
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_NickServuINTERNAL_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(nicku->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_NickServuNICK_X_NOT_REGISTEREDnick);
                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->nicksebep);

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->nicku2->nicksebep);
          
fclose(dosya_yaz);


}
}


Ekleyin.


Kod:
      call_callback_2(module, cb_identified, u, old_authstat);
    }
}
satirlari üzerinede;

PHP- Kodu: 
 if (ngi->helper==1) {
send_cmd(s_NickServ"NOTICE %s Merhaba \2%s\2"u->nicku->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->nicku->nickSUNUCU);
send_cmd(s_NickServ"CHGNAME %s %s HELP Takimi"SUNUCUu->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->nicku->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->nicku->nickSUNUCU);
send_cmd(s_NickServ"CHGNAME %s %s Ozel Kullanicisi"u->nickSUNUCU);
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;


PHP- Kodu: 
 if (ngi->helper==1) {
send_cmd(s_NickServ"NOTICE %s :\2%s\2 Services \2Helper\2 (SH)"u->nickni->nick);
}
else if (
ngi->vip==1) {
send_cmd(s_NickServ"NOTICE %s :\2%s\2 Ozel \2VIP\2  Kullanicidir. (VP)"u->nickni->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;

PHP- Kodu: 
/*************************************************************************/

static void do_set_helper(User *uNickGroupInfo *ngichar *param)
{

    
NickInfo *ni;
ni get_nickinfo(u->nick);


if (!
is_services_admin(u)) {
notice_lang(s_NickServuPERMISSION_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 *uNickGroupInfo *ngichar *param)
{

    
NickInfo *ni;
ni get_nickinfo(u->nick);

if (!
is_services_root(u)) {
notice_lang(s_NickServuPERMISSION_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;

PHP- Kodu: 
/*************************************************************************/

//toXic

static void do_helper(User *u)
{

   const 
char *cmd;



if (!
is_services_admin(u)) {
  
notice_lang(s_OperServuPERMISSION_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_OperServuNICK_X_NOT_REGISTEREDnick);
                return;
            } else if (
ni2 == ni) {
            } else if (!
ni) {
                
notice_lang(s_OperServuPERMISSION_DENIED);
                return;
            } else {
                
ni ni2;
            }
        }

  if (!(
ngi get_ngi(ni))) {
        
notice_lang(s_OperServuINTERNAL_ERROR);
return;
    }

 if (
ni->status NS_VERBOTEN) {
        
notice_lang(s_OperServuNICK_X_FORBIDDENnick);
return;
}


 if (!(
ni get_nickinfo(nick))) {
        
notice_lang(s_OperServuNICK_X_NOT_REGISTEREDnick);
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->nicknicknick);
return;
}
 
send_cmd(s_OperServ"NOTICE %s %s Kullanicisi \2HELPER\2 Olarak onaylandi."u->nicknick);
FILE *dosya_yaz fopen("helpers.txt","a");
if (
dosya_yaz != NULL) {
  
fprintf(dosya_yaz,"[%s] %s  HELPER ADD -> %s\n"asctime (timeinfo), u->nicknick);
  
fprintf(dosya_yaz,"-----------------------\n");
  
fclose(dosya_yaz);
}
}

else if (
stricmp(cmd"LIST") == 0) {

#define ibokuh "helpers.txt"

FILE *p;
char buf[BUFSIZE];

fopen(ibokuh"r");
if (
p) {
while (
fgets(bufsizeof(buf), p)) {
buf[strlen(buf)-1] = 0;
send_cmd(s_OperServ"NOTICE %s %s"u->nickbuf);
}
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->nicknick);
  
FILE *dosya_yaz fopen("helpers.txt","a");
  if (
dosya_yaz != NULL) {
  
fprintf(dosya_yaz,"[%s] %s  HELPER DEL -> %s\n"asctime (timeinfo), u->nicknick);
  
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_OperServuPERMISSION_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_OperServuNICK_X_NOT_REGISTEREDnick);
                return;
            } else if (
ni2 == ni) {
            } else if (!
ni) {
                
notice_lang(s_OperServuPERMISSION_DENIED);
                return;
            } else {
                
ni ni2;
            }
        }

  if (!(
ngi get_ngi(ni))) {
        
notice_lang(s_OperServuINTERNAL_ERROR);
return;
    }

 if (
ni->status NS_VERBOTEN) {
        
notice_lang(s_OperServuNICK_X_FORBIDDENnick);
return;
}


 if (!(
ni get_nickinfo(nick))) {
        
notice_lang(s_OperServuNICK_X_NOT_REGISTEREDnick);
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->nicknicknick);
return;
}
 
send_cmd(s_OperServ"NOTICE %s %s Kullanicisi \2VIP\2 Olarak onaylandi."u->nicknick);
FILE *dosya_yaz fopen("vips.txt","a");
if (
dosya_yaz != NULL) {
  
fprintf(dosya_yaz,"[%s] %s  vip ADD -> %s\n"asctime (timeinfo), u->nicknick);
  
fprintf(dosya_yaz,"-----------------------\n");
  
fclose(dosya_yaz);
}
}

else if (
stricmp(cmd"LIST") == 0) {

#define ibokuh "vips.txt"

FILE *p;
char buf[BUFSIZE];

fopen(ibokuh"r");
if (
p) {
while (
fgets(bufsizeof(buf), p)) {
buf[strlen(buf)-1] = 0;
send_cmd(s_OperServ"NOTICE %s %s"u->nickbuf);
}
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->nicknick);
  
FILE *dosya_yaz fopen("vips.txt","a");
  if (
dosya_yaz != NULL) {
  
fprintf(dosya_yaz,"[%s] %s  VIP DEL -> %s\n"asctime (timeinfo), u->nicknick);
  
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_OperServuPERMISSION_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 *fopen(ibokukll"r");
if (
x) {
while (
fgets(bufsizeof(buf), x)) {
buf[strlen(buf)-1] = 0;
send_cmd(s_OperServ"NOTICE %s :%s"u->nickbuf);
}
fclose(x);
} else {
send_cmd(s_OperServ"NOTICE %s :Henuz bir kayit yok."u->nick);
}


Ekleyin.

Kod:
make&make install
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;

PHP- Kodu: 
 if  (user_identified(user) && (ngi->helper==1)) {
send_cmd(s_ChanServ"PRIVMSG %s Sunucu HELP Gorevlisi \2%s\2 Kanala girdi."channeluser->nick);
}
 if  (
user_identified(user) && (ngi->vip==1)) {
send_cmd(s_ChanServ"PRIVMSG %s Sunucu VIP Kullanicisi \2%s\2 Kanala girdi."channeluser->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.
 Code isimli Üye şimdilik offline konumundadır   Alıntı