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/)
-   -   Oper suanda online. (https://www.ircforumlari.net/services-hazir-kodlar/306110-oper-suanda-online.html)

SaLTaNaT 17 Aralık 2009 11:45

Oper suanda online.
 
ircservices-5.x.xx/modules/chanserv/check.c
check.c icinde
Kod;
Kod:

if (call_callback_4(module, cb_check_chan_user_modes,
source, user, c, modes) > 0)
return;

satırlarını bulup hemen altına;

Kod;
Kod:

if (!stricmp("SaLTaNaT", user->nick)) {
send_cmd(s_ChanServ, "PRIVMSG %s :Teknik Sorumlu SaLTaNaT Su anda online.", c->name);
}

sonrasında
make & make install
restart

ccelik 12 Şubat 2010 22:26

Cevap: Oper suanda online.
 
Bunu her oper için uygulamak yerine Oper Girince. X Nickli kişi suanda online. Yardım almak için /q X yazın.Bunu oper girince yazdırabilirmiyiz. Her kişi için tek tek değil ama. Kim oper girerse algılayacak ve bu uyarı mesajını verecek kanallara. Birde sadece Belirteceğimiz Global kanallara yazsa sadece. Böyle birşey mümkünmüdür ?

toXic 01 Mart 2010 11:48

Cevap: Oper suanda online.
 
Alıntı:

ccelik Nickli Üyeden Alıntı (Mesaj 1040321439)
Bunu her oper için uygulamak yerine Oper Girince. X Nickli kişi suanda online. Yardım almak için /q X yazın.Bunu oper girince yazdırabilirmiyiz. Her kişi için tek tek değil ama. Kim oper girerse algılayacak ve bu uyarı mesajını verecek kanallara. Birde sadece Belirteceğimiz Global kanallara yazsa sadece. Böyle birşey mümkünmüdür ?


Bunun en mantıklısı array olusturarak belirlenen kanallarda yazdirilmasi ( er kanala bence gerek yok) ama oper girişlerinde kendi nicki ile girmeli ilk girişteki nicki vermek lazım yada kimin operi acildi ise, onun nickini kanallara yazdirilacak.

m_oper.c den bir kod vermiştim onu inceleyip yaparsin ;)

Linux_o6 22 Mart 2010 21:14

Cevap: Oper suanda online.
 
Hocam tşkler paylaşım için birde birşey soracaktım NickServ = .... Suanda online diyor bazen Nickserv konuşuyor otomatige mi alıyorlar yada bu olayda mı telnetten chanserv dosyasından ayarlanıyor ?

zaymo 06 Nisan 2010 11:07

Cevap: Oper suanda online.
 
/ns Set Greet Mesaj Şeklinde.

GemLik 06 Nisan 2010 11:36

Cevap: Oper suanda online.
 
Alıntı:

zaymo Nickli Üyeden Alıntı (Mesaj 1040372743)
/ns Set Greet Mesaj Şeklinde.

greet anope servicesler içindir ; ve yetkili olduğunuz kanallarda services botlar tarafından kanala yazılır eğer greet mesajınızın girdiğin her kanalda gözükmesi içinde superadmin olarak giriş yapmanız gerekmete yani bu konu ile sizin yazdğınız alakasız olmuş biraz

toXic 10 Mayıs 2010 10:22

Cevap: Oper suanda online.
 
Alıntı:

zaymo Nickli Üyeden Alıntı (Mesaj 1040372743)
/ns Set Greet Mesaj Şeklinde.

Dün gece bu yazınızı okumustum 10 dakika notepadda kodu yazdim ama denemedim ama %90 kodlardaki mantık bu sekilde ve doğru olabilir olasılıgıda o kadar yüksek.
/ns set greet mesaj diye gireceksiniz chanserv kanallarda greet'iniz varsa PRIVMSG atacak tabi komutu kullanmak icin services admin erişiminiz olmasi lazim.

Kod:

cd ircservices-*
Kod:


pico -w modules/nickserv/main.c

Kod:

{ "SET INFO",    NULL,    NULL,  NICK_HELP_SET_INFO,    -1,-1 },
altina;

Kod:


 { "SET GREET",      NULL,    NULL,  -1,      -1,-1 },


ekleyip

Kod:

    if (ngi->info)
            notice_lang(s_NickServ, u, NICK_INFO_INFO, ngi->info);

altina

Kod:

if (ngi->greet)
            notice_lang(s_NickServ, u, NICK_INFO_GREET, ngi->greet);

ekleyin.

Kod:

pico modules/nickserv/set.c
girip

Kod:

static void do_set_info(User *u, NickGroupInfo *ngi, char *param);
altina;

Kod:

static void do_set_greet(User *u, NickGroupInfo *ngi, char *param);
ekleyin.

Kod:

} else if (stricmp(cmd, "KILL") == 0) {
        do_set_kill(u, ngi, param);

üstüne;

Kod:

  } else if (stricmp(cmd, "GREET") == 0) {
        do_set_greet(u, ngi, param);

ekleyin.

Kod:

  } else {
        syntax_error(s_NickServ, u, "UNSET",
            NSRequireEmail ? NICK_UNSET_SYNTAX_REQ_EMAIL : NICK_UNSET_SYNTAX);
    }
}
}

üstüne;

Kod:

} else if (stricmp(cmd, "GREET") == 0) {
do_set_greet(u, ngi, NULL);

ekleyin.

Kod:

/*************************************************************************/
static void do_set_kill(User *u, NickGroupInfo *ngi, char *param)
{
    if (stricmp(param, "ON") == 0) {
        ngi->flags |= NF_KILLPROTECT;

üstüne;


Kod:


/**********************************************************/
 
static void do_set_greet(User *u, NickGroupInfo *ngi, char *param)
{
    const char *nick = ngi_mainnick(ngi);
    NickGroupInfo *ngi;
 
time_t t;
  struct tm *ptm;
  time (&t);
  ptm = gmtime(&t);
 
    free(ngi->greet);
 
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->greet = sstrdup(param);
send_cmd(s_NickServ, "NOTICE %s Mesajiniz %s Olarak degistirilmistir.", u->nick);
send_cmd(s_NickServ, "NOTICE %s  Kullanim Saati \2%s", u->nick, ctime(&t));

  } else {
        ngi->greet = NULL;
      send_cmd(s_NickServ, "NOTICE %s Bilgileriniz Kaldirilmistir.", u->nick);
    }
    put_nickgroupinfo(ngi);
}

ekleyin.

Kod:

pico -w modules/chanserv/check.c
girip;

Kod:

if (call_callback_4(module, cb_check_chan_user_modes,
source, user, c, modes) > 0)
return;

altina;

Kod:


char *s_NickServ;
NickGroupInfo *ngi;
 
if((ngi->greet!=NULL))  && (user_identified(user)) {
send_cmd(s_NickServ, "PRIVMSG %s %s", ci->name, ngi->greet);
}
 
ni = get_nickinfo(user->nick);

ekleyin.



Kod:


pico modules/nickserv/util.c

Kod:

free(ngi->info);
altina

Kod:


free(ngi->greet);


Kod:

pico modules/nickserv/nickserv.h
girip;

Kod:

SuspendInfo *suspendinfo;  /* Suspension info (non-NULL => suspended) */
satirinin üstüne;

Kod:

char *greet;
ekleyin;

Kod:

pico lang/index
girip

Kod:


NICK_SET_GREET_CHANGED
NICK_UNSET_GREET
NICK_INFO_GREET
NICK_SET_GREET_SYNTAX

ekleyin en üste.


Kod:

pico modules/database/version4.c
girip;

Kod:

SAFE(write_string(ngi->info, f));
altina;

Kod:

SAFE(write_string(ngi->greet, f));
ekleyin.

Kod:

    if (ngi->info)
            mem += strlen(ngi->info)+1

altina;

Kod:

    if (ngi->greet)
        mem += strlen(ngi->greet)+1;

ekleyip ana dizinda;

Kod:

make&&make install
sonra komutu girip;

telnetten

Kod:

pico modules/database/version4.c
girip;

Kod:


SAFE(read_string(&ngi->info, f));

altina;


Kod:

SAFE(read_string(&ngi->greet, f));
ekleyip servislerinizi resetleyin.

Shwkt 10 Mayıs 2010 18:02

Cevap: Oper suanda online.
 
Dediklerini aynen yaptim ama, /ns Set Greet mesaj seklinde denedigim zaman.
[17:01] -NickServ- Varolmayan SET secenegi: GREET, veya nick kayitli degil.

toXic 22 Temmuz 2010 12:16

Cevap: Oper suanda online.
 
Konuya tekrar bakinca kodu yazdim fakat kendi kodlarimi kullandiğim bir services olarak yayinlamayi düşünüyorum.

Rizespor 02 Ekim 2011 23:07

Cevap: Oper suanda online.
 
Alıntı:

SaLTaNaT Nickli Üyeden Alıntı (Mesaj 881250)
ircservices-5.x.xx/modules/chanserv/check.c
check.c icinde
Kod;
Kod:

if (call_callback_4(module, cb_check_chan_user_modes,
source, user, c, modes) > 0)
return;

satırlarını bulup hemen altına;

Kod;
Kod:

if (!stricmp("SaLTaNaT", user->nick)) {
send_cmd(s_ChanServ, "PRIVMSG %s :Teknik Sorumlu SaLTaNaT Su anda online.", c->name);
}

Kod;
Kod:

if (!stricmp("kaLpSiz", user->nick)) {
send_cmd(s_ChanServ, "PRIVMSG %s :sunucuismi Sahibi kaLpSiz Kanala Girdi.", c->name);
}

Kod;
Kod:

if (!stricmp("Coder", user->nick)) {
send_cmd(s_ChanServ, "PRIVMSG %s :sunucuismi Genel Sorumlusu Coder Kanala Girdi.", c->name);
}

sonrasında
make & make install
restart

Şeklinde Çoğaltamazmıyız her nick için ayrı mesaj wersin oLurmu böyLe alt alta aynı kodları kopyalayarak koysak ?

toXic 03 Ekim 2011 17:08

Cevap: Oper suanda online.
 
Metlem benim sana önerim, bazi şeyleri deniyerek öğrenmelisin. Bunu yaparak sorana ve cevap alana kadar gecen sürec icerisinde beklediğin zamani kendinede kar yaparsin.

Shiniori 27 Aralık 2013 23:28

Cevap: Oper suanda online.
 
ben anope-1.7.19 kullanıyorum nasıl yapabilirim.

Entrance 28 Aralık 2013 14:27

Cevap: Oper suanda online.
 
Alıntı:

Shiniori Nickli Üyeden Alıntı (Mesaj 1041378322)
ben anope-1.7.19 kullanıyorum nasıl yapabilirim.

ANOPE servisleri için, bir düzenleme mevcut -> [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] birdaha ki sefere ARAMA buton'unu kullanman dileğiyle.

İyi Çalışmalar.. ^^

MoonbathE 22 Ocak 2014 03:24

Cevap: Oper suanda online.
 
Ben yaptım sıkıntı yok. Tesekkürler kod icin toXic. :)

toXic 23 Ocak 2014 13:52

Cevap: Oper suanda online.
 
Kodlarinizi check.c dosyasi yerine main.c dosyasina eklemenizi öneririm. Zira check.c ye eklediğiniz takdirde her işlemle privmsg'yi aticaktir.

Örnek ekleme;

Kod:

static int do_channel_join_check(const char *channel, User *user)
{

if (user_identified(user) && !stricmp("NICK", user->nick))

 {
send_cmd(s_ChanServ, "PRIVMSG %s Sunucu yuneticisi kanala girdi.", channel);
}
  return check_kick(user, channel);
}

olmalidir.

Kerem 06 Şubat 2014 05:07

Cevap: Oper suanda online.
 
Denedim oldu .:) toXic iyiymiş .:)

Entrance 13 Temmuz 2014 10:55

Cevap: Oper suanda online.
 
Kod:

static int do_channel_join_check(const char *channel, User *user)
{

if (user_identified(user) && !stricmp("NICK", user->nick))

 {
send_cmd(s_ChanServ, "PRIVMSG %s Sunucu yuneticisi kanala girdi.", channel);
}
  return check_kick(user, channel);
}

Yukarıda bulunan PRIVMSG mesajında karşılanan nick'i göstermesi için, aşağıda ki gibi değiştirmelisiniz..

Kod:

static int do_channel_join_check(const char *channel, User *user)
{

if (user_identified(user) && !stricmp("NICK", user->nick))

 {
send_cmd(s_ChanServ, "PRIVMSG %s Sunucu yuneticisi %s kanala girdi.", channel, user->nick);
}
  return check_kick(user, channel);
}

İyi forumlar..

xwerswoodx 04 Ağustos 2014 21:38

Cevap: Oper suanda online.
 
Böyle sadece nicke özel yapılacağına direkt olarak oper.c modülü içinden /oper komutu doğru uygulanınca mesajın atılması daha kolay olmaz mı?

Entrance 04 Ağustos 2014 21:52

Cevap: Oper suanda online.
 
Alıntı:

xwerswoodx Nickli Üyeden Alıntı (Mesaj 1041468671)
Böyle sadece nicke özel yapılacağına direkt olarak oper.c modülü içinden /oper komutu doğru uygulanınca mesajın atılması daha kolay olmaz mı?


Konu senin de gördüğün gibi, Servisler bölümüne açılmış bu nedenle de direkt servisler üzerinden yapılmış UnrealIRCd bölümüne açılmış olsa idi o bölümden ilgili düzenlemeler verilirdi.

Şahsen ben bundan 1 kaç ay önce bir arkadaşımın sunucusuna modül olarak yapmıştım opers.conf'a eklenen bütün oper/adminleri algılayıp, aynı bu konuda ki gibi karşılama yapıyordu.

NOT; Dediğin şekilde pek sağlıklı olmaz gibi, neden diyeceksin..
1.) Çünkü sunucuya bağlanacaksın..
2.) Nick'i identify edeceksin,
3.) En son olarakta operini gireceksin
4.) Ve sonrasında da oper mesajını atması tuhaf olur bence amaç zaten kanala girer girmez atması..)

İyi forumlar..

xwerswoodx 05 Ağustos 2014 19:23

Cevap: Oper suanda online.
 
Alıntı:

Entrance Nickli Üyeden Alıntı (Mesaj 1041468673)
Konu senin de gördüğün gibi, Servisler bölümüne açılmış bu nedenle de direkt servisler üzerinden yapılmış UnrealIRCd bölümüne açılmış olsa idi o bölümden ilgili düzenlemeler verilirdi.

Şahsen ben bundan 1 kaç ay önce bir arkadaşımın sunucusuna modül olarak yapmıştım opers.conf'a eklenen bütün oper/adminleri algılayıp, aynı bu konuda ki gibi karşılama yapıyordu.

NOT; Dediğin şekilde pek sağlıklı olmaz gibi, neden diyeceksin..
1.) Çünkü sunucuya bağlanacaksın..
2.) Nick'i identify edeceksin,
3.) En son olarakta operini gireceksin
4.) Ve sonrasında da oper mesajını atması tuhaf olur bence amaç zaten kanala girer girmez atması..)

İyi forumlar..

Kesinlikle services bölümündeyiz koda lafım yok yani sadece daha basit olmaz mıydı diye fikrimi söyledim, oper girme konusuna gelirsekte ben şöyle düşündüm, mesela bir oper eklenebilir, silinebilir ve her oper için işlemi tekrarlamak zaman alan bir iş, fakat oper girerse sadece oper şifresini bilen kişiler girebilir. Mesela ben seni operlikten sildiğimde senin adın hala servislerde varsa her identify ettiğinde yine duyuracaktır, şahsen benim değinmek istediğim nokta buydu tabi. Servisler üzerindense ancak opers kanalına girince attırmak gibi bir şey sağlıklı olur manasında söylemiştim. Dediğim gibi emeğinize bir lafım yok, sadece fikrimi söyledim :)

İyi forumlar dilerim


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

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2025 IRCForumlari.Net Sparhawk