Merhaba arkadaşLar ,

Bildiğimiz üzere bazı sunucularda kayıtsız kanallara girdiğimiz zaman servisler tarafından kanaldan atılıyoruz.Kanal başvurusu yapmak için botların özeline mesaj gönderiyoruz ve sonra onaylanan kanallar memo ile bize bildiriliyor.Şimdi bu sistemi anlatacağım size.(Tabiki Unreal bir sunucuda IRCservices kullanıyor ve eggdrop kullanıyorsanız)

İlk olarak kayıtsız kanal girişlerini yasaklayalım !

 

You were kicked from #Ozelkanal by ChanServ (Bu kanalda bulunmaya yetkili değilsiniz.Kanal basvurusu yapmak için /msg botnick ozelkanal yazınız.)

 

ircservices/lib/modules.conf dosyasının içine giriyoruz.
#CSRegisteredOnly satırını aratıyoruz ve başındaki diyezi(#) kaldırıyoruz.Yani
CSRegisteredOnly şeklinde bırakıp kaydetip çıkıyoruz.

ircservices.5.0.**/lang/tr.l dosyasının içine girip “Bu kanal kullanilamaz.” yazısını aratıp , ” Bu kanalda bulunmaya yetkili değilsiniz.Kanal basvurusu yapmak için /msg botnick ozelkanal yazınız. ” şeklinde değiştiriyoruz ve kaydedip çıkıyoruz.Değişikliklerimizin aktif olması için ircservices.5.0.** dizininde make ve make install yaptıktan sonra servislerimizi yeniden başlatıyoruz.

Kanal yasaklama olayını gerçekleştirdik . Şimdi gelelim botumuzun kanal başvuru sistemine ;

Botumuza aşağıdaki tcl kodu eklediğimizde kick mesajındaki /msg botnick ozelkanal sorusunun cevabını verecektir kullanıcıya.

Kod:

bind msg – ozelkanal ozel_raw
proc ozel_raw {n u h a} {
putserv “PRIVMSG $n Merhaba $n ”
putserv “PRIVMSG $n Özel kanal basvuru sihirbazına Hoş GeLdiniz”
putserv “PRIVMSG $n Sunucumuzda özel kanal açılımları , sohbet huzurunuz açısından sınırlı bırakılmıştır.”
putserv “PRIVMSG $n Taşıdığı isim ; saygı ve sevgi kuralları içerisinde olan , tüm özel oda isteklerinize cevap verilecektir.”
putserv “PRIVMSG $n Şimdi başvuru için ; ozelkanalbasvuru #kanal yazmanız yeterlidir.”
putserv “PRIVMSG $n TaLkTr KeyifLi SohbetLer DiLer ..”
}

 

yani , botumuzun ozeline ozel kanal yazdığımızda ,

< botnick> Merhaba Misafir
< botnick> Özel kanal basvuru sihirbazına Hoş GeLdiniz
< botnick> Sunucumuzda özel kanal açılımları , sohbet huzurunuz açısından sınırlı bırakılmıştır.
< botnick> Taşıdığı isim ; saygı ve sevgi kuralları içerisinde olan , tüm özel oda isteklerinize cevap verilecektir.
< botnick> Şimdi başvuru için ; ozelkanalbasvuru #kanal yazmanız yeterlidir.
< botnick> TaLkTr KeyifLi SohbetLer DiLer ..

cevabını aldık.Şimdi ozelkanalbasvuru #kanal komutu için eklenecek kodumuza gelelim.

Kod:

bind msg – ozelkanalbasvuru basvuru_raw
proc basvuru_raw {n u h a} {
set kanal [lindex $a 0]
putserv “PRIVMSG $n Merhaba $n ,4 $kanal odasi için basvuru işleminiz tamamlanmistir.”
putserv “PRIVMSG $n Kisa bir süre içerisinde memo ile bilgilendirileceksiniz.”
putserv “PRIVMSG $n TaLkTr KeyifLi SohbetLer DiLer ..”
putserv “memoserv send #OzelOdaBasvuru Sayın Yönetici , $n rumuzlu kullanici4 $kanal odasi için kanal basvurusu yapmistir.”
}

 

bu kod ile botumuzun özeline örnek olarak ozelkanalbasvuru #Misafir yazdığımızda bize aşağıdaki cevabı alacağız.

< botnick> Merhaba Misafir , #Misafir odasi için basvuru işleminiz tamamlanmistir.
< botnick> Kisa bir süre içerisinde memo ile bilgilendirileceksiniz.
< botnick> TaLkTr KeyifLi SohbetLer DiLer ..

Bu kodumuz ile kullanıcımıza cevabımızı vermiş ve daha önceden kaydettiğimiz #OzelOdaBasvuru kanalımıza botumuz aracılığı ile kullanicinin başvurduğu kanal adını memo göndermiş olduk.

Şimdi botumuza kanalı onaylatıp , şifresini kullanıcımıza memo atacak kodumuza gelelim .

Kod:

#### ozel kanal onay sistemi###
set ops_chan “#OzelOdaBasvuru”
bind pub – !kaydet kaydet
bind pub – !part gemlik2
proc kaydet {nick uhost handle chan text} {
global ops_chan
if {[isop $nick $chan] || [onchan $nick $ops_chan]==0} {
set kanal [lindex $text 0]
set gnick [lindex $text 1]
if {![validchan $kanal]} {
channel add $kanal { +nodesynch flood-chan 10:2 }
}
putserv “operserv mode $kanal +o botnick”
putserv “chanserv register $kanal karmaşıkşifreniz WwW.sunucuadi.Com”
putserv “chanserv set $kanal founder $gnick”
putserv “memoserv send $gnick Merhaba4 $gnick ,isteginiz uzerine $kanal odasi nickinize kaydedilmistir.Kanalinizin sifresi karmaşıkşifreniz olarak belirlenmistir . Guvenliginiz icin sifrenizi derhal degistirmeniz onerilir . Kanal sifrenizi degistirmek için  /cs set $kanal password4 sifreniz komutunu uygulayiniz . sunucuadı Keyifli Sohbetler Diler ..”
putserv “PRIVMSG $ops_chan :iSLem tamamlandi .  $gnick  nickinin istegi uzerine $kanal  kanali kayit islemi tamamlanmis , kanal sahibi $gnick  olarak belirlenmistir.”
return 1
}
return 1
}
proc gemlik2 {nick uhost handle chan text} {
global ops_chan
if {[isop $nick $chan] || [onchan $nick $ops_chan]==0} {
set kanal [lindex $text 0]
if {[validchan $kanal]} {
channel remove $kanal
}
putserv “PRIVMSG $ops_chan : $kanal kanalindan cikildi $nick”
return 1
}
return 1
}

 

şimdi bu kodumuz #OzelOdaBasvuru odasında opda olduğumuzda
!kaydet #KanaladiKaydedilecekNick
komutunu uyguladığımızda botumuzu o kanala sokup botumuza kanalı kaydettirecek ve kanalı seçtiğimiz nickin üzerine kaydettirip seçtiğimiz nicke memo ile bilgilendirecektir.(#OzelOdaBasvuru odasına botumuz kanal kaydedilip istediğiniz nicke devredildi mesajını verdikten sonra
!part #kanal
komutu ile botumuzu o kanaldan çıkaralım)

Kanal yasaklama olayını halleden toXic , eggdrop tcl kodlar için BuCaLi ve GeMLiK arkadaşlarımıza teşekkürü bir borç bilirim.Umarım işinize yarar bir çalışma olmuştur ve anlatım yapabilmişimdir.

Alıntıdır.

Paylaşan:Raw