Tekil Mesaj gösterimi
Alt 24 Ağustos 2013, 19:12   #1
Çevrimdışı
saywhat
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
kanal girişleri kayıt/arama




-> [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

# istek üzerine yapılmıştır.
# amaç: kodun aktif edildiği kanal/lara giren kullanıcıları
# txt. üzerine kaydetmek.
# nicki - userhostu - girilen kanal - realname -saat+tarih
# kodun diğer işleviyse bu kayıtlar içinden istenen veriyi
# aratıp sonuçları aktarabilmesi.
# arama nick/host/kanal/tarih yada saat,
# kaydedilmiş veri içersinde eşleşek herhangi bir kritere
# göre yapılabilir.aramalarda wildcard kullanılabilir..
# !ara @*hostun-bir-kısmı yada !ara nick* vs gibide olabilir.
# kodun kanalda aktif olabilmesi için botunuza bağlanın:
# .chanset #kanalınız +userec

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

not: .txt dosyasını aktif ettiğiniz her kanal için ayrı olarak kendiliğinden oluşturacaktır.sizin ayrıca .txt dosyası oluşturmanıza yada kod içinde kendiniz girmenize gerek yoktur.

örnek :
bota bağlanıp : .chanset #ircforumlari +userec
aktif edildikten sonraki ilk kanala giriş ile birlikte botunuzun/scripts klasörü içinde ,bu giriş/ler kanalınız-users.txt ..bu örnek için söylersek, ircforumlari-users.txt içinde saklanmış olur.ne kadar sayıda kanal üzerinde aktif edilirse herbir kanal için .txt oluşturacak o kadar sayıda kanalınız-users.txt scripts/ içinde görülecektir....

(kodun sadece "gereken" kısımları Türkçe'ye çevrilmiştir.)

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
# istek üzerine yapılmıştır. # amaç: kodun aktif edildiği kanal/lara giren kullanıcıları # txt. üzerine kaydetmek. # nicki - userhostu - girilen kanal - realname -saat+tarih # kodun diğer işleviyse bu kayıtlar içinden istenen veriyi # aratıp sonuçları aktarabilmesi. # arama nick/host/kanal/tarih yada saat, # kaydedilmiş veri içersinde eşleşek herhangi bir kritere # göre yapılabilir.aramalarda wildcard kullanılabilir.. # !ara @*hostun-bir-kısmı yada !ara nick* vs gibide olabilir. # kodun kanalda aktif olabilmesi için botunuza bağlanın: # .chanset #kanalınız +userec ############################################################### setudef flag userec set userecfile "scripts/[string range $chan 1 end]-users.txt" bind join - * rname:join bind raw - 311 rname:check bind join - * users:rec bind pub nm|oa !ara user:search proc users:rec {nick uhost hand chan} { if {![channel get $chan userec]} { return 0;} set fp [open $::userecfile a+] set data "\002Nick:\002 $nick | \002Userhost:\002 $uhost | \002Kanal:\002 $chan" puts $fp "$data" close $fp return 0 } proc rname:join {nick host hand chan} { if {![channel get $chan userec]} { return 0;} if {[strlwr $nick] != [strlwr $::botnick]} { putserv "whois $nick" } } proc rname:check {from key arg} { set realname [strlwr [ctrl:filter [string range [lindex [split $arg] end] 1 end]]] set stamp [clock format [expr {3600 + [clock second]}] -format "Tarih: %d/%m/%Y Saat: %H:%M (GMT+3)"] set fp [open $::userecfile a+] set data "\002Realname:\002 $realname | \002Kayıt-Zamanı:\002 $stamp" puts $fp "$data" close $fp return 0 } proc ctrl:filter {str} { regsub -all -- { \003[0-9]{0,2}(,[0-9]{0,2})?|\017|\037|\002|\026|\006|\007 } $str "" str return $str } proc user:search {nick uhost hand chan text} { if {![channel get $chan userec]} { return 0;} if {[llength $text] == "0"} { puthelp "notice $nick :kullanımı:\002 $::lastbind nick\002"; return 0;} set text *[string map {" " *} $text]* putserv "notice $nick :\002$text\002 aranıyor..." set i 0 set fp [open $::userecfile r] while {[gets $fp b]>-1} { if {[string match -nocase $text $b]} { incr i putserv "notice $nick :-> $b" } } close $fp if {$i} { putserv "notice $nick :arama sonucu: \002[expr {$i / 2}] \002 [expr {$i == 1?"":"adet"}]..." } { putserv "notice $nick :\002aramayla eşleşen kayıt bulunamadı...\002" } } putlog "Ok..."

not: kod ile alakalı bilinen bug* hata/yada şimdilik eksiklik şudur ki: giriş yapan kullanıcı realname'i renkli/renk kodları içeriyorsa kayıt edilmiyor.isteği yapan kişiye kod teslim edildikten sonraki denemelerde fark ettim. henüz onarmadım... olası* sonraki güncelleme/lerde buda aklımda,yapılacak işler listesinde bir yerlerde....

 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları eglen sohbet reklamver