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

IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası (https://www.ircforumlari.net/)
-   mIRC Scripting Hazır Kodlar (https://www.ircforumlari.net/mirc-scripting-hazir-kodlar/)
-   -   İp adresi konum sorgulama (Güncel) (https://www.ircforumlari.net/mirc-scripting-hazir-kodlar/1064161-ip-adresi-konum-sorgulama-guncel.html)

Chelt 23 Kasım 2025 17:32

Cevap: İp adresi konum sorgulama (Güncel)
 
bunu böyle deneyin

alias sorgula {
if (!$1) { echo -a Lütfen bir IP giriniz. Örnek: /sorgula 1.2.3.4 | return }
set %ipaddr $1
set %ipdata $null
echo -a IP %ipaddr bilgileri sorgulanıyor...
sockopen -e iplookup ipwho.is 443
}

on *:SOCKOPEN:iplookup:{
if ($sockerr) { echo -a Sunucuyla bağlantı kurulamıyor. | sockclose $sockname | return }
sockwrite -n $sockname GET / $+ %ipaddr HTTP/1.1
sockwrite -n $sockname Host: ipwho.is
sockwrite -n $sockname User-Agent: mIRC
sockwrite -n $sockname Connection: close
sockwrite -n $sockname $crlf
}

on *:SOCKREAD:iplookup:{
if ($sockerr) { echo -a Sunucuyla bağlantı hatası. | sockclose $sockname | return }
var %tmp
sockread %tmp
if (%tmp != $null) {
if (!$regex(%tmp,/^(HTTP\/|Content-|Server:|Date:|Connection:|Access-Control)/i)) {
set %ipdata %ipdata $+ %tmp
}
}
}

on *:SOCKCLOSE:iplookup:{ .timer 1 1 showdata }

alias showdata {
if (%ipdata == $null) { echo -a Gösterilecek veri yok. | unset %ipaddr | unset %ipdata | return }

var %type = Bulunamadı
var %asn = Bulunamadı
var %country = Bulunamadı
var %region = Bulunamadı
var %city = Bulunamadı
var %org = Bulunamadı
var %domain = Bulunamadı
var %continent = Bulunamadı

; API success kontrolü
if ($regex(%ipdata,/"success":\s*false/i)) {
echo -a 4HATA: API IP bilgisini döndüremedi.
unset %ipaddr | unset %ipdata
return
}

if ($regex(%ipdata,/"type":"([^"]+)"/i)) { set %type $regml(1) }
if ($regex(%ipdata,/"continent":"([^"]+)"/i)) { set %continent $regml(1) }

if ($regex(%ipdata,/"asn":\s*([0-9]+)/i)) { set %asn $regml(1) }
elseif ($regex(%ipdata,/"asn":"AS([0-9]+)"/i)) { set %asn $regml(1) }

if ($regex(%ipdata,/"org":"([^"]+)"/i)) { set %org $regml(1) }
elseif ($regex(%ipdata,/"isp":"([^"]+)"/i)) { set %org $regml(1) }

if ($regex(%ipdata,/"country":"([^"]+)"/i)) { set %country $regml(1) }
if ($regex(%ipdata,/"region":"([^"]+)"/i)) { set %region $regml(1) }
if ($regex(%ipdata,/"city":"([^"]+)"/i)) { set %city $regml(1) }

if ($regex(%ipdata,/"domain":"([^"]+)"/i)) { set %domain $regml(1) }
elseif ($regex(%ipdata,/"hostname":"([^"]+)"/i)) { set %d

ZaLiM1979 23 Kasım 2025 18:11

Cevap: İp adresi konum sorgulama (Güncel)
 
Alıntı:

Chelt Nickli Üyeden Alıntı (Mesaj 1043104401)
bunu böyle deneyin

alias sorgula {
if (!$1) { echo -a Lütfen bir IP giriniz. Örnek: /sorgula 1.2.3.4 | return }
set %ipaddr $1
set %ipdata $null
echo -a IP %ipaddr bilgileri sorgulanıyor...
sockopen -e iplookup ipwho.is 443
}

on *:SOCKOPEN:iplookup:{
if ($sockerr) { echo -a Sunucuyla bağlantı kurulamıyor. | sockclose $sockname | return }
sockwrite -n $sockname GET / $+ %ipaddr HTTP/1.1
sockwrite -n $sockname Host: ipwho.is
sockwrite -n $sockname User-Agent: mIRC
sockwrite -n $sockname Connection: close
sockwrite -n $sockname $crlf
}

on *:SOCKREAD:iplookup:{
if ($sockerr) { echo -a Sunucuyla bağlantı hatası. | sockclose $sockname | return }
var %tmp
sockread %tmp
if (%tmp != $null) {
if (!$regex(%tmp,/^(HTTP\/|Content-|Server:|Date:|Connection:|Access-Control)/i)) {
set %ipdata %ipdata $+ %tmp
}
}
}

on *:SOCKCLOSE:iplookup:{ .timer 1 1 showdata }

alias showdata {
if (%ipdata == $null) { echo -a Gösterilecek veri yok. | unset %ipaddr | unset %ipdata | return }

var %type = Bulunamadı
var %asn = Bulunamadı
var %country = Bulunamadı
var %region = Bulunamadı
var %city = Bulunamadı
var %org = Bulunamadı
var %domain = Bulunamadı
var %continent = Bulunamadı

; API success kontrolü
if ($regex(%ipdata,/"success":\s*false/i)) {
echo -a 4HATA: API IP bilgisini döndüremedi.
unset %ipaddr | unset %ipdata
return
}

if ($regex(%ipdata,/"type":"([^"]+)"/i)) { set %type $regml(1) }
if ($regex(%ipdata,/"continent":"([^"]+)"/i)) { set %continent $regml(1) }

if ($regex(%ipdata,/"asn":\s*([0-9]+)/i)) { set %asn $regml(1) }
elseif ($regex(%ipdata,/"asn":"AS([0-9]+)"/i)) { set %asn $regml(1) }

if ($regex(%ipdata,/"org":"([^"]+)"/i)) { set %org $regml(1) }
elseif ($regex(%ipdata,/"isp":"([^"]+)"/i)) { set %org $regml(1) }

if ($regex(%ipdata,/"country":"([^"]+)"/i)) { set %country $regml(1) }
if ($regex(%ipdata,/"region":"([^"]+)"/i)) { set %region $regml(1) }
if ($regex(%ipdata,/"city":"([^"]+)"/i)) { set %city $regml(1) }

if ($regex(%ipdata,/"domain":"([^"]+)"/i)) { set %domain $regml(1) }
elseif ($regex(%ipdata,/"hostname":"([^"]+)"/i)) { set %d


coder sayilmam ama bence bu kod'da eksiklikler var. mümkün mü?

Entrance 25 Kasım 2025 00:58

Cevap: İp adresi konum sorgulama (Güncel)
 
Alıntı:

ZaLiM1979 Nickli Üyeden Alıntı (Mesaj 1043104441)
coder sayilmam ama bence bu kod'da eksiklikler var. mümkün mü?

Kod:


alias sorgula {
  if (!$1) { echo -a Lütfen bir IP giriniz. Örnek: /sorgula 1.2.3.4 | return }
  set %ipaddr $1
  set %ipdata $null
  echo -a IP: %ipaddr Bilgileri Sorgulanıyor...
  sockopen -e iplookup ipwho.is 443
}

on *:SOCKOPEN:iplookup: {
  if ($sockerr) {
    echo -a Sunucuyla Bağlantı Kurulamıyor.
    sockclose $sockname
    return
  }
  sockwrite -n $sockname GET / $+ %ipaddr $+ ?output=json HTTP/1.1
  sockwrite -n $sockname Host: ipwho.is
  sockwrite -n $sockname User-Agent: mIRC
  sockwrite -n $sockname Connection: close
  sockwrite -n $sockname $crlf
}

on *:SOCKREAD:iplookup: {
  if ($sockerr) {
    echo -a Sunucuyla Bağlantı Kurulamıyor.
    sockclose $sockname
    return
  }
  var %temp
  sockread %temp
  if (%temp != $null) {
    ; HTTP headerları atla
    if (!$regex(%temp, /^HTTP\/|^[A-Za-z\-]+:/i)) {
      set %ipdata %ipdata $+ %temp
    }
  }
}

on *:SOCKCLOSE:iplookup: {
  .timer 1 1 showdata
}

alias showdata {
  if (%ipdata == $null) {
    echo -a Gösterilecek Veri Yok.
    unset %ipaddr
    unset %ipdata
    return
  }

  var %type = Bulunamadı
  var %asn = Bulunamadı
  var %country = Bulunamadı
  var %region = Bulunamadı
  var %city = Bulunamadı
  var %org = Bulunamadı
  var %domain = Bulunamadı
  var %continent = Bulunamadı

  if ($regex(%ipdata, /"domain":"([^"]+)"/i)) { set %domain $regml(1) }
  if ($regex(%ipdata, /"type":"([^"]+)"/i)) { set %type $regml(1) }
  if ($regex(%ipdata, /"continent":"([^"]+)"/i)) { set %continent $regml(1) }
  if ($regex(%ipdata, /"asn":\s*([0-9]+)/i)) { set %asn $regml(1) }
  if ($regex(%ipdata, /"isp":"([^"]+)"/i)) { set %org $regml(1) }
  if ($regex(%ipdata, /"country":"([^"]+)"/i)) { set %country $regml(1) }
  if ($regex(%ipdata, /"region":"([^"]+)"/i)) { set %region $regml(1) }
  if ($regex(%ipdata, /"city":"([^"]+)"/i)) { set %city $regml(1) }

  echo -a 3,1[ K U L L A N I C I B İ L G İ L E R İ ] \
    9ASN  : 10 $utf2tr(%asn) \
    9Ülke  : 10 $utf2tr(%country) \
    9Kıta  : 10 $utf2tr(%continent) \
    9Bölge  : 10 $utf2tr(%region) \
    9Şehir  : 10 $utf2tr(%city) \
    9ISP  : 10 $utf2tr(%org) \
    9IP TÜRÜ  : 10 $utf2tr(%type) \
    9Alan Adı  : 10 $utf2tr(%domain)

  unset %ipaddr
  unset %ipdata
}

alias utf2tr {
  var %text = $1-
  %text = $replace(%text,\u0130,İ,\u0131,ı,\u00dc,Ü,\u00fc,ü,\u011e,Ğ,\u011f,ğ,\u015e,Ş,\u015f,ş,\u00d6,Ö,\u00f6,ö,\u00c7,Ç,\u00e7,ç)
  return %text
}

Bu şekilde deneyip, olumlu/olumsuz dönüş yaparsanız yardımcı olmaya çalışırım.)

İyi forumlar. ^^

ZaLiM1979 25 Kasım 2025 19:51

Cevap: İp adresi konum sorgulama (Güncel)
 
Alıntı:

Entrance Nickli Üyeden Alıntı (Mesaj 1043105546)
Kod:


alias sorgula {
  if (!$1) { echo -a Lütfen bir IP giriniz. Örnek: /sorgula 1.2.3.4 | return }
  set %ipaddr $1
  set %ipdata $null
  echo -a IP: %ipaddr Bilgileri Sorgulanıyor...
  sockopen -e iplookup ipwho.is 443
}

on *:SOCKOPEN:iplookup: {
  if ($sockerr) {
    echo -a Sunucuyla Bağlantı Kurulamıyor.
    sockclose $sockname
    return
  }
  sockwrite -n $sockname GET / $+ %ipaddr $+ ?output=json HTTP/1.1
  sockwrite -n $sockname Host: ipwho.is
  sockwrite -n $sockname User-Agent: mIRC
  sockwrite -n $sockname Connection: close
  sockwrite -n $sockname $crlf
}

on *:SOCKREAD:iplookup: {
  if ($sockerr) {
    echo -a Sunucuyla Bağlantı Kurulamıyor.
    sockclose $sockname
    return
  }
  var %temp
  sockread %temp
  if (%temp != $null) {
    ; HTTP headerları atla
    if (!$regex(%temp, /^HTTP\/|^[A-Za-z\-]+:/i)) {
      set %ipdata %ipdata $+ %temp
    }
  }
}

on *:SOCKCLOSE:iplookup: {
  .timer 1 1 showdata
}

alias showdata {
  if (%ipdata == $null) {
    echo -a Gösterilecek Veri Yok.
    unset %ipaddr
    unset %ipdata
    return
  }

  var %type = Bulunamadı
  var %asn = Bulunamadı
  var %country = Bulunamadı
  var %region = Bulunamadı
  var %city = Bulunamadı
  var %org = Bulunamadı
  var %domain = Bulunamadı
  var %continent = Bulunamadı

  if ($regex(%ipdata, /"domain":"([^"]+)"/i)) { set %domain $regml(1) }
  if ($regex(%ipdata, /"type":"([^"]+)"/i)) { set %type $regml(1) }
  if ($regex(%ipdata, /"continent":"([^"]+)"/i)) { set %continent $regml(1) }
  if ($regex(%ipdata, /"asn":\s*([0-9]+)/i)) { set %asn $regml(1) }
  if ($regex(%ipdata, /"isp":"([^"]+)"/i)) { set %org $regml(1) }
  if ($regex(%ipdata, /"country":"([^"]+)"/i)) { set %country $regml(1) }
  if ($regex(%ipdata, /"region":"([^"]+)"/i)) { set %region $regml(1) }
  if ($regex(%ipdata, /"city":"([^"]+)"/i)) { set %city $regml(1) }

  echo -a 3,1[ K U L L A N I C I B İ L G İ L E R İ ] \
    9ASN  : 10 $utf2tr(%asn) \
    9Ülke  : 10 $utf2tr(%country) \
    9Kıta  : 10 $utf2tr(%continent) \
    9Bölge  : 10 $utf2tr(%region) \
    9Şehir  : 10 $utf2tr(%city) \
    9ISP  : 10 $utf2tr(%org) \
    9IP TÜRÜ  : 10 $utf2tr(%type) \
    9Alan Adı  : 10 $utf2tr(%domain)

  unset %ipaddr
  unset %ipdata
}

alias utf2tr {
  var %text = $1-
  %text = $replace(%text,\u0130,İ,\u0131,ı,\u00dc,Ü,\u00fc,ü,\u011e,Ğ,\u011f,ğ,\u015e,Ş,\u015f,ş,\u00d6,Ö,\u00f6,ö,\u00c7,Ç,\u00e7,ç)
  return %text
}

Bu şekilde deneyip, olumlu/olumsuz dönüş yaparsanız yardımcı olmaya çalışırım.)

İyi forumlar. ^^


3 degisik IP denedim hep ayni sonuc.
Gösterilecek Veri Yok.

Entrance 25 Kasım 2025 22:00

Cevap: İp adresi konum sorgulama (Güncel)
 
Alıntı:

ZaLiM1979 Nickli Üyeden Alıntı (Mesaj 1043105955)
3 degisik IP denedim hep ayni sonuc.
Gösterilecek Veri Yok.

Kod:

alias sorgula {
  if (!$1) { echo -a Lütfen bir IP giriniz. Örnek: /sorgula 1.2.3.4 | return }
  set %ipaddr $1
  unset %ipdata | unset %headerdone | unset %clen | unset %got
  if ($var(&buf,0)) bunset &buf
  echo -a IP: %ipaddr Bilgileri Sorgulanıyor...
  sockopen iplookup ip-api.com 80
}

on *:SOCKOPEN:iplookup: {
  if ($sockerr) { echo -a Sunucuyla Bağlantı Kurulamıyor. | sockclose $sockname | return }
  sockwrite -n $sockname GET $+(/json/,%ipaddr) HTTP/1.1
  sockwrite -n $sockname Host: ip-api.com
  sockwrite -n $sockname Connection: close
  sockwrite -n $sockname Accept: application/json
  sockwrite -n $sockname User-Agent: mIRC
  sockwrite -n $sockname $crlf
}

on *:SOCKREAD:iplookup: {
  if ($sockerr) { echo -a Sunucuyla Bağlantı Kurulamıyor. | sockclose $sockname | return }

  var %read 1
  while (%read) {
    sockread -f &chunk
    if ($bvar(&chunk,0) == 0) break
    if (!$var(&buf,0)) bcopy &buf 1 &chunk 1 $bvar(&chunk,0)
    else bcopy &buf $calc($bvar(&buf,0) + 1) &chunk 1 $bvar(&chunk,0)
    bunset &chunk
  }

  if (!%headerdone) {
    var %p $bfind(&buf,1,13 10 13 10)
    if (%p) {
      set %headerdone 1
      var %hdr $bvar(&buf,1,%p).text
      if ($regex(%hdr,/Content-Length:\s*([0-9]+)/i)) set %clen $regml(1)

      var %bodyStart $calc(%p + 4)
      var %len $bvar(&buf,0)
      if (%len >= %bodyStart) {
        var %bytes $calc(%len - %bodyStart + 1)
        var %text $bvar(&buf,%bodyStart,%bytes).text
        set %ipdata $+(%ipdata,%text)
        set %got $calc(%got + %bytes)
        ; Buffer'ı sadece gövde ile yeniden düzenle
        bcopy &buf 1 &buf %bodyStart $calc(%len - %bodyStart + 1)
      }
      else bunset &buf
    }
    return
  }

  if ($var(&buf,0)) {
    var %bytes $bvar(&buf,0)
    var %text $bvar(&buf,1,%bytes).text
    set %ipdata $+(%ipdata,%text)
    set %got $calc(%got + %bytes)
    bunset &buf
  }
}

on *:SOCKCLOSE:iplookup: {
  .timer 1 1 showdata
}

alias showdata {
  if (%ipdata == $null) {
    echo -a Gösterilecek Veri Yok.
    goto cleanup
  }

  ; JSON alanları
  var %status = Bulunamadı
  var %query = Bulunamadı
  var %country = Bulunamadı
  var %region = Bulunamadı
  var %city = Bulunamadı
  var %org = Bulunamadı
  var %as = Bulunamadı
  var %isp = Bulunamadı
  var %lat = Bulunamadı
  var %lon = Bulunamadı
  var %message = Bulunamadı

  if ($regex(%ipdata,/"status":"([^"]+)"/i)) set %status $regml(1)
  if ($regex(%ipdata,/"query":"([^"]+)"/i)) set %query $regml(1)
  if ($regex(%ipdata,/"country":"([^"]+)"/i)) set %country $regml(1)
  if ($regex(%ipdata,/"regionName":"([^"]+)"/i)) set %region $regml(1)
  if ($regex(%ipdata,/"city":"([^"]+)"/i)) set %city $regml(1)
  if ($regex(%ipdata,/"org":"([^"]+)"/i)) set %org $regml(1)
  if ($regex(%ipdata,/"as":"([^"]+)"/i)) set %as $regml(1)
  if ($regex(%ipdata,/"isp":"([^"]+)"/i)) set %isp $regml(1)
  if ($regex(%ipdata,/"lat":\s*([-0-9.]+)/i)) set %lat $regml(1)
  if ($regex(%ipdata,/"lon":\s*([-0-9.]+)/i)) set %lon $regml(1)
  if ($regex(%ipdata,/"message":"((?:\\.|[^"])*)"/i)) {
    var %m $regml(1)
    %m = $replace(%m,\\u0130,İ,\\u0131,ı,\\u00dc,Ü,\\u00fc,ü,\\u011e,Ğ,\\u011f,ğ,\\u015e,Ş,\\u015f,ş,\\u00d6,Ö,\\u00f6,ö,\\u00c7,Ç,\\u00e7,ç,\\/",/")
    set %message %m
  }

  if ($lower(%status) == success) {
    echo -a 3,1[ K U L L A N I C I  B İ L G İ L E R İ ]
    echo -a 9IP  : 10 $utf2tr(%query)
    echo -a 9Ülke  : 10 $utf2tr(%country)
    echo -a 9Bölge  : 10 $utf2tr(%region)
    echo -a 9Şehir  : 10 $utf2tr(%city)
    echo -a 9ASN/AS  : 10 $utf2tr(%as)
    echo -a 9Org/ISP  : 10 $utf2tr(%org) / $utf2tr(%isp)
    echo -a 9Konum  : 10 Enlem: $utf2tr(%lat) Boylam: $utf2tr(%lon)
  }
  else {
    echo -a Sorgu başarısız: $iif(%message != Bulunamadı,$utf2tr(%message),Yanıt: $utf2tr(%ipdata))
  }

  :cleanup
  unset %ipaddr | unset %ipdata | unset %headerdone | unset %clen | unset %got
  if ($var(&buf,0)) bunset &buf
}

alias utf2tr {
  var %text = $1-
  %text = $replace(%text,\u0130,İ,\u0131,ı,\u00dc,Ü,\u00fc,ü,\u011e,Ğ,\u011f,ğ,\u015e,Ş,\u015f,ş,\u00d6,Ö,\u00f6,ö,\u00c7,Ç,\u00e7,ç)
  return %text
}

Dün test etme imkânım yoktu. Bugün test etme fırsatı buldum bu şekliyle mIRC'in en son sürümü olan v7.83'te sorunsuz çalışmaktadır.

İyi forumlar. ^^

ZaLiM1979 25 Kasım 2025 22:48

Cevap: İp adresi konum sorgulama (Güncel)
 
Alıntı:

Entrance Nickli Üyeden Alıntı (Mesaj 1043106073)
Kod:

alias sorgula {
  if (!$1) { echo -a Lütfen bir IP giriniz. Örnek: /sorgula 1.2.3.4 | return }
  set %ipaddr $1
  unset %ipdata | unset %headerdone | unset %clen | unset %got
  if ($var(&buf,0)) bunset &buf
  echo -a IP: %ipaddr Bilgileri Sorgulanıyor...
  sockopen iplookup ip-api.com 80
}

on *:SOCKOPEN:iplookup: {
  if ($sockerr) { echo -a Sunucuyla Bağlantı Kurulamıyor. | sockclose $sockname | return }
  sockwrite -n $sockname GET $+(/json/,%ipaddr) HTTP/1.1
  sockwrite -n $sockname Host: ip-api.com
  sockwrite -n $sockname Connection: close
  sockwrite -n $sockname Accept: application/json
  sockwrite -n $sockname User-Agent: mIRC
  sockwrite -n $sockname $crlf
}

on *:SOCKREAD:iplookup: {
  if ($sockerr) { echo -a Sunucuyla Bağlantı Kurulamıyor. | sockclose $sockname | return }

  var %read 1
  while (%read) {
    sockread -f &chunk
    if ($bvar(&chunk,0) == 0) break
    if (!$var(&buf,0)) bcopy &buf 1 &chunk 1 $bvar(&chunk,0)
    else bcopy &buf $calc($bvar(&buf,0) + 1) &chunk 1 $bvar(&chunk,0)
    bunset &chunk
  }

  if (!%headerdone) {
    var %p $bfind(&buf,1,13 10 13 10)
    if (%p) {
      set %headerdone 1
      var %hdr $bvar(&buf,1,%p).text
      if ($regex(%hdr,/Content-Length:\s*([0-9]+)/i)) set %clen $regml(1)

      var %bodyStart $calc(%p + 4)
      var %len $bvar(&buf,0)
      if (%len >= %bodyStart) {
        var %bytes $calc(%len - %bodyStart + 1)
        var %text $bvar(&buf,%bodyStart,%bytes).text
        set %ipdata $+(%ipdata,%text)
        set %got $calc(%got + %bytes)
        ; Buffer'ı sadece gövde ile yeniden düzenle
        bcopy &buf 1 &buf %bodyStart $calc(%len - %bodyStart + 1)
      }
      else bunset &buf
    }
    return
  }

  if ($var(&buf,0)) {
    var %bytes $bvar(&buf,0)
    var %text $bvar(&buf,1,%bytes).text
    set %ipdata $+(%ipdata,%text)
    set %got $calc(%got + %bytes)
    bunset &buf
  }
}

on *:SOCKCLOSE:iplookup: {
  .timer 1 1 showdata
}

alias showdata {
  if (%ipdata == $null) {
    echo -a Gösterilecek Veri Yok.
    goto cleanup
  }

  ; JSON alanları
  var %status = Bulunamadı
  var %query = Bulunamadı
  var %country = Bulunamadı
  var %region = Bulunamadı
  var %city = Bulunamadı
  var %org = Bulunamadı
  var %as = Bulunamadı
  var %isp = Bulunamadı
  var %lat = Bulunamadı
  var %lon = Bulunamadı
  var %message = Bulunamadı

  if ($regex(%ipdata,/"status":"([^"]+)"/i)) set %status $regml(1)
  if ($regex(%ipdata,/"query":"([^"]+)"/i)) set %query $regml(1)
  if ($regex(%ipdata,/"country":"([^"]+)"/i)) set %country $regml(1)
  if ($regex(%ipdata,/"regionName":"([^"]+)"/i)) set %region $regml(1)
  if ($regex(%ipdata,/"city":"([^"]+)"/i)) set %city $regml(1)
  if ($regex(%ipdata,/"org":"([^"]+)"/i)) set %org $regml(1)
  if ($regex(%ipdata,/"as":"([^"]+)"/i)) set %as $regml(1)
  if ($regex(%ipdata,/"isp":"([^"]+)"/i)) set %isp $regml(1)
  if ($regex(%ipdata,/"lat":\s*([-0-9.]+)/i)) set %lat $regml(1)
  if ($regex(%ipdata,/"lon":\s*([-0-9.]+)/i)) set %lon $regml(1)
  if ($regex(%ipdata,/"message":"((?:\\.|[^"])*)"/i)) {
    var %m $regml(1)
    %m = $replace(%m,\\u0130,İ,\\u0131,ı,\\u00dc,Ü,\\u00fc,ü,\\u011e,Ğ,\\u011f,ğ,\\u015e,Ş,\\u015f,ş,\\u00d6,Ö,\\u00f6,ö,\\u00c7,Ç,\\u00e7,ç,\\/",/")
    set %message %m
  }

  if ($lower(%status) == success) {
    echo -a 3,1[ K U L L A N I C I  B İ L G İ L E R İ ]
    echo -a 9IP  : 10 $utf2tr(%query)
    echo -a 9Ülke  : 10 $utf2tr(%country)
    echo -a 9Bölge  : 10 $utf2tr(%region)
    echo -a 9Şehir  : 10 $utf2tr(%city)
    echo -a 9ASN/AS  : 10 $utf2tr(%as)
    echo -a 9Org/ISP  : 10 $utf2tr(%org) / $utf2tr(%isp)
    echo -a 9Konum  : 10 Enlem: $utf2tr(%lat) Boylam: $utf2tr(%lon)
  }
  else {
    echo -a Sorgu başarısız: $iif(%message != Bulunamadı,$utf2tr(%message),Yanıt: $utf2tr(%ipdata))
  }

  :cleanup
  unset %ipaddr | unset %ipdata | unset %headerdone | unset %clen | unset %got
  if ($var(&buf,0)) bunset &buf
}

alias utf2tr {
  var %text = $1-
  %text = $replace(%text,\u0130,İ,\u0131,ı,\u00dc,Ü,\u00fc,ü,\u011e,Ğ,\u011f,ğ,\u015e,Ş,\u015f,ş,\u00d6,Ö,\u00f6,ö,\u00c7,Ç,\u00e7,ç)
  return %text
}

Dün test etme imkânım yoktu. Bugün test etme fırsatı buldum bu şekliyle mIRC'in en son sürümü olan v7.83'te sorunsuz çalışmaktadır.

İyi forumlar. ^^


Sagolasin, 7.81'de denedim calisti.
sabirli birini bulsam bu tür addonlari bende codlamayi ögrenmek isterdim. :-)


Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 07:42.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2026, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2025 IRCForumlari.Net Sparhawk