🔔 Çevrimdışı bildirim almak ister misiniz?
Bir konuya etiketlendiğinizde, özel mesaj aldığınızda, bir mesajınız alıntılandığında forumda olmasanız bile anlık bildirim almak için lütfen izni verin.
S.a iyi geceler herkeze Yardım eden arkadaslara simdiden tskler.
whatismyipadress.com adresinden şehir ülke bulucu tclsi lazim yeni versiyonu site güncellendiği icin eskisi calısmıyor yardımcı olanlara simdiden tskler.. iyi forumlar
----------
PHP Kod: Kodu kopyalamak için üzerine çift tıklayın!
#################################################################################### # ipstat.tcl By SaW (Nebiliymben) # iletişim : Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
# # Kullanım: # !nerden <nick>/<ip> # !nerden2 <nick>/<ip> # # Changelog: # 22.06.2009 # v2.0 # - Bir takım raw çakışmaları ve unbind sorunları giderildi. # - "Verilen ip üzerinden daha önce yapılan girişler" sorgusunun cevabında gelen # veri tek mesajda gösterilemeyecek kadar büyükse bir döngüyle bölümler halinde # gösterilmesi sağlandı. # - !nerden komutunun sorgusunun sonucunda gelen verilere "bağlantı tipi" eklendi # - !nerden komutunun sorgu sonuçlarına sorgulama sitesinde proxy olduğu gözüküyorsa # bu verinin de kanala gelen sonuçlara yansıtılması eklendi. # - Sadece tam ip adresi değil 85.125.*.* gibi sorgulamalar için wildcard desteği # sağlandı. (Bu sorgulama sadece daha önce yapılan girişler ve o esnada sunucu # üzerinde bulunan nicklerin görünmesini sağlar.) # - Bir kaç küçük bug giderildi. # - Bir mantıksal hata giderildi. # - Daha stabil hale getirildi. # 09.08.2008 # v1.0.0.2 # - Sorgulama yapılırken sunucu üzerinde bulunmayan bir <nicke> sorgulama # yapıldığında görülen hata giderildi. # 08.07.2008 # v1.0.0.1 # - whatismyipaddress.com sitesinden çekilen sonuçlarda yenilendi. # .. #----------------------------------------------------------------------------------- # ## Admin kanalını bilirtiniz.. # set ip(statchan) "#Admin"
# ## Buraya ircd.log dosyanızın yerini yazınız # set ip(ircd) "/home/yakamozc/Unreal3.2/ircd.log" ##################################################################################### # !!!!!!BURADAN SONRASINA DOKUNMAYINIZ!!!!!! # ##################################################################################### set ip(timeout) "10000" package require http bind pub - !nerden2 ipgeo bind pub - !nerden ipwhat
proc ipbul {nick nip type} { global ip if {![onchan $nick $ip(statchan)]} {return} if {$type == "1"} { set ip(sonuc) 0 bind raw - 352 ipbula bind raw - 315 ipwhoson putquick "who +I $nip" } if {$type == "2"} { set ip(sonuc) 0 bind raw - 352 ipbulb bind raw - 315 ipwhoson putquick "who +I $nip" } if {$type == "3"} { set ip(sonuc) 0 utimer 2[list bind raw - 352 ipnicka] utimer 2[list bind raw - 315 ipwhoson] utimer 2[list putquick "who +i $nip"] } } proc ipnicka {from keyword arg} { global ip if {![info exists ip(nickler)]} { set ip(nickler) "" } lappend ip(nickler) [lindex $arg 5] set ip(sonuc) 1 } proc ipwhoson {from keyword arg} { global ip if {![string match "*ipbula*" [binds]] && ![string match "*ipbulb*" [binds]] && ![string match "*ipnicka*" [binds]]} { return } if {[info exists ip(nickler)] && [llength $ip(nickler)] > 0 && $ip(sonuc) == 1 } { putquick "privmsg $ip(statchan) :\00302Bu ip üzerinden şuan bağlı olan nickler:" if {[llength $ip(nickler)] > 1} { set clone clone } else { set clone kişi } putquick "privmsg $ip(statchan) :\00312[join $ip(nickler)] \00302Toplam \00303- [llength $ip(nickler)] -\00302 $clone.." set ip(sonuc) 0 } elseif {$ip(sonuc) != 1 } { putquick "privmsg $ip(statchan) :\00307Sorguladığınız nick şuan sunucuda bulunmuyor." } set ip(nickler) "" if {[string match -nocase *ipbulb* [binds]]} { unbind raw - 352 ipbulb ; putlog "ipbulb son" } if {[string match -nocase *ipbula* [binds]]} { unbind raw - 352 ipbula ; putlog "ipbula son" } if {[string match -nocase *ipnicka* [binds]]} { unbind raw - 352 ipnicka ; putlog "ipnicka son" } if {[string match -nocase *ipwhoson* [binds]]} { unbind raw - 315 ipwhoson ; putlog "ipwhoson son" } set ip(sonuc) 0 } proc ipbula {from keyword arg} { global ip set ip(sonuc) 1 ipgeo [lindex $arg 5] uhost hand $ip(statchan) [lindex $arg 3] } proc ipbulb {from keyword arg} { global ip set ip(sonuc) 1 ipwhat [lindex $arg 5] uhost hand $ip(statchan) [lindex $arg 3] }
proc nickhist {nip} { global ip set data "" ; set nickler "" set input [open "$ip(ircd)" r] set input [split [read $input] \n] foreach curline $input { set curline [split $curline] if {$curline != ""} { if {[string match -nocase *$nip* $curline]} { regexp {.+ (.+)!.+ .+} $curline match nick if {[lsearch $nickler $nick] == "-1"} { lappend nickler $nick } } } } catch {close $input} if {[llength $nickler] > 0} { putquick "privmsg $ip(statchan) :\00302Bu ip üzerinden daha önce yapılan girişler:" set i 1 set y [llength $nickler] while {[expr $y / [expr $i * 25]] > 0} { putquick "privmsg $ip(statchan) :\00312[join [lrange [lindex $nickler] [expr [expr $i * 25] - 25] [expr [expr $i * 25]-1]]]" incr i } putquick "privmsg $ip(statchan) :\00312[join [lrange [lindex $nickler] [expr [expr $i * 25] - 25] [expr [expr $i * 25]-1]]] \00302Toplam \00303- [llength $nickler] -\00302 kişi.." } } proc ipwhat {nick uhost hand chan text} { global ip if {![string match -nocase $chan $ip(statchan)]} {return} set text [split [string trim $text]] if {$text == ""} {putquick "PRIVMSG $chan :\002Bir ip ya da nick belirtmelisiniz.";return} if {[regexp {.+\..+\..+\..+} $text] == "0"} { set nip [lindex $text 0] ipbul $nick $nip 2 return 0 } ipbul $nick $text 3 utimer 1[list nickhist $text] set ipstatsite "http://whatismyipaddress.com/staticpages/index.php/lookup-results?ip=" set sayfa "" catch {set sayfa [::http::geturl $ipstatsite$text -timeout $ip(timeout)]} error if {[string match -nocase "*couldn't open socket*" $error]} { putquick "PRIVMSG $chan :Hata: WhatisMyipaddress.com'a şuan bağlanılamıyor.. Daha Sonra Tekrar Deneyiniz.." ::http::cleanup $sayfa return } if { [::http::status $sayfa] == "timeout" } { putquick "PRIVMSG $chan :Hata: WhatisMyipaddress.Com'a bağlantı zaman aşımına uğradı.." ::http::cleanup $sayfa return } set html [::http::data $sayfa] ::http::cleanup $sayfa
regexp -- {><TD>Country:</TD><TD>(.*?)<.+} $html - ulke regexp -- {><TD>City:</TD><TD>(.*?)<} $html - sehir regexp -- {><TD>State/Region:</TD><TD>(.*?)<} $html - bolge regexp -- {.+<TR><TD>Type:</TD><TD>(.*?)</TD></TR>.+} $html - type if {[string match -nocase "*Proxy*" $ulke]} { set ulke \0034PROXY! putquick "PRIVMSG $chan :\00312\[$text\] \00302için sorgulama sonuçları: $ulke" return } putquick "PRIVMSG $chan :\00312\[$text\] \00302için sorgulama sonuçları:" putquick "PRIVMSG $chan :\00304Ülke: \00303$ulke \00304Bölge: \00303$bolge \00304Şehir: \00303$sehir \00304Tipi: \00303$type" } proc ipgeo {nick uhost hand chan text} { global ip if {![string match -nocase $chan $ip(statchan)]} {return} set text [split [string trim $text]] if {$text == ""} {putquick "PRIVMSG $chan :Bir ip belirtmelisiniz.";return} if {[regexp {.+\..+\..+\..+} $text] == "0"} { set nip [lindex $text 0] ipbul $nick $nip 1 return 0 } ipbul $nick $text 3 utimer 1[list nickhist $text] set ipstatsite [::http::formatQuery cid "0" c "0" Template "iplocator.htm" ipaddress "$text"] set geoipurl " Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir. style="color: #0000BB">set sayfa "" catch {set sayfa [::http::geturl $geoipurl -query $ipstatsite -timeout $ip(timeout)]} error if {[string match -nocase "*couldn't open socket*" $error]} { putquick "PRIVMSG $chan :Hata: Geobytes.com'a bağlanılamıyor.. Daha sonra tekrar deneyiniz.." ::http::cleanup $sayfa return } if { [::http::status $sayfa] == "timeout" } { putquick "PRIVMSG $chan :Hata: Geobytes.com'a bağlantı zaman aşımına uğradı.." ::http::cleanup $sayfa return } set html [::http::data $sayfa] ::http::cleanup $sayfa set country "";set region "";set city "";set certainty "" if {[regexp {<html><head></head><body>The IP Address that you are currently using: .*? has exceeded} $html]} { putquick "PRIVMSG $chan :Üzgünüm, geobytes sitesine şuan daha fazla sorgulama yapılamıyor kota doldu.. \002!nerden2\002 komutunu kullanınız.." return } if {[regexp {<p>We are unable to locate the address (.*?) at this time.*?<p>} $html]} { putquick "PRIVMSG $chan :\00304Üzgünüm \00312\[[join $text]\] \00304bulunamadı." return } regexp {.*?>Country</td>.*? value="(.*?)" .*?>Region</td>.*? value="(.*?)" .*?>City</td>.*? value="(.*?)" .*?>Certainty</td>.*? value="(.*?)" .*?>Is proxy</td>.*? value="(.*?)" .*?} $html match ulke bolge sehir kesinlik proxy if {$proxy == "true"} { putquick "PRIVMSG $chan :\00312\[$text\]" putquick "PRIVMSG $chan :\00302için sorgulama bilgileri: \00305Şehir: \00304$sehir, \00305Bölge: \00304$bolge, \00305Ülke: \00304$ulke. \00305Kesinlik: \00304\%$kesinlik \00302Proxy kullanıyor!" } if {$proxy == "false"} { putquick "PRIVMSG $chan :\00312\[$text\] \00302için sorgulama bilgileri:" putquick "PRIVMSG $chan :\00305Şehir: \00304$sehir, \00305Bölge: \00304$bolge, \00305Ülke: \00304$ulke. \00305Kesinlik: \00304\%$kesinlik" } return }
putlog "ipstat.tcl By SaW Yüklendi.."
Bu site yeni halini almadan onceki hali bunu nasıl yenisine göre tasarlayabiliriz simdiden tskler