Bu TCL ile #Opers kanalında birine whois çekip bilgileri yansıtabilirsiniz, basit bir TCL belki işe yarar diye paylaşıyorum. Türkçeye çevirip 1-2 ekleme yaptıklarımdan biri bu da. Kullanım;
!whois Nick
PHP Kod: Kodu kopyalamak için üzerine çift tıklayın!
set whois(author) "Nickiniz"
set whois(version) "1.8" set whois(acc) "" # Düzenleme bitti
bind pub $whois(acc) "!whois" whois:nick
proc whois:nick { nickname hostname handle channel arguments } { global whois set target [lindex [split $arguments] 0] if {$target == ""} { putquick "PRIVMSG $channel :Bişey yazmadın, nick vermedin?" return 0 } # if {[string length $target] >= "15"} { # putquick "PRIVMSG $channel :Sence de bir nick için aşırı uzun bir kelime yazmadın mı?"; return # } # if {[regexp -all -- {[~\[\]\{\}\|\_\\]} $target]} { # putquick "PRIVMSG $channel :Üzgünüm, farsça bilmiyorum. Özel karakterli nickler yazma."; return # } putquick "WHOIS $target$target" set ::whoischannel $channel set ::whoistarget $target bind RAW - 401 whois:nosuch bind RAW - 311 whois:info bind RAW - 319 whois:channels bind RAW - 301 whois:away bind RAW - 313 whois:ircop bind RAW - 330 whois:auth bind RAW - 317 whois:idle bind RAW - 307 whois:reged }
proc whois:info { from keyword arguments } { set channel $::whoischannel set nickname [lindex [split $arguments] 1] set ident [lindex [split $arguments] 2] set host [lindex [split $arguments] 3] set realname [string range [join [lrange $arguments 5 end]] 1 end] whois:putmsg $channel "$nickname - $ident@$host * $realname" unbind RAW - 311 whois:info }
proc whois:ircop { from keyword arguments } { set channel $::whoischannel set target $::whoistarget whois:putmsg $channel "$target bir sunucu yetkilisi." unbind RAW - 313 whois:ircop }
proc whois:reged { from keyword arguments } { set channel $::whoischannel set target $::whoistarget whois:putmsg $channel "$target şifreli (kayıtlı) bir nicktir." unbind RAW - 307 whois:reged }
proc whois:away { from keyword arguments } { set channel $::whoischannel set target $::whoistarget set awaymessage [string range [join [lrange $arguments 2 end]] 1 end] whois:putmsg $channel "$target şu an away konumunda: $awaymessage" unbind RAW - 301 whois:away }
proc whois:channels { from keyword arguments } { set channel $::whoischannel set channels [string range [join [lrange $arguments 2 end]] 1 end] set target $::whoistarget whois:putmsg $channel "$target nicki $channels kanallarında bulunuyor." unbind RAW - 319 whois:channels }
proc whois:auth { from keyword arguments } { set channel $::whoischannel set target $::whoistarget set authname [lindex [split $arguments] 2] whois:putmsg $channel "$target orjinal nicki: $authname" unbind RAW - 330 whois:auth }
proc whois:nosuch { from keyword arguments } { set channel $::whoischannel set target $::whoistarget whois:putmsg $channel "Böyle bir nick yok: \"$target\"" unbind RAW - 401 whois:nosuch }
proc whois:idle { from keyword arguments } { set channel $::whoischannel set target $::whoistarget set idletime [lindex [split $arguments] 2] set signon [lindex [split $arguments] 3] whois:putmsg $channel "$target konuşmadığı süre: [duration $idletime]. Giriş zamanı: [ctime $signon]" unbind RAW - 317 whois:idle }