Tekil Mesaj gösterimi
Alt 05 Ağustos 2010, 11:04   #1
Çevrimdışı
toXic
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
IRCServices GREET Mesaji




Adminlerin, komut kullanarak seçtiği greet mesajini servisler, kişi kanala girince yazar.


. Komut Kullanimi; /NS Set Mesaj mesaj

nickserv -- set mesaj toXic Kanala giriş yapti..
© NickServ Mesajiniz toXic Kanala giriş yapti.. Olarak degistirilmistir.
© NickServ Kullanim Saati Thu Aug 5 10:34:53 2010
[KBSC] 10::39 *** Tekrar Girilmeye Çalışılıyor...
[KBSC] 10::39 *** Kanala Tekrar Giriliyor #toXic
* [#toXic] [ Topic: RuLzzServices-0.1 ]
* Kanal Kuruluş Tarihi: Thu Aug 05 10:36:05 2010
* Topic Kurucusu: toXic
[KBSC] 10::39 <ChanServ> toXic Kanala giriş yapti..



. Girilen Mesajlari listeleme /NS MesajList

nickserv -- mesajlist
© NickServ [Thu Aug 5 10:43:50 2010
© NickServ ] toXic mesaj Secti. -> toXic Kanala giriş yapti..


Bu Komutlari Sadece Services Adminler Kullanabilir. Userlere acmak icin;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
if (!is_services_admin(u)) { notice_lang(s_NickServ, u, PERMISSION_DENIED); send_cmd(s_NickServ, "NOTICE %s Sadece Services Adminler Kullanabilir.", u->nick); return; }

satirini kaldirmalisiniz..


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


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

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

ekleyin.

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

altina;

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

ve

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


altina;

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

ekleyin.

/


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
/*******************************************************/ static void do_listchans(User *u) { NickInfo *ni = u->ni; NickGroupInfo *ngi; if (is_oper(u)) { char *nick = strtok(NULL, " "); if (nick) { NickInfo *ni2 = get_nickinfo(nick); if (!ni2) { notice_lang(s_NickServ, u, NICK_X_NOT_REGISTERED, nick); return;

Satirlari üstüne

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
/******************** Coded toXic ***************/ static void do_mesajlist(User *u) { NickInfo *ni; ni = get_nickinfo(u->nick); #define toxread "mesaj.txt" if (!is_services_admin(u)) { send_cmd(s_NickServ, "NOTICE %s Bu Komuta Yetkiniz yok..", u->nick); return; } FILE *h; char buf[BUFSIZE]; h = fopen(toxread, "r"); if (h) { while (fgets(buf, sizeof(buf), h)) { buf[strlen(buf)-1] = 0; send_cmd(s_NickServ, "NOTICE %s %s", u->nick, buf); } fclose(h); } else { send_cmd(s_NickServ, "NOTICE %s Henuz mesaj girisi olmamis.", u->nick); } }



ekleyin.


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
strftime_lang(buf, sizeof(buf), u->ngi, STRFTIME_DATE_TIME_FORMAT, ni->time_registered); notice_lang(s_NickServ, u, NICK_INFO_TIME_REGGED, buf);


satirlari üstüne

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
if((ngi->mesaj!=NULL)) { send_cmd(s_NickServ, "NOTICE %s Bu Adminin Belirledigi Mesaj \2%s\2", u->nick, ngi->mesaj); }

ekleyin.


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

girip;

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

altina;

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

ekleyin.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
void do_set(User *u) { char *cmd = strtok(NULL, " "); char *param = strtok_remaining(); char *extra = NULL; NickInfo *ni; NickGroupInfo *ngi; int is_servadmin = is_services_admin(u); if (readonly) { notice_lang(s_NickServ, u, NICK_SET_DISABLED); return; } if (is_servadmin && param && strchr(param, ' ') && (ni = get_nickinfo(cmd)) ) { cmd = strtok(param, " "); param = strtok_remaining(); } else { ni = u->ni; }

altindaki

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

satirini;

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

olarak değiştirin.

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

altina

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

ekleyin.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
if (user_ident_nomail(u)) { u->ni->authstat &= ~NA_IDENT_NOMAIL; u->ni->authstat |= NA_IDENTIFIED; } } } else { ngi->email = NULL; if (*oldemail) { module_log("%s E-mail address cleared by %s!%s@%s (was %s)", nick, u->nick, u->username, u->host, oldemail); } notice_lang(s_NickServ, u, NICK_UNSET_EMAIL, nick); } put_nickgroupinfo(ngi); call_callback_2(module, cb_set_email, u, ngi); }

altina;


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
/********************* coded toxic *****************/ static void do_set_mesaj(User *u, NickGroupInfo *ngi, char *param) { // char *param = strtok(NULL, " "); //char *param = strtok_remaining(); NickInfo *ni; ni = get_nickinfo(u->nick); time_t t; struct tm *ptm; time (&t); ptm = gmtime(&t); free(ngi->mesaj); if (!param) { ngi->mesaj = NULL; send_cmd(s_NickServ, "NOTICE %s Mesajiniz \2 Kaldirildi.", u->nick); put_nickgroupinfo(ngi); return; } /* svs admin kullanabilir. */ if (!is_services_admin(u)) { notice_lang(s_NickServ, u, PERMISSION_DENIED); send_cmd(s_NickServ, "NOTICE %s Sadece Services Adminler Kullanabilir.", u->nick); return; } if (param) { ngi->mesaj = sstrdup(param); send_cmd(s_NickServ, "NOTICE %s Mesajiniz \2 %s \2 Olarak degistirilmistir.", u->nick, ngi->mesaj); send_cmd(s_NickServ, "NOTICE %s Kullanim Saati \2%s", u->nick, ctime(&t)); time_t zaman; struct tm * timeinfo; time ( &zaman ); timeinfo = localtime ( &zaman ); FILE *dosya_yaz; dosya_yaz = fopen("mesaj.txt","a"); if (dosya_yaz != NULL) { fprintf(dosya_yaz,"[%s] %s mesaj Secti. -> %s\n", asctime (timeinfo), u->nick, ngi->mesaj); //fprintf(dosya_yaz,"--------------------------\n"); fclose(dosya_yaz); } } put_nickgroupinfo(ngi); } //toxic

ekleyin.


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

girip

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
static int do_channel_join_check(const char *channel, User *user) {

altina;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
NickGroupInfo *ngi; NickInfo *ni; ni = get_nickinfo(user->nick); ngi = get_ngi(ni); if(ngi && (ngi->mesaj!=NULL)) { send_cmd(s_ChanServ, "PRIVMSG %s %s", channel, ngi->mesaj); }


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

girip;

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

altina

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
free(ngi->mesaj);

ekleyip
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
pico modules/nickserv/nickserv.h

girip

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
char *info;

altina

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
char *mesaj;

ekleyin.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
pico lang/index

girip;


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
NICK_UNSET_MESAJ

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;

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

ekleyin.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
if (ngi->info) mem += strlen(ngi->info)+1;

altina;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
if (ngi->mesaj) mem += strlen(ngi->mesaj)+1;

ekleyin.




NOT : Eğer daha önce version4.c dosyasında o satirlarin altina sonradan ekleme yaptiysaniz, o satirin altina eklemelisiniz..


kaydedip cikin.


make ve make install cekip servisleri resetleyin.

/os update komutunu kullanip irc üzerinden, /ns set mesaj ss ss yazin sonra tekrar ssh den,

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(read_string(&ngi->info, f));

altina;

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

ekleyin.


tekrar make&&make install ve servislerinizi resetleyin.

NOT: Bu kodlama, RuLzzServices icin yazilmiştir.


Konu toXic tarafından (13 Eylül 2010 Saat 11:40 ) değiştirilmiştir.
 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları eglen sohbet sohbet