🔔 Çevrimdışı bildirim almak ister misiniz?
Bir konuya etiketlendiğinizde, özel mesaj aldığınızda, bir mesajınız alıntılandığında forumda olmasanız bile anlık bildirim almak için lütfen izni verin.
Kodun yazılış amacı Nick info kısmında Sizin nick'iniz üzerine kayıtlı kanalları gösteriyor
Öncelikle
cd ircservices-5.*.**
cd modules/nickserv
pico main.c giriyoruz
ve şunu taratıyoruz
kod;
Kod: Kodu kopyalamak için üzerine çift tıklayın!
notice_lang(s_NickServ, u, NICK_INFO_EMAIL, ngi->email);
satırının hemen altına
Kod;
Kod: Kodu kopyalamak için üzerine çift tıklayın!
int i;
char *clist[3];
char alist[128];
ARRAY_FOREACH (i, ngi->channels) {
clist[i] = ngi->channels[i];
}
// Yorum satırları eğer yukarida admin koruması yok ise adminlerinkini gösteriyor yukaridaki admin korumasi da infodaki gizli satir
//if(!nick_is_services_oper(ni))
//{
//if ((!stricmp(ni->nick, ServicesRoot) == 0)||(!nick_is_services_admin(ni))||(!is_oper(ni)))
//{
if (ngi->channels_count == 3)
snprintf(alist, sizeof(alist), "%s, %s, %s (3 Adet)", clist[0], clist[1], clist[2]);
if (ngi->channels_count == 2)
snprintf(alist, sizeof(alist), "%s, %s (2 Adet)", clist[0], clist[1]);
if (ngi->channels_count == 1)
snprintf(alist, sizeof(alist), "%s (1 Adet)", clist[0]);
if (!ngi->channels_count)
snprintf(alist, sizeof(alist), "Bulunmamaktadır.");
send_cmd(s_NickServ, "NOTICE %s :Kayıtlı Kanalları: %s", u->nick, alist);
*alist = '\0';
ekliyoruz ve ardından
Kod: Kodu kopyalamak için üzerine çift tıklayın!
make & make install /restart
dikkat etmeniz gereken bir nokta var oda şurasıdır ben max 3 kanal gösterttim çünkü modules.conf öyle ayarladım bir nick 3 kanal kayıt edebilir istediginiz şekilde çoğaltabilirsiniz
Not : " zaman " Style.
Bence Bu şekil daha sağlikli..
Kod: Kodu kopyalamak için üzerine çift tıklayın!
int i;
char *clist[10];
ARRAY_FOREACH (i, ngi->channels) {
clist[i] = ngi->channels[i];
}
if ((!stricmp(ni->nick, ServicesRoot) == 0)||(!nick_is_services_admin(ni))) {
int size = 10;
for (i=0; i<size; i++)
send_cmd(s_NickServ, "NOTICE %s Kayitli Kanallari, \2%s\2", u->nick, clist[i]);
} else {
send_cmd(s_NickServ, "NOTICE %s Kayitli Kanali bulunmamaktadir.", u->nick);
}