IRCServices ISTEK/ONERI/SIKAYET Hizmeti - IRCForumu.NET - IRC ve mIRC Tutkunlarının Yeni Adresi!


IRCForumu.NET - IRC ve mIRC Tutkunlarının Yeni Adresi! reklam alanı

Iftagram HİKAYE EKLE
immortaL
YoLCu
Overdose
Jayus
Absent
NikotiN
Ecrin
ImOriqinaL



Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 01 Temmuz 2016, 18:01   #1
Çevrimdışı
 
immortaL - ait Kullanıcı Resmi (Avatar)
 
Üyelik Tarihi: 07 Mayıs 2016
Üye No: 38
Şehir: Bolu
WebSite: IRCForumu.Net
IRC:
İlgi Alanım: vBulletin
Mesaj Sayısı: 1,455
Aldığı Beğeni: 587
Beğendikleri: 913
@immortaL
IRCServices ISTEK/ONERI/SIKAYET Hizmeti


Sadece sunucuyu daha sağlam yönetmeniz için basit bir çalişma koyuyorum. Sistematik bir işleyiş açisindan kullanici istek, öneri ve sorunlarini services komutlari ile bildirebilecek.
Kullanici;
/NS Sikayet komutu ile sikayetini;
/NS istek komutu ile isteğini;
/NS Oneri komutu ile önerilerini bildirebilecek.


Sistem içerisinde services root seviyesindeki kişiler ise bunlari direkt komut yardimi ile listeleyebileceklerdir.

Sikayetleri; /NS Sikayetler
Istekleri; /NS Istekler
Sorunlarini /NS Sorunlar

Komutlari ile listeleyebilecekler..

Kullanicilarin bu komutu kullanabilmesi icin öncelikli olarak nickini kaydetmelidir.



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

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

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


satirinin altina;


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
static void do_oneri(User *u); static void do_oneriler(User *u); static void do_istek(User *u); static void do_istekler(User *u); static void do_sikayet(User *u); static void do_sikayetler(User *u);

Ekleyiniz.


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
{ "DROP", do_drop, NULL, NICK_HELP_DROP, -1,-1 },


satiri altina;


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
{ "ISTEK", do_istek, NULL, -1, -1,-1 }, { "SIKAYET", do_sikayet, NULL, -1, -1,-1 }, { "ONERI", do_oneri, NULL, -1, -1,-1 }, { "ISTEKLER", do_istekler, NULL, -1, -1,-1 }, { "ONERILER", do_oneriler, NULL, -1, -1,-1 }, { "SIKAYETLER", do_sikayetler, NULL, -1, -1,-1 },



Ekleyiniz.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
if (strcmp(mask,"-") == 0) mask = NULL; for (ngi = first_nickgroupinfo(); ngi; ngi = next_nickgroupinfo()) { if ((mask && ngi->email && match_wild_nocase(mask,ngi->email)) || (!mask && !ngi->email) ) { drop_nickgroup(ngi, u, mask ? mask : "-"); } } notice_lang(s_NickServ, u, NICK_DROPEMAIL_CONFIRM_DROPPED); }



Satiri altina;


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
/*************************************************************************/ static void do_istek(User *u) { char *reason; reason = strtok_remaining(); NickInfo *ni; ni = get_nickinfo(u->nick); if (!ni) { send_cmd(s_NickServ, "NOTICE %s Once Nickinizi kayit etmelisiniz.", u->nick); return; } if (!reason) { send_cmd(s_NickServ, "NOTICE %s Isteginizi girmediniz.", u->nick); return; } #define toxgun 1; static int tox = 60*60*24*toxgun; if (!is_services_admin(u) && ni->toplamzaman <= tox) { send_cmd(s_NickServ, "NOTICE %s Bu Komutu Kullanamazsiniz..", u->nick); send_cmd(s_NickServ, "NOTICE %s \2NEDEN\2 -> Nick Online puaniniz, \2 ( 2 ) \2 Olmalidir.", u->nick); return; } else { time_t zaman; struct tm * timeinfo; time ( &zaman ); timeinfo = localtime ( &zaman ); FILE *dosya_yaz; dosya_yaz = fopen("istek.txt","a"); if (dosya_yaz != NULL) { fprintf(dosya_yaz,"[%s] %s -> %s\n", asctime (timeinfo), u->nick, reason); fprintf(dosya_yaz,"-----------------------\n"); fclose(dosya_yaz); } send_cmd(s_NickServ, "NOTICE %s Isteginiz alinmistir.", u->nick); send_cmd(s_NickServ, "PRIVMSG #Kontrol %s Kullanici bir istekte bulundu.", u->nick); } } static void do_oneri(User *u) { char *reason; reason = strtok_remaining(); NickInfo *ni; ni = get_nickinfo(u->nick); if (!ni) { send_cmd(s_NickServ, "NOTICE %s Once Nickinizi kayit etmelisiniz.", u->nick); return; } if (!reason) { send_cmd(s_NickServ, "NOTICE %s Onerinizi girmediniz.", u->nick); return; } #define toxgun 1; static int tox = 60*60*24*toxgun; if (!is_services_admin(u) && ni->toplamzaman <= tox) { send_cmd(s_NickServ, "NOTICE %s Bu Komutu Kullanamazsiniz..", u->nick); send_cmd(s_NickServ, "NOTICE %s \2NEDEN\2 -> Nick Online puaniniz, \2 ( 2 ) \2 Olmalidir.", u->nick); return; } else { time_t zaman; struct tm * timeinfo; time ( &zaman ); timeinfo = localtime ( &zaman ); FILE *dosya_yaz; dosya_yaz = fopen("oneri.txt","a"); if (dosya_yaz != NULL) { fprintf(dosya_yaz,"[%s] %s -> %s\n", asctime (timeinfo), u->nick, reason); fprintf(dosya_yaz,"-----------------------\n"); fclose(dosya_yaz); } send_cmd(s_NickServ, "NOTICE %s Oneriniz alinmistir.", u->nick); send_cmd(s_NickServ, "PRIVMSG #Kontrol %s Kullanici bir oneride bulundu.", u->nick); } } /*************************************************************************/ static void do_sikayet(User *u) { char *reason; reason = strtok_remaining(); NickInfo *ni; ni = get_nickinfo(u->nick); if (!ni) { send_cmd(s_NickServ, "NOTICE %s Once Nickinizi kayit etmelisiniz.", u->nick); return; } if (!reason) { send_cmd(s_NickServ, "NOTICE %s sikayetnizi girmediniz.", u->nick); return; } #define toxgun 1; static int tox = 60*60*24*toxgun; if (!is_services_admin(u) && ni->toplamzaman <= tox) { send_cmd(s_NickServ, "NOTICE %s Bu Komutu Kullanamazsiniz..", u->nick); send_cmd(s_NickServ, "NOTICE %s \2NEDEN\2 -> Nick Online puaniniz, \2 ( 2 ) \2 Olmalidir.", u->nick); return; } else { time_t zaman; struct tm * timeinfo; time ( &zaman ); timeinfo = localtime ( &zaman ); FILE *dosya_yaz; dosya_yaz = fopen("sikayet.txt","a"); if (dosya_yaz != NULL) { fprintf(dosya_yaz,"[%s] %s -> %s\n", asctime (timeinfo), u->nick, reason); fprintf(dosya_yaz,"-----------------------\n"); fclose(dosya_yaz); } send_cmd(s_NickServ, "NOTICE %s sikayetniz alinmistir.", u->nick); send_cmd(s_NickServ, "PRIVMSG #OperLog %s Kullanici bir sikayette bulundu.", u->nick); } } /*************************************************************************/ static void do_sikayetler(User *u) { NickInfo *ni; ni = get_nickinfo(u->nick); if (!is_services_root(u)) { send_cmd(s_NickServ, "NOTICE %s Bu Komuta Yetkiniz yok..", u->nick); return; } #define ibokus "sikayet.txt" FILE *x; char buf[BUFSIZE]; x = fopen(ibokus, "r"); if (x) { while (fgets(buf, sizeof(buf), x)) { buf[strlen(buf)-1] = 0; send_cmd(s_NickServ, "NOTICE %s %s", u->nick, buf); } fclose(x); } else { send_cmd(s_NickServ, "NOTICE %s Henuz bir kayit yok.", u->nick); } } static void do_istekler(User *u) { NickInfo *ni; ni = get_nickinfo(u->nick); if (!is_services_root(u)) { send_cmd(s_NickServ, "NOTICE %s Bu Komuta Yetkiniz yok..", u->nick); return; } #define ibokui "istek.txt" FILE *x; char buf[BUFSIZE]; x = fopen(ibokui, "r"); if (x) { while (fgets(buf, sizeof(buf), x)) { buf[strlen(buf)-1] = 0; send_cmd(s_NickServ, "NOTICE %s %s", u->nick, buf); } fclose(x); } else { send_cmd(s_NickServ, "NOTICE %s Henuz bir kayit yok.", u->nick); } } /*************************************************************************/ static void do_oneriler(User *u) { NickInfo *ni; ni = get_nickinfo(u->nick); if (!is_services_root(u)) { send_cmd(s_NickServ, "NOTICE %s Bu Komuta Yetkiniz yok..", u->nick); return; } #define ibokuo "oneri.txt" FILE *x; char buf[BUFSIZE]; x = fopen(ibokuo, "r"); if (x) { while (fgets(buf, sizeof(buf), x)) { buf[strlen(buf)-1] = 0; send_cmd(s_NickServ, "NOTICE %s %s", u->nick, buf); } fclose(x); } else { send_cmd(s_NickServ, "NOTICE %s Henuz bir kayit yok.", u->nick); } }


Ekleyin.


PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
make&&make install 


Kullanip servislerinizi resetleyin.
  Alıntı ile Cevapla

Cevapla

Etiketler
hizmeti, ircservices, istek or oneri or sikayet

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 Açık
Pingbacks are Açık
Refbacks are Açık




Görsel Yükle!

Görselleri seç ya da sürükle

Resimler Eklendi!