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/)
-   Unreal IRCd (https://www.ircforumlari.net/unreal-ircd/)
-   -   Kanal YasakLama ve Basvuru-Kayıt Sistemi ( Unreal - IRCservices - Eggdrop triosuyLa ) (https://www.ircforumlari.net/unreal-ircd/234370-kanal-yasaklama-ve-basvuru-kayit-sistemi-unreal-ircservices-eggdrop-triosuyla.html)

Raw 14 Temmuz 2009 21:11

Kanal YasakLama ve Basvuru-Kayıt Sistemi ( Unreal - IRCservices - Eggdrop triosuyLa )
 
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
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
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 #Kanaladi KaydedilecekNick

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.

İyi Çalışmalar !

RahmetLi 14 Temmuz 2009 21:19

Cevap: Kanal YasakLama ve Basvuru-Kayıt Sistemi ( Unreal - IRCservices - Eggdrop trio
 
Allah rzı olsun abim süpersinnnnnnnnnn :)))))

Raw 15 Temmuz 2009 00:48

Cevap: Kanal YasakLama ve Basvuru-Kayıt Sistemi ( Unreal - IRCservices - Eggdrop trio
 
Alıntı:

SaqopaKajmer Nickli Üyeden Alıntı (Mesaj 762351)
Allah rzı olsun abim süpersinnnnnnnnnn :)))))

Tüm IF ' den :) ecmain :)

CroAtoN 15 Temmuz 2009 11:23

Cevap: Kanal YasakLama ve Basvuru-Kayıt Sistemi ( Unreal - IRCservices - Eggdrop trio
 
Bunun Anope Olanı Varsa Paylaşırsanız Sevinirim

BuCaLI 15 Temmuz 2009 12:05

Cevap: Kanal YasakLama ve Basvuru-Kayıt Sistemi ( Unreal - IRCservices - Eggdrop trio
 
Ben kodlar için yardım ettiğimi hatırlamıyorum ama adımı yazmışsınız tşkler hiç olmazsa bi kaç bilgi vermiş olayım :)

en alttaki kodlarda önemli bi açık var o farkedilirse normal userlerde oda kayıt edebilir :) onun için o kısmı değiştirirseniz daha sağlıklı olur;

"[onchan $nick $ops_chan]==0" nick kanalda değilse demektir (yanlışmıyım ?). o halde kanal dışındaki herkes bu botu farklı kanallardan kanal kaydetmek amaçlı yönetebilir o kısımları silelim ilk önce ve kayıt odasında op ise çalışsın sadece. ve part içinde tekrar komut vermemize gerek yok. işini hallettikten sonra odadan çıksın bot ki boşa komut kullanmayalım. Birde şifre için sabit bi şifre yerine rastgele sayılar verebiliriz. Bu gibi bi iki ufak düzenlemeden sonra şu şekli alır sizde deneyip sonucu söylersiniz.

Kod:

#### ozel kanal onay sistemi###
set ops_chan "#OzelOdaBasvuru"
bind pub - !kaydet kaydet
proc kaydet {nick uhost handle chan text} {
global ops_chan
 if {[isop $nick $ops_chan]} {
 set kanal [lindex $text 0]
 set gnick [lindex $text 1]
 set sifre [rand 99999999]
  if {![validchan $kanal]} {
  channel add $kanal { +nodesynch flood-chan 10:2 }
  }
 putserv "operserv mode $kanal +o botnick"
 putserv "chanserv register $kanal $sifre [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]"
 putserv "chanserv set $kanal founder $gnick"
 putserv "memoserv send $gnick Merhaba4 $gnick ,isteginiz uzerine $kanal odasi nickinize kaydedilmistir.Kanalinizin sifresi $sifre  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."
 utimer 5[list channel remove $kanal]
 utimer 6[list putserv "PRIVMSG $ops_chan : $kanal kanalindan cikildi $nick"]
 return 1
 }
return 1
}


Raw 15 Temmuz 2009 14:48

Cevap: Kanal YasakLama ve Basvuru-Kayıt Sistemi ( Unreal - IRCservices - Eggdrop trio
 
BuCaLi çok teşekkür ederim kod sorunsuz çalışıyor.Ama tek eksiği kanaldan part etmiyor ve telnetten izledimde su hata var ,

Tcl error [kaydet]: wrong # args: should be "utimer seconds command"

ama pekde önemi olmayan bir hata teş ilgin için.tekrardan sağoL BuCaLi

BuCaLI 18 Temmuz 2009 00:11

Cevap: Kanal YasakLama ve Basvuru-Kayıt Sistemi ( Unreal - IRCservices - Eggdrop trio
 
utimer 5[list channel remove $kanal]
utimer 6[list putserv "PRIVMSG $ops_chan : $kanal kanalindan cikildi $nick"]


şu satırlarda 5 ile [ arasında ve 6 ile [ arasında birer boşluk bırakırsan sorun kalmaz. kod olarak yazınca o boşluklar siliniyo aradan düzeltemedim.

Raw 18 Temmuz 2009 13:38

Cevap: Kanal YasakLama ve Basvuru-Kayıt Sistemi ( Unreal - IRCservices - Eggdrop trio
 
BuCaLI , sorun çözüldü problemsiz çalışıyor. Teşekkürler ..

Raw 20 Temmuz 2009 14:58

Cevap: Kanal YasakLama ve Basvuru-Kayıt Sistemi ( Unreal - IRCservices - Eggdrop trio
 
Alıntı:

CroAtoN Nickli Üyeden Alıntı (Mesaj 762794)
Bunun Anope Olanı Varsa Paylaşırsanız Sevinirim

kardeş zaten anlatımın büyük bölümü eggdrop bir botdan oluşuyor anope yi ilgilendiren kısmı sadece #Registered bölümü ki o konu hakkında bilgim yok ama GemLik yardımcı olacaktır sanıyorum sana bu konuda demem o ki bot eggdrop oldundan anope yada ircservices pek farketmez .
İyi Forumlar ..

YilmaS 19 Eylül 2009 01:59

Cevap: Kanal YasakLama ve Basvuru-Kayıt Sistemi ( Unreal - IRCservices - Eggdrop trio
 
Paylaşım süper. Tsklr arkadaşlar saoulun.


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

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