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

>
+
Etiketlenen Kullanıcılar

2Beğeni(ler)

 
 
LinkBack Seçenekler Stil
Prev önceki Mesaj   sonraki Mesaj Next
Alt 12 Kasım 2014, 23:33   #4
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: #bilgi kanalı için tcl




bot 1.6.21 sürümü ise , bu sürümde (ve bir kullanıcıya Efnet'te yardım verirken görüldü ki 1.8 sürümünde de bu sorun var...) onchan ve botonchan komutlarıyla ilgili bir "bug" ,hata var şöyle ki ; bot ayrıldığı kanalla ilgili bilgiyi resetlemiyor ve bu nedenle orada olmamasına rağmen hala o sakladığı/silmediği veriye göre işlem yapmaya çalışabiliyor.

bu belirlenen "sorun" üzerine yukarıdaki gibi onchan yada botonchan komutları içeren scriptlerde "sıkıntı" yaşanmaması için (bot kanalda olmamasına rağmen hala "1" dönüyor "0" dönmesi gerekirken...) ,botunuz bu sürümlerden biri ise ,eggdrop geliştiricisi thommey'in bu sorunu onarmaya/gidermeye yönelik yazdığı şu scripti ,(mümkünse .conf dosyasında yüklenecek scriptler listesinin en üstlerinde source listesine ekleyin) yüklemelisiniz:

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
# botonchan.tcl # Track [botonchan]/[onchan] in a script, working around a bug in Eggdrop1.6.21 # # (c) 2014 Thomas Sader # ---------------------------------------------------------------------------- # "THE BEER-WARE LICENSE" (Revision 42): # <thommey@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...].com> wrote this file. As long as you retain this notice you # can do whatever you want with this stuff. If we meet some day, and you think # this stuff is worth it, you can buy me a beer in return. - thommey # ---------------------------------------------------------------------------- bind join - * onchan:join # for some weird reason the part bind doesn't trigger if the bot parts on its own #bind part - * onchan:part bind out - "% sent" onchan:checkpart bind kick - * onchan:kick bind evnt - disconnect-server onchan:disconnect proc setbotonchan {chan value} { global botonchan if {$value} { set botonchan($chan) 1 } else { unset -nocomplain botonchan($chan) } } proc unsetbotonallchan {} { global botonchan if {![info exists botonchan]} { return } foreach chan [array names botonchan] { setbotonchan $chan 0 } } proc onchan:join {nick host hand chan} { if {![isbotnick $nick]} { return } setbotonchan $chan 1 } proc onchan:checkpart {queue text status} { if {[string toupper [lindex [split $text] 0]] eq "PART"} { onchan:part $::botnick - - [lindex [split $text] 1] } } proc onchan:part {nick host hand chan {reason ""}} { if {![isbotnick $nick]} { return } setbotonchan $chan 0 } proc onchan:kick {nick host hand chan victim text} { if {![isbotnick $victim]} { return } setbotonchan $chan 0 } proc onchan:disconnect {args} { unsetbotonallchan } proc botonchan {{chan "any"}} { global botonchan if {![info exists botonchan]} { return 0 } if {($chan eq "any" && ![llength [array names botonchan]]) || ![info exists botonchan($chan)]} { return 0 } return 1 } # we also have to workaround [onchan] being 1 for old nicknames by embedding [botonchan] into it if {[info commands _onchan] eq ""} { rename onchan _onchan } proc onchan {nick {chan ""}} { if {$chan eq ""} { set chans [channels] } else { set chans [list $chan] } foreach c $chans { if {[botonchan $chan] && [_onchan $nick $chan]} { return 1 } } return 0 }

yukarıdaki sorunuz içinse,şöyle birşey :

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
# rapor verilecek kanal. set raporch "#rapor" # komutu kullanma yetkisi olacak kişinin aynı zamanda bulunması aranan kanal. set operch "#opers" # uzaklaştırma sebebleri: set sebep { "Kanal kurallarına uymadığınız tespit edildi. IP'niz banlandı." "canı öyle istemiş" "gözünün üstünde kaşın var..." "goooooooooooooolllllll" "bu tuşa basınca ne oluyordu acaba?" "ah elim kaydı..." } # ayar sonu... proc msg_nickban {nick uhost hand chan text} { if {![isop $nick $chan] || ![ishalfop $nick $chan] && ![onchan $nick $::operch]} { puthelp "notice $nick :$::lastbind komutunu kullanmak için,$chan kanalında en az Halfop yada Op olmalı \ ve $::operch kanalında bulunuyor olmak zorundasınız..." return } if {![botisop $chan] || ![botishalfop $chan]} { puthelp "notice $nick :$chan kanalında bunu yapmaya yetkim yok $nick" return } set person [filtre [lindex [split $text] 0]] set neden [subst -nocommands [lindex $::sebep [expr {int(rand()*[llength $::sebep])}]]] set zaman [clock format [clock seconds] -format "%d/%B/%Y %A %H:%M:%S" -locale tr_TR] if {[llength $person] eq "0"} { puthelp "notice $nick :kullanımı : $::lastbind <hedef>" return } if {$person eq $::botnick || [matchattr [nick2hand $person] mnoaf|mnoaf $chan]} { puthelp "notice $nick :bu kabul edilemez $nick..." return 0 } pushmode $chan +b $person flushmode $chan putkick $chan $person :"$neden" if {[botonchan $::raporch]} { puthelp "privmsg $::raporch :$zaman $person nicki, \"$neden\" nedeniyle , $nick tarafından $chan kanalından uzaklaştırıldı." set iletildi 1 } else { putlog "$::raporch kanalında olmadığımdan, bilgi iletilemedi..." set iletildi 0 } } proc filtre {filter} { return [regsub -all -- $filter {[][*?\\]} {\\\0} filter] } bind pub - "!nick" msg_nickban putlog "ok..."



Konu saywhat tarafından (13 Kasım 2014 Saat 01:01 ) değiştirilmiştir.
 
Alıntı ile Cevapla

 

Etiketler
#bilgi, icin, kanalı, tcl


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
ops kanalı için TİGeR mIRC Scripting Sorunları 9 31 Ekim 2012 00:00
Beşiktaş kanalı için bot Cpu mIRC Scripting Sorunları 22 17 Temmuz 2012 09:19
Radyo kanalı için girişte /radyoac çıkışta /radyokapat phatih mIRC Scripting Sorunları 1 07 Nisan 2009 04:11
bot için log kanalı KnOuCK Eggdrop, NeoStats, BNC 2 09 Ocak 2008 22:33