IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası
  sohbet

12Beğeni(ler)
  • 6 Post By toXic
  • 2 Post By toXic
  • 2 Post By toXic
  • 1 Post By dEathLeSs
  • 1 Post By alphae

Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 29 Mart 2012, 19:38   #1
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
IRCServices SET ile HELPER ve VIP Kullanicilar Eklemek.




Kod:   Kodu kopyalamak için üzerine çift tıklayın!
cd ircservices*-*

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
pico -w modules/nickserv/main.c

Girip;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
#include "nickserv.h" #include "ns-local.h"

altina;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
#define SUNUCU "SUNUCUADI"

Ekleyin.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
static void do_register(User *u);

altina;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
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:   Kodu kopyalamak için üzerine çift tıklayın!
{ "REGISTER", do_register, NULL, NICK_HELP_REGISTER, -1,-1 },

altina;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
{ "KILLS", do_kills, NULL, -1, -1,-1 }, { "KILLAT", do_killat, NULL, -1, -1,-1 },

Ekleyin.



Kod:   Kodu kopyalamak için üzerine çift tıklayın!
{ "SET INFO", NULL, NULL, NICK_HELP_SET_INFO, -1,-1 },

altina;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
{ "SET HELPER", NULL, NULL, -1 -1,-1 }, { "SET VIP", NULL, NULL, -1 -1,-1 },

Ekleyin.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
/*************************************************************************/ static void do_identify(User *u) { char *pass = strtok_remaining(); NickInfo *ni = NULL; NickGroupInfo *ngi = NULL;

Satirlari üzerine;

PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
/*************************************************************************/

//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->nicku2->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:   Kodu kopyalamak için üzerine çift tıklayın!
call_callback_2(module, cb_identified, u, old_authstat); } }

satirlari üzerinede;

PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
 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:   Kodu kopyalamak için üzerine çift tıklayın!
notice_lang(s_NickServ, u, NICK_INFO_REALNAME, nick, ni->last_realname);

altina;


PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
 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:   Kodu kopyalamak için üzerine çift tıklayın!
static void do_set_kill(User *u, NickGroupInfo *ngi, char *param);

altina;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
static void do_set_helper(User *u, NickGroupInfo *ngi, char *param); static void do_set_vip(User *u, NickGroupInfo *ngi, char *param);

Ekleyin.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
} else if (stricmp(cmd, "INFO") == 0) { do_set_info(u, ngi, param);

altina;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
} 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:   Kodu kopyalamak için üzerine çift tıklayın!
} else if (stricmp(cmd, "INFO") == 0) { do_set_info(u, ngi, NULL);

altina;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
} 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:   Kodu kopyalamak için üzerine çift tıklayın!
/*************************************************************************/ static void do_set_language(User *u, NickGroupInfo *ngi, char *param) { int langnum;

satirlari üzerine;

PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
/*************************************************************************/

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:   Kodu kopyalamak için üzerine çift tıklayın!
pico -w modules/nickserv/nickserv.h

Girip;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
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:   Kodu kopyalamak için üzerine çift tıklayın!
int helper; int vip;

Ekleyin.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
pico modules/database/version4.c

Girip;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
SAFE(write_string(ngi->info, f));

altina; (Burada eğer sonradan ekleme yaptiysaniz en son ekleme yaptiğiniz kodun altina ekleyin.)

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
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:   Kodu kopyalamak için üzerine çift tıklayın!
SAFE(read_string(&ngi->info, f));

altina;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
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:   Kodu kopyalamak için üzerine çift tıklayın!
pico -w modules/operserv/main.c

Girip;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
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:   Kodu kopyalamak için üzerine çift tıklayın!
{"STATS", do_stats, NULL, OPER_HELP_STATS, -1,-1},

altina;


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
{"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:   Kodu kopyalamak için üzerine çift tıklayın!
/*************************************************************************/ /* 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 Kod:   Kodu kopyalamak için üzerine çift tıklayın!
/*************************************************************************/

//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:   Kodu kopyalamak için üzerine çift tıklayın!
make&make install

Ve Servislerinizi resetleyin.

Eğer kanala girdiklerinde uyari mesajida istiyorsaniz;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
pico -w modules/chanserv/main.c

/
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
*************************************************************************/ /* 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 Kod:   Kodu kopyalamak için üzerine çift tıklayın!
 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.


Konu toXic tarafından (22 Nisan 2012 Saat 14:23 ) değiştirilmiştir.
 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları sohbet odaları Benimmekan Mobil Sohbet
Alt 22 Nisan 2012, 13:44   #2
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: IRCServices SET ile HELPER ve VIP Kullanicilar Eklemek.




modules/operserv/main.c:119: error: âdo_vipâ undeclared here (not in a function)
modules/operserv/main.c: In function âis_services_rootâ:
modules/operserv/main.c:373: warning: unused variable âwarned_idâ
modules/operserv/main.c:839:1: warning: "ibokuh" redefined
modules/operserv/main.c:715:1: warning: this is the location of the previous def

şöyle bir hata verdi

__________________
IRC ve Sanal bitmiştir.
 
Alıntı ile Cevapla

Alt 22 Nisan 2012, 14:21   #3
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: IRCServices SET ile HELPER ve VIP Kullanicilar Eklemek.




Kod:   Kodu kopyalamak için üzerine çift tıklayın!
else if (stricmp(cmd, "LIST") == 0) {



bunun altindaki iki ibokuh lari ibokuhh olarak değiştir.


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
static void do_helper(User *u);

altinada

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
static void do_vip(User *u);

ekle.

 
Alıntı ile Cevapla

Alt 22 Nisan 2012, 14:48   #4
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: IRCServices SET ile HELPER ve VIP Kullanicilar Eklemek.




ircservices]# ./ircservices
Initialization failed, exiting.


[Apr 22 14:38:02 2012] Error loading modules, aborting
[Apr 22 14:41:17 2012] IRC Services 5.0.63 starting up
[Apr 22 14:41:17 2012] modules: Unable to load module `operserv/main': /home/xx/ircservices/lib/modules/operserv/main.so: undefined symbol: do_helperlist
[Apr 22 14:41:17 2012] Error loading modules, aborting

Bu sefer böyle oldu :S

__________________
IRC ve Sanal bitmiştir.
 
Alıntı ile Cevapla

Alt 22 Nisan 2012, 15:14   #5
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: IRCServices SET ile HELPER ve VIP Kullanicilar Eklemek.




PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
{"HELPERLIST",      do_helperlist,      NULL,             -1,                  -1,-1},
static 
void do_helperlist(User *u); 

Bu 2 sini sil os helper add/del/list eklediğim icin onlari unutmusum.

 
Alıntı ile Cevapla

Alt 22 Nisan 2012, 15:22   #6
Çevrimiçi
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: IRCServices SET ile HELPER ve VIP Kullanicilar Eklemek.




Ellerine sağlık kardeşim..

__________________
Hilalin gölgesinde adalet ol, merhamet ol, derman ol.
Gazi ol, DEVLET OL.
 
Alıntı ile Cevapla

Alt 22 Nisan 2012, 15:38   #7
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: IRCServices SET ile HELPER ve VIP Kullanicilar Eklemek.




Herseyi yaptim da, restart attiktan sonra ozellikler otomatik siliniyor, kontrol ediyorum hata da bulamıyorum.

__________________
IRC ve Sanal bitmiştir.
 
Alıntı ile Cevapla

Alt 01 Haziran 2012, 18:39   #8
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: IRCServices SET ile HELPER ve VIP Kullanicilar Eklemek.




Sürekli hata verip düşmesinin sebebi ;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
SAFE(write_string(ngi->info, f));

satırının altına ;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
SAFE(write_int32(ngi->helper, f)); SAFE(write_int32(ngi->vip, f));

Ekleyin.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
SAFE(read_string(&ngi->info, f));

satırının altına ;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
SAFE(read_int32(&ngi->helper, f)); SAFE(read_int32(&ngi->vip, f));

Ekleyin..

__________________
IRC ve Sanal bitmiştir.
 
Alıntı ile Cevapla

Alt 05 Temmuz 2015, 15:46   #9
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: IRCServices SET ile HELPER ve VIP Kullanicilar Eklemek.




peki burdaki vip uyelik te ne özelikler var yani vip üyenin ne gibi ayrıcalıgı oluyor ? ban atılmazmı odalarda +h cıka bilirmi girdigi odaya vip uye giris yapti dermi ? shun atılmaz ban atılmazmi ?

 
Alıntı ile Cevapla

Cevapla

Etiketler
eklemek, helper, ile, ircservices, kullanicilar, set, ve, vip


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 
Seçenekler
Stil

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
IRCServices %100 SuperOp , GlobalOp , Dj ve Helper Hostları. Metalious IRCServices 5 24 Haziran 2010 20:41
IRCforumlarinda 2004 & 2005 Yillarindaki Aktif Kullanicilar? SezGIn Serbest Kürsü 2 25 Eylül 2009 23:58
Kullanicilar kanal acamiyor.. xqw Servisler 3 31 Ocak 2007 22:13