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

 Kayıt ol  Topluluk
1Beğeni(ler)

Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 26 Ağustos 2007, 01:56   #1
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
OP Kanalı Eklentisi For IRCServices-5.0.*




Öncelikle; Yapacağımız editlemeler; tarafımdan yapılmış olup, Sky-Dancer, Diablo ve Bronx [AnarchYBrotherS tester] tarafından test edildi. [ kendilerine teşekkür ederim ]

Bu uygulamanın yararı, her kanal sahibi kendisine bir op kanalı seçebilecektir ve de kanala giren bir op otomatik olarak op kanalına girecektir. OP Kanaliniz aynı zamanda da kanalınızın infosunda görünecektir. Küçük kanallar ise OP Kanalı yönlendirmesini kardeş kanalı için kullanabilirler, böylece Kardeş kanallarına oplarını da otomatik olarak gönderebilirler.

Yapacağımız uygulama da ilk yapmanız gereken şey chan.db nizi yedeklemektir. Lütfen Bunu unutmayınız. Aksi Durumlarda chan.db niz hasar görebilir ve de kullanılmaz hale gelebilir.

Kodlama; ircservices-5.0.59 kodlama yapısında yapılmış ve diğer ircservices versiyonları içinde denenmiştir.

Öncelikle;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
cd ircservices-5.x.xx



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



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



komutları ile chanservimizin modüllerini açıyoruz.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
pico main.c



main.c klasöründe;

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



kodunu bulup hemen altına,

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



ekliyoruz. aynı dosyada;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
if (ci->url) notice_lang(s_ChanServ, u, CHAN_INFO_URL, ci->url);



kodunu bulup hemen altına,

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
if (ci->opschan) notice_lang(s_ChanServ, u, CHAN_INFO_OPSCHAN, ci->opschan);



ekliyoruz ve de main.c dosyasını kayıt edip çıkıyoruz. ( CTRL + X , y , enter)

daha sonra, aynı klasörde ( /modules/chanserv ) bulunan,

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
pico set.c



komutu ile set.c dosyasını açıyoruz.

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



kodunu bulup hemen altına,

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



ekliyoruz ve aynı dosyada;

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



kodunu bulup hemen altına,

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



ekliyoruz ve aynı dosyada;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
} else if (stricmp(cmd, "URL") == 0) { do_set_url(u, ci, NULL);



kodunu bulup hemen altına,

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
} else if (stricmp(cmd, "OPSCHAN") == 0) { do_set_opschan(u, ci, NULL);



ekliyoruz ve aynı dosyada;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
/*************************************************************************/ static void do_set_url(User *u, ChannelInfo *ci, char *param) { if (param && !valid_url(param)) { notice_lang(s_ChanServ, u, BAD_URL); return; } free(ci->url); if (param) { ci->url = sstrdup(param); notice_lang(s_ChanServ, u, CHAN_URL_CHANGED, ci->name, param); } else { ci->url = NULL; notice_lang(s_ChanServ, u, CHAN_URL_UNSET, ci->name); } put_channelinfo(ci); } /*************************************************************************/



kodlarını bulup hemen altına,

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
static void do_set_opschan(User *u, ChannelInfo *ci, char *param) { /** Coded by Diablo **/ if (param) { if (param[0]!='#') { notice_lang(s_ChanServ, u, BAD_OPSCHAN); return; /** Coded by Diablo **/ } free(ci->opschan); if (param) { ci->opschan = sstrdup(param); notice_lang(s_ChanServ, u, CHAN_OPSCHAN_CHANGED, ci->name, param); } else { ci->opschan = NULL; notice_lang(s_ChanServ, u, CHAN_OPSCHAN_UNSET, ci->name); } put_channelinfo(ci); } } /*************************************************************************/



ekliyoruz. [ /***/ arası sadece düzenli olsun diye koydum düzenli olmak lazım değil mi ?
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
] ve de set.c dosyasını kayıt edip çıkıyoruz. ( CTRL + X , y , enter) (Ara Kodlamada eklentisi için diabloya teşekkürler )


Aynı klasörde ( /modules/chanserv ) bulunan chanserv.h dosyasını,

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
pico chanserv.h



ile açıyoruz.

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



kodunu bulup hemen altına,

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



kodunu ekliyoruz ve de chanserv.h dosyasını kayıt edip çıkıyoruz. ( CTRL + X , y , enter)

aynı klasörde ( /modules/chanserv ) bulunan util.c dosyasını,

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



komutu ile açıyoruz.

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



kodunu bulup hemen altına,

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



kodunu ekliyoruz ve de util.c dosyasını kayıt edip çıkıyoruz. ( CTRL + X , y , enter)

modülize kısmında işimiz bitti, ANCAK; database kayıtlarının yapılması ve de Language kısmını ayarlamak için daha işlemlerimiz devam ediyor.

ircservices-5.x.xx içinde languages adlı klasöre giriş yapıyoruz.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
cd ircservices-5.x.xx/lang/



yaparak klasöre giriş yapıyoruz ve kodlamamıza devam ediyoruz. Ancak buradaki kodlamalarınızda lütfen satır kaydırmamaya dikkat edelim. Satır kaydırıldığında Chanservinizin mesajlarında kayma ya da Chanservde çalışamama hatası alabilirsiniz. Bu yüzden burada FTP yolu ile kendi makinanıza download ettikten sonra editleme en iyi yapılacak şeydir. Bir Editör programı kullanmakta mantıklı bir iş tabi ki de ancak zorunlu değil.. ( Tavsiye; Editplus ) önemli olan SATIR KAYDIRMAMAK.. [ yani bir boşluk varsa o boşluk diğer parametre içinde olmalıdır. ]

ircservices-5.x.xx/lang klasöründe,

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
pico tr.l



dosyasına giriş yapıp,

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
BAD_URL URL bilgileri http://hostname[:port]/... ya da ftp://hostname[:port]/... seklinde olmak zorundadir.



kodunu bulup hemen altına,

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
BAD_OPSCHAN Sadece isimleri # ile baslayan kanallari OP Kanali secebilirsiniz.



kodunu ekliyoruz ve aynı dosyada;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
CHAN_REGISTER_INVALID_NAME Sadece isimleri # ile baslayan kanallari kaydedebilirsiniz.



kodunu bulup hemen altına,

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
CHAN_OPSCHAN_INVALID_NAME Sadece isimleri # ile baslayan kanallari OP Kanali secebilirsiniz.



kodunu ekliyoruz aynı dosyada;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
# SET URL responses CHAN_URL_CHANGED %s kanalinin web adresi (URL) %s olarak degisti.



kodunu bulup hemen altına,

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
# SET OPSCHAN responses CHAN_OPSCHAN_CHANGED %s kanalinin OP Kanali %s olarak degisti. # SET EMAIL responses



şeklinde ekliyoruz aynı dosyada;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
CHAN_URL_UNSET %s kanalinin web adresi (URL) silindi.



kodunun hemen altına,

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
CHAN_OPSCHAN_UNSET %s kanalinin OP kanali silindi.



şeklinde ekliyoruz ve aynı dosyada;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
CHAN_INFO_URL URL: %s



kodunu bulup hemen altına da,

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
CHAN_INFO_OPSCHAN OP Kanali: %s



şeklinde ekliyoruz ve aynı dosyada;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
DESC Kanal hakkindaki aciklamayi degistirir.



kodunu bulup hemen altına,

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
OPSCHAN Kanalinizin op kanalini belirleyebilirsiniz.



şeklinde ekliyoruz ve aynı dosyada;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
CHAN_HELP_SET_DESC Kullanimi: SET kanal DESC aciklama Belirtilen kanal hakkindaki,LIST ve INFO komutlari ile gorunecek olan aciklamayi belirler.Kullanabilmek icin founder level access gerekir.



kodunu bulup hemen altına,

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
CHAN_HELP_SET_OPSCHAN Kullanimi: SET kanal OPSCHAN Kanal adi Belirtilmis OP Kanalina oplariniz zorunlu giris yaparlar. Boylece op kanalinizi kendiniz ayarlamis olursunuz. Kendinize Kardes bir kanal secip ayni zamanda oplarinizi o kanala da gonderebilirsiniz.



şeklinde ekliyoruz.. ve de util.c dosyasını kayıt edip çıkıyoruz. ( CTRL + X , y , enter) biliyorum belki de çok sıkıldınız ama son bir kaç şey kaldı onları da halledelim..

String ayarlarımızı yapmak için,

ircservices-5.x.xx/lang klasöründe,

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
pico langstrs.h



dosyasına giriş yapıp en aşağıda,

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
#define STAT_OPER_HELP_SERVERS 1209 #define NUM_STRINGS 1210



kodlarını buluyoruz ve de onları şu şekilde değiştiriyoruz,

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
#define STAT_OPER_HELP_SERVERS 1209 #define BAD_OPSCHAN 1210 #define CHAN_OPSCHAN_INVALID_NAME 1211 #define CHAN_OPSCHAN_CHANGED 1212 #define CHAN_OPSCHAN_UNSET 1213 #define CHAN_INFO_OPSCHAN 1214 #define CHAN_HELP_SET_OPSCHAN 1215 #define NUM_STRINGS 1216



ve de langstrs.h dosyasını kayıt edip çıkıyoruz. ( CTRL + X , y , enter)

ircservices-5.x.xx/lang klasöründe,

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



dosyasına giriş yapıp en aşağıya,

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



sonra,

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
BAD_OPSCHAN CHAN_OPSCHAN_INVALID_NAME CHAN_OPSCHAN_CHANGED CHAN_OPSCHAN_UNSET CHAN_INFO_OPSCHAN CHAN_HELP_SET_OPSCHAN



ekleyin..

ve gelelim son bir iki işlemimize,

burada yaptığımız işlem databaselere yazdırılma ve okunma işlemi olacaktır.


ircservices-5.x.xx/modules/database/

klasörüne giriş yapıyoruz ve de version4.c dosyasına

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
pico version4.c



ile giriş yapıyoruz

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



satırının hemen altına,

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



şeklinde ekliyoruz. aynı dosyada;

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



satırının hemen altına,

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



şeklinde ekleme yapıyoruz ve dosyayı yeniden kaydedip çıkıyoruz.

servislerimize make ve make install attıktan sonra servislerimizi restartlıyoruz. Serviceslerimiz yeniden geldikten sonra,

Servislerimizde bir kanal kayıt edip

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
/cs set #kanal opschan #opkanalı



komutu ile yeni bir op kanalı belirliyoruz.

daha sonra yeniden komut sistemine giderek,

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
pico version4.c



dosyasına giriş yapıp

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



satırının hemen altına,

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



şeklinde ekleme yapıyoruz.

Böylece modülizasyon işlemimiz sona ermiş oldu her kanalımızın bir op kanalı belirleme özelliği açılmış oldu ancak son olarak; oplarımızın kontrolü için,

ircservices-5.x.xx/modules/chanserv/ klasöründe

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
pico check.c



dosyasına giriş yapıp

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
/* Check early for server auto-ops */



satırını bulup hemen üstüne,

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
if (check_access(user, ci, CA_AUTOOP) && !is_oper(user)) { send_cmd(s_NickServ, "SAJOIN %s %s", user->nick, ci->opschan); }

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



kodlarını ekliyoruz. Dosyayı kayıt edip kapatıyoruz.

make ve make install işlemimizi yaptıktan sonra servislerimizi restartlayın

artık sistemimiz bitmiş oldu..

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
/cs help set opschan



ile gerekli bilgiye ulaşabilirsiniz.

İşlemimizin Çaba ve Sabır isteyen bir iş olduğunu unutmayınız. ben elimden geldiği kadarı ile eklentimi açıklamaya çalıştım. Eğer bir adımınızın yanına diğer adımınızı koymada sorun çekiyorsanız, ilk adımınızı kontrol edin. Hatalarını görerek yeniden baştan alabilirsiniz [ baştan almaya gözünüz yemezse eğer biraz dinlenin devam edin
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
D ]


İyi Çalışmalar..

 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları reklam ver Benimmekan Mobil Sohbet
Alt 26 Eylül 2007, 19:17   #2
Çevrimdışı
txf
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: OP Kanalı Eklentisi For IRCServices-5.0.*




Peki Bunu Anope'ye Uyarlamamız Mümkün mü Üstâd ?

 
Alıntı ile Cevapla

Alt 26 Eylül 2007, 20:15   #3
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: OP Kanalı Eklentisi For IRCServices-5.0.*




anopede oplar icin eklentı modulesi var ama kullanıcı icin yoq global kanal icin kullanabılırsın

 
Alıntı ile Cevapla

Alt 16 Kasım 2007, 04:29   #4
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: OP Kanalı Eklentisi For IRCServices-5.0.*




hata aliyorum

op kanali ekliyorum
[03:21] -ChanServ- #radyo kanalinin OP kanali silindi. diye mesaj veriyor

/cs help set opschan diyorum hic cevap vermiyor :S

kanal infosunda

[03:27] -ChanServ- URL: [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
-
[03:27] -ChanServ- Kullanimi: set kanal OPSCHAN kanal adi
-
[03:27] -ChanServ- Belirtilmis OP Kanalina oplariniz zorunlu giris yaparlar.
-
[03:27] -ChanServ- Boylece op kanalinizi kendiniz ayarlamis olursunuz. Kendinize
-
[03:27] -ChanServ- Kardes bir kanal secip ayni zamanda oplarinizi o kanala da
-
[03:27] -ChanServ- gonderebilirsiniz.
-
[03:27] -ChanServ- E-mail adresi:
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.


olarak görunuyor :S

 
Alıntı ile Cevapla

Alt 07 Aralık 2007, 07:38   #5
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: OP Kanalı Eklentisi For IRCServices-5.0.*




Sanırım tr.l dosyasında bir hatanız var yeniden kontrol ederseniz iyi olur, eğer hala yapamadıysanız, ben yardımcı olabilirim size.. İyi günler..

 
Alıntı ile Cevapla

Alt 07 Aralık 2007, 12:02   #6
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: OP Kanalı Eklentisi For IRCServices-5.0.*




Arkadaşım bende en az 10 defa kurdum hata aldığım tek yer tr.l dosyası.Mümkünü varsa editlenmiş tr.l dosyasını buraya gönderebilirmisiniz.

 
Alıntı ile Cevapla

Alt 08 Aralık 2007, 05:13   #7
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: OP Kanalı Eklentisi For IRCServices-5.0.*




bunu bir dene

Burdan İndir Bu forumdaki ekleri görübilmek için 25 mesaja sahip olmanız gerekir. Sizin 0 Mesajınız var.
 
Alıntı ile Cevapla

Alt 09 Aralık 2007, 22:19   #8
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: OP Kanalı Eklentisi For IRCServices-5.0.*




ApSiS Nickli Üyeden Alıntı
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
anopede oplar icin eklentı modulesi var ama kullanıcı icin yoq global kanal icin kullanabılırsın


Peki linki verebilirmisin arkadasım

 
Alıntı ile Cevapla

Alt 12 Aralık 2007, 05:01   #9
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: OP Kanalı Eklentisi For IRCServices-5.0.*




WizArd Nickli Üyeden Alıntı
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
bunu bir dene

rar dosyası bozuk geldi açamadım nedense, yeniden yükleyebilir misin ;huh

 
Alıntı ile Cevapla

Alt 12 Aralık 2007, 09:54   #10
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: OP Kanalı Eklentisi For IRCServices-5.0.*




Evet bende yazacaktım ama vaktim olmadı rar dosyası bozuk malesef ;boggled

 
Alıntı ile Cevapla

Cevapla

Etiketler
eklentisi, ircservices50, kanali, kanalı, op


LinkBacks (?)
LinkBack to this Thread: https://www.ircforumlari.net/services-hazir-kodlar/36738-op-kanali-eklentisi-ircservices-50-a.html
Konuyu Başlatan For Type Tarih
IRCd Programlama Kodlar1 This thread Refback 14 Eylül 2011 23:22

Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 

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


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
Op Kanalı Eklentisi - IRCServices ArresT Servisler 22 04 Aralık 2020 02:33
op kanalı eklentisi gibi Founder kanalı eklentisi C3RVANT3S Services Hazır Kodlar 15 20 Aralık 2011 18:49
ircservices otomatik op kanalı _cRaZy_BoYs_ Servisler 4 23 Ekim 2010 07:56