Girişte Nick Şehir Ülke İp Gosterme ve Hotlink İp Banlama

Aytac

nicktag
Yönetici
Developer
Katılım
4 Şub 2020
Mesajlar
380
Tepkime puanı
57
Puanları
28
Konum
ircland
Web sitesi
www.ircalem.net
nickip-768x470.png


Kod:
on *:snotice:*Client connecting on port*:if !$hget(giris,$9) { who +I $9 }
on ^*:join:#: {
  if o isin $usermode && $nick !== $me {
   if $hget(giris,$nick) { echo # $+($chr(3),$color(join)) $timestamp ** Giris: $nick $tam($hget(ident,$nick),$hget(giris,$nick))) 1 $hget(sehir,$nick) $cesitler($hget(ulke,$nick)) | haltdef }
   else {
     hadd -m chan $nick $addtok($hget(chan,$nick),#,32)
     if !$sock($+(nrdbul,$nick)) { who +I $nick }
     haltdef
   }
  }
}
raw 352:*:bul $4 $6 $3 | hadd -m ident $6 $3 | haltdef
alias bul {
  sockopen $+(nrdbul,$2) www.ipaddresslocation.org 80
  sockmark $+(nrdbul,$2) $+($2,*,$1,*,$3)
}
alias htmlfree { if ($len($1-) <= 900) { var %x, %i = $regsub($1,/(^[^<]*>|<[^>]*>|<[^>]*$)/g,$null,%x), %x = $remove(%x, ,$chr(9)) | return %x } }
on *:sockopen:nrdbul*:{
  sockwrite -nt $sockname GET $+(/ip-address-locator.php?lookup=,$token($sock($sockname).mark,2,42)) HTTP/1.1
  sockwrite -nt $sockname Host: www.ipaddresslocation.org
  sockwrite -nt $sockname Connection: keep-alive
  sockwrite -nt $sockname Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
  sockwrite -nt $sockname User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.111 Safari/537.36
  sockwrite -nt $sockname $crlf
}
on *:sockread:nrdbul*:{ 
  var %x | sockread %x
  if $regex(%x,/<i>IP Country:</i> <b>(.*?)</b>/i) { hadd -mu5 $sockname webulke $iif($regml(1),$v1,Belirsiz) } 
  if $regex(%x,/<i>IP City: <b>(.*?)</b>/i) { hadd -mu5 $sockname websehir $iif($regml(1),$v1,Belirsiz) }
  if $regex(%x,/<i>ISP Provider:</i> <b>(.*?)</b>/i) {
   hadd -mu5 $sockname webisp $regml(1)
   hadd -mu5 $sockname webnick $token($sock($sockname).mark,1,42)
   hadd -mu5 $sockname webip $token($sock($sockname).mark,2,42)
   hadd -mu5 $sockname webident $token($sock($sockname).mark,3,42)
   hadd -mu5 $sockname webchan $hget(chan,$hget($sockname,webnick))
   if $hget(chan,$hget($sockname,webnick)) {
     hdel -m chan $v1
     hadd -m giris $hget($sockname,webnick) $hget($sockname,webip)
     hadd -m sehir $hget($sockname,webnick) $+($chr(40),,$hget($sockname,webulke),-,$hget($sockname,websehir),,$chr(41))
     hadd -m ulke $hget($sockname,webnick) $hget($sockname,webulke)
     tokenize 32 $hget($sockname,webchan)
     echo $* $+($chr(3),$color(join)) $timestamp Giris: ** $hget($sockname,webnick) $tam($hget($sockname,webident),$hget(giris,$hget($sockname,webnick))) 1 $hget(sehir,$hget($sockname,webnick)) $cesitler($hget($sockname,webulke))
   }
   sockclose $sockname
  }
}
alias cesitler { return - 4"Nick-Ban" 2&4 "IP-Banla" 2&4 "Shun" 2&4 "Gzline" 2&4 $iif(!$ulkekont($1),"Ulke-Ekle","Ulke-Sil" - "Tum-Kanallardan-At") - }
alias ulkekont {
  if $hfind(banulke,$1,1,W).data { return 1 }
}
alias tam { return $+($chr(40),$1,@,$2,$chr(41)) }
alias htmlfree { if ($len($1-) <= 900) { var %x, %i = $regsub($1,/(^[^<]*>|<[^>]*>|<[^>]*$)/g,$null,%x), %x = $remove(%x, ,$chr(9)) | return %x } }
on ^*:hotlink:*"*:#:if ($regex($1,/"(Nick|IP|Gzline|Shun|Ulke)(.+)"$/)) return
on *:hotlink:*:*: {
  var %nick $token($hotline,5,32), %islem $remove($1,")
  if (%islem == nick-ban) { ban -k $active %nick 1 4 Nick-Ban }
  if (%islem == ip-banla) { ban -k $active %nick 2 4IP-Ban }
  if (%islem == shun) { echo -a shun %nick 4Shunlandin }
  if (%islem == tum-kanallardan-at) {
   tokenize 32 $regsubex($str(a,$comchan(%nick,0)),/./g,$chr(32) $comchan(%nick,\n) )
   ban -k $* %nick 4Tum kanallardan ban.
  }
  if (%islem == gzline) { gzline %nick +0 4sunucudan uzaklastirildiniz. }
  if (%islem == ulke-ekle) { var %rand $rand(0,9999)
   if $hfind(banulke,$hget(ulke,%nick),1,W).data { echo -a $hget(ulke,%nick) - zaten yasakli ulke listesinde. | return }
   hadd -m banulke %rand $hget(ulke,%nick)
   hsave -m banulke banulke.63
   echo -a ** $hget(ulke,%nick) - banli listeye eklendi.
  }
  if (%islem == ulke-sil) { var %rand $rand(0,9999)
   if !$hfind(banulke,$hget(ulke,%nick),1,W).data { echo -a $hget(ulke,%nick) - zaten yasakli ulke listesinde bulunmuyor. | return }
   hadd -m banulke $hfind(banulke,$hget(ulke,%nick),1,W).data
   hsave -m banulke banulke.63
   echo -a ** $hget(ulke,%nick) - ban listesinden silindi.
  }
}
on *:start: {
  if $isfile(banluke.63) { hmake banulke | hload banulke banulke.63 }
}
 
Üst