18 Mayıs 2025, 10:05
|
#1 |
| | mIRC Ülke & Şehir Giriş Sistemi (TR özel) 1. Girişte Whois ve IP Sorgusu Kod on *:JOIN:#: {
if ($nick != $me) {
; Eğer daha önce karşılanmadıysa
if (!$hget(giris_karsilama, $nick)) {
set %geo.nick $nick
.whois $nick
}
}
}
raw 311:*: {
set %geo.host $4
hadd giris_karsilama %geo.nick $ctime
; Gizli host kontrolü
if (%geo.host isin *.users.* || %geo.host isin *.cloak* || %geo.host isin *.unknown*) {
msg # $+ %geo.nick Hostun gizli, konum tespiti yapılamadı.
}
else {
; API’ye bağlan
sockclose geoip
sockopen geoip ip-api.com 80
}
} 2. IP-API Sorgusu Gönder Kod on *:sockopen:geoip: {
if ($sockerr > 0) return
sockwrite -n geoip GET /json/%geo.host HTTP/1.1
sockwrite -n geoip Host: ip-api.com
sockwrite -n geoip $crlf
} 3. Yanıtı Oku ve Karşılama Yap Kod on *:sockread:geoip: {
var %data
sockread %data
if (%data iswm *country*) {
var %ulke = $json(%data, country)
var %sehir = $json(%data, city)
; Sadece Türkiye için özel mesaj
if (%ulke == Turkey) {
msg # 04[TR] $+ %geo.nick adlı kullanıcı $upper(%sehir) şehrinden katıldı. Hoş geldin!
}
else {
msg # 12[Yabancı] $+ %geo.nick adlı kullanıcı $upper(%ulke) üzerinden bağlandı.
}
}
} 4. JSON Ayıklama Alias Kod alias json {
var %x = $1-
var %key = $2
return $gettok($gettok(%x, $calc($findtok(%x,%key,1,34) + 1), 34),1,34)
} 5. Hash Tabloları Başlat (Bot başlarken) Kod on *:START: {
if (!$hget(giris_karsilama)) {
hmake giris_karsilama 100
}
} Örnek Çıktılar:
[TR] Ahmet adlı kullanıcı ANKARA şehrinden katıldı. Hoş geldin!
[Yabancı] Alex adlı kullanıcı Germany üzerinden bağlandı.
User123 Hostun gizli, konum tespiti yapılamadı. |
|
| |