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

IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası (https://www.ircforumlari.net/)
-   Services Hazır Kodlar (https://www.ircforumlari.net/services-hazir-kodlar/)
-   -   IRCServices ISTEK/ONERI/SIKAYET Hizmeti (https://www.ircforumlari.net/services-hazir-kodlar/367370-ircservices-istek-oneri-sikayet-hizmeti.html)

toXic 25 Kasım 2010 13:24

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:

cd ircs*-*
Kod:

nano -w modules/nickserv/main.c
Kod:


 
static void do_dropemail_confirm(User *u);

satirinin altina;

Kod:

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:

{ "DROP", do_drop, NULL, NICK_HELP_DROP, -1,-1 },
satiri altina;

Kod:

    { "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:

    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:


 
/*************************************************************************/


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.

Kod:

make&&make install
Kullanip servislerinizi resetleyin.

Abyss 25 Kasım 2010 13:29

Cevap: IRCServices ISTEK/ONERI/SIKAYET Hizmeti
 
hmm Modern Services Modern toXic Helal gülüm ;cool

tyler 25 Kasım 2010 14:05

Cevap: IRCServices ISTEK/ONERI/SIKAYET Hizmeti
 
snada kodlarına da hastaym.

aLtimod 19 Mart 2011 11:21

Cevap: IRCServices ISTEK/ONERI/SIKAYET Hizmeti
 
ben bunu kurdum yanlız hata verdi sanırım kodlar çalısmıyor...

modules/nickserv/main.c: In function 'do_sans':
modules/nickserv/main.c:660: warning: unused variable 'tox'
modules/nickserv/main.c: In function 'do_identify':
modules/nickserv/main.c:983: warning: too few arguments for format
modules/nickserv/main.c: In function 'do_oneri':
modules/nickserv/main.c:1311: warning: unused variable 'ngi'
modules/nickserv/main.c: In function 'do_sikayet':
modules/nickserv/main.c:1346: error: 'ngi' undeclared (first use in this function)
modules/nickserv/main.c:1346: error: (Each undeclared identifier is reported only once
modules/nickserv/main.c:1346: error: for each function it appears in.)
modules/nickserv/main.c:1347: warning: unused variable 'now'
modules/nickserv/main.c:1346: warning: unused variable 'nick'

toXic 08 Nisan 2011 20:44

Cevap: IRCServices ISTEK/ONERI/SIKAYET Hizmeti
 
Kodlari yeniledim.
Komut kullanimi 1 gün online süresi olan kullanicilar icin gecerlidir. Total online kurulu değilse bunu kurmayin.

dEathLeSs 08 Nisan 2011 22:43

Cevap: IRCServices ISTEK/ONERI/SIKAYET Hizmeti
 
Biri bu adamı durdursun :)


Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 15:36.

Powered by vBulletin® Version 3.8.8 Beta 3
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2024 IRCForumlari.Net