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

Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 18 Haziran 2005, 11:08   #1
Çevrimiçi
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
Girişteki +R Modunun Nasıl -R yaparız?




MerhabaLar

Bazı ServerLerde Giriş YapıLan Nicke Direk +R Takısı VeriLiyo DoğaL oLarak RekLamcıLarın YazdıkLarı Spama Gitmiyor

Spamın Modunu NasıL -R Ederiz ???
MerhabaLar

Bazı ServerLerde Giriş YapıLan Nicke Direk +R Takısı VeriLiyo DoğaL oLarak RekLamcıLarın YazdıkLarı Spama Gitmiyor

Spamın Modunu NasıL -R Ederiz ???
__________________
Davut Alper BALCI - pC`kOpAt
 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları sohbet odaları Sohbet
Alt 18 Haziran 2005, 11:13   #2
Utku
Guest
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.



[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

 
Alıntı ile Cevapla

Alt 20 Haziran 2005, 22:23   #3
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.



Antispam bot adonudur. bunu kendime göre ayarlamak istiyorum mümkünse ilk olarak serverde user olan bütün kanallara girecek birde kick yada ban yerine kill yada kline aticak böyle birşey olması mümkünmü acaba. yardımcı olursanız sevinirim


alias asb {
if ($dialog(asb) ) { dialog -o asb | dialog -n asb }
else { dialog -m asb asb }
}
menu menubar,status,channel {
Anti Spam Bot
.Aç:asb
.-
.$iif(%asb.state == 1,Bağlantıyı Kes,Bağlan):if (%asb.state == 1) { asb.quit | if ($dialog(asb)) { did -ra asb 83 OFF | did -u asb 83 | did -ra asb 84 Disconnected } } | else { asb.start | if ($dialog(asb)) { set %asb.state 1 | did -ra asb 83 ON | did -c asb 83 } }
.$iif(%asb.jp == 1,Kanala Gir,Kanaldan Çık):if (%asb.jp == 1) { asb.joinchans } | else { asb.partchans }
.Zamanı Durdur:.timerasbstayjoined off | .timerasbstayparted off | echo -a 4Antispam Bot zamanlayıcı durduruldu
.-
.Botun Durumu:asb.status -a
}




if ($did(83).state == 1) { set %asb.state 1 | did -ra asb 83 ON }
else { set %asb.state 0 | did -ra asb 83 OFF | did -ra asb 84 Disconnected }
if (%asb.state == 1) { asb.start }
else { asb.quit }



menu @ASB {
Clear Window:clear
}

; dialog table generated by Dialog Studio

dialog asb {
title "Reklam Kontrol Botu"
size -1 -1 187 147
option dbu
tab "Ayarlar", 1, 0 0 186 133
box "Bot bilgileri", 6, 5 18 84 112, tab 1
text "------ilk------", 7, 29 27 35 8, tab 1
text "Nickname", 8, 10 37 24 8, tab 1
edit "", 9, 35 36 50 10, tab 1 autohs
text "Password", 10, 10 47 23 8, tab 1
edit "", 11, 35 45 50 10, tab 1 autohs
text "------Yedek------", 12, 29 63 36 8, tab 1
text "Nickname", 13, 10 73 24 8, tab 1
edit "", 14, 35 72 50 10, tab 1 autohs
text "Password", 15, 10 83 23 8, tab 1
edit "", 16, 35 82 50 10, tab 1 autohs
text "------İsim------", 17, 32 99 32 8, tab 1
text "Ident", 18, 10 109 12 8, tab 1
edit "", 19, 35 107 50 10, tab 1 autohs
text "Name", 20, 10 117 14 8, tab 1
edit "", 21, 35 117 50 10, tab 1 autohs
box "Hangi Kanallara Girsin", 22, 92 18 91 62, tab 1
combo 23, 97 27 60 50, tab 1 size
button "Ekle", 24, 159 39 20 10, tab 1
button "Sil", 25, 159 53 20 10, tab 1
box "Server`a Gir", 27, 92 83 91 47, tab 1
radio "Sabit Port", 28, 96 93 41 10, group tab 1
radio "", 29, 96 107 9 10, tab 1
edit "", 30, 105 107 75 11, tab 1 autohs
tab "Mesajlar", 2
edit "", 31, 3 17 27 10, tab 2 autohs
text "Dakikada bir Kanaldan Çık", 32, 31 18 97 8, tab 2
edit "", 33, 3 27 27 10, tab 2 autohs
text "Dakika Sonra Kanala Tekrar Gir", 34, 31 28 102 8, tab 2
check "Mesajları @ASB Penceresine Yaz.", 35, 4 38 120 10, tab 2
check "Kanala Yaz", 36, 4 49 51 10, tab 2
edit "", 37, 55 49 50 10, tab 2 autohs
check "Dcc Gönderilirse Yaz.", 38, 4 60 65 10, tab 2
edit "", 39, 69 60 50 10, tab 2 autohs
text "Kick/Ban - On/Off", 40, 4 70 44 8, tab 2
text "Kick Message", 41, 75 70 34 8, tab 2
text "Dk", 42, 151 70 12 8, tab 2
text "Host", 43, 169 70 13 8, tab 2
check "DCC", 44, 4 78 37 10, tab 2
edit "", 45, 42 78 104 10, tab 2 autohs
edit "", 46, 147 78 20 10, tab 2 autohs
edit "", 47, 168 78 15 10, tab 2 autohs
check "Reklam", 48, 4 89 27 10, tab 2
edit "", 49, 42 89 104 10, tab 2 autohs
edit "", 50, 147 89 20 10, tab 2 autohs
edit "", 51, 168 89 15 10, tab 2 autohs
check "İsim", 52, 4 100 26 10, tab 2
edit "", 61, 42 100 104 10, tab 2 autohs
edit "", 62, 147 100 20 10, tab 2 autohs
edit "", 63, 168 100 15 10, tab 2 autohs
check "CTCP", 64, 4 111 25 10, tab 2
edit "", 65, 42 111 104 10, tab 2 autohs
edit "", 66, 147 111 20 10, tab 2 autohs
edit "", 67, 168 111 15 10, tab 2 autohs
check "Kanal", 68, 4 122 26 10, tab 2
edit "", 69, 42 122 104 10, tab 2 autohs
edit "", 71, 147 122 20 10, tab 2 autohs
edit "", 72, 168 122 15 10, tab 2 autohs
tab "Ek-Ayar", 3
text "Yazı", 53, 69 17 20 14, tab 3
combo 54, 7 17 60 55, tab 3 sort size edit vsbar
button "Ekle", 55, 69 33 20 10, tab 3
button "Sil", 56, 69 46 20 10, tab 3
text "İsim", 57, 69 75 20 14, tab 3
combo 58, 7 75 60 55, tab 3 sort size edit vsbar
button "Ekle", 59, 69 91 20 10, tab 3
button "Sil", 60, 69 104 20 10, tab 3
combo 98, 100 17 60 55, tab 3 sort size edit vsbar
button "Ekle", 99, 162 33 20 10, tab 3
button "sil", 100, 162 46 20 10, tab 3
text "Hariç", 101, 162 17 21 8, tab 3
combo 80, 100 75 60 55, tab 3 sort size edit vsbar
button "Ekle", 81, 162 91 20 10, tab 3
button "sil", 82, 162 104 20 10, tab 3
text "Kötü Kanal", 85, 162 75 20 14, tab 3
tab "Kontrol", 4
text "Nick - Kanal", 73, 36 20 30 8, tab 4
text "To", 75, 5 29 7 8, tab 4
edit "", 74, 17 28 86 10, tab 4 autohs
text "Msg", 76, 5 40 10 8, tab 4
edit "", 77, 17 39 86 39, tab 4 multi autovs vsbar
button "Mesaj", 70, 107 67 25 10, tab 4
button "Action", 78, 107 56 25 10, tab 4
button "Notice", 102, 107 45 25 10, tab 4
text "Nick Değiş", 88, 129 20 34 8, tab 4
button "Değiş", 86, 158 28 25 10, tab 4
edit "", 87, 109 28 47 10, tab 4 autohs
text "Kanaldan Çık", 90, 27 85 32 8, tab 4
button "Şimdi", 91, 62 84 20 10, tab 4
text "Kanallara Gir", 92, 27 97 32 8, tab 4
button "Şimdi", 93, 62 96 20 10, tab 4
text "Join/Part iptaL", 94, 2 109 57 8, tab 4
button "Şimdi", 95, 62 108 20 10, tab 4
check "Reklam Kaydet", 96, 91 84 45 10, tab 4
check "DCC Kaydet", 97, 91 96 50 9, tab 4
button "Oku", 103, 148 84 20 10, tab 4
button "Oku", 104, 148 96 20 10, tab 4
check "Kanal sayısı", 105, 91 108 91 9, tab 4
edit "", 106, 100 119 15 10, tab 4 autohs
text "Üstünde ise Uyar", 107, 117 120 42 8, tab 4
tab "Yardım", 5
edit "", 79, 6 18 175 110, tab 5 read multi vsbar
button "Iptal", 26, 192 122 10 9, hide cancel
check "Kes", 83, 3 136 22 10, push
edit "", 84, 29 136 157 11, read autohs
}


on *:LOAD: {
if ($version < 5.9) {
echo -a 4Sadece Mirc 5.91 versiyon üzeri mirclerde çalışır $version $+ .
.timer 1 1 unload -rs $script
halt
}
if (%asb.state == $null) {
set %asb.autohi 0
set %asb.badchans #myinc #iutm #anya #hellsengine #mycorp
set %asb.badchans.n 20
set %asb.ctcpkb 0
set %asb.ctcpkb.mask 3
set %asb.ctcpkb.msg Unwelcome CTCP's
set %asb.ctcpkb.mins 15
set %asb.dcckb 0
set %asb.dcckb.mask 3
set %asb.dcckb.msg Unwelcome DCC Send. Please visit 4#nohack
set %asb.dcckb.mins 15
set %asb.echostatus 0
set %asb.flood 0
set %asb.ident nospam
set %asb.immune *!*@*webchat.org,*!*@*conference.room,webnet!*@*,n ickserv!*@*,memoserv!*@*,chanserv!*@*
set %asb.join 15
set %asb.logdcc 0
set %asb.logspam 0
set %asb.name anti-spam-bot
set %asb.namekb 0
set %asb.namekb.mask 3
set %asb.namekb.msg Spam Bot/Script
set %asb.namekb.mins 15
set %asb.names *advertise*,*invite*
set %asb.nick1 anti-spam-bot
set %asb.nick2 anti-spam-bot2
set %asb.part 1
set %asb.pass1 none1
set %asb.pass2 none2
set %asb.repdccto 0
set %asb.repdccto.spec #nohack
set %asb.repme 1
set %asb.repspamto 0
set %asb.repspamto.spec #massads
set %asb.selserv 1
set %asb.selserv.spec irc.webchat.org 6667
set %asb.spamkb 0
set %asb.spamkb.mask 3
set %asb.spamkb.msg Mass Advertising is strictly prohibited and against server policy
set %asb.spamkb.mins 15
set %asb.spamchanskb 0
set %asb.spamchanskb.mask 3
set %asb.spamchanskb.msg Came from a Spam Channel
set %asb.spamchanskb.mins 15
set %asb.spamwords *site*,*http*,*[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
set %asb.state 0
}
echo -a 4Antispam Bot Yüklendi!
}

on *:dialog:asb:init:*: {
did -a asb 9 %asb.nick1
did -a asb 11 %asb.pass1
did -a asb 14 %asb.nick2
did -a asb 16 %asb.pass2
did -a asb 19 %asb.ident
did -a asb 21 %asb.name
did -a asb 30 %asb.selserv.spec
did -a asb 31 %asb.join
did -a asb 33 %asb.part
did -a asb 37 %asb.repspamto.spec
did -a asb 39 %asb.repdccto.spec
did -a asb 45 %asb.dcckb.msg
did -a asb 46 %asb.dcckb.mins
did -a asb 47 %asb.dcckb.mask
did -a asb 49 %asb.spamkb.msg
did -a asb 50 %asb.spamkb.mins
did -a asb 51 %asb.spamkb.mask
did -a asb 61 %asb.namekb.msg
did -a asb 62 %asb.namekb.mins
did -a asb 63 %asb.namekb.mask
did -a asb 65 %asb.ctcpkb.msg
did -a asb 66 %asb.ctcpkb.mins
did -a asb 67 %asb.ctcpkb.mask
did -a asb 69 %asb.spamchanskb.msg
did -a asb 71 %asb.spamchanskb.mins
did -a asb 72 %asb.spamchanskb.mask
did -a asb 79 $readini(antispambot.mrc, asbhelp, n0) $+ $readini(antispambot.mrc, asbhelp, n1)
did -a asb 79 $readini(antispambot.mrc, asbhelp, n2)
did -a asb 79 $readini(antispambot.mrc, asbhelp, n3) $+ $readini(antispambot.mrc, asbhelp, n4)
did -a asb 79 $readini(antispambot.mrc, asbhelp, n5) $+ $readini(antispambot.mrc, asbhelp, n6)
did -a asb 79 $readini(antispambot.mrc, asbhelp, n7) $+ $readini(antispambot.mrc, asbhelp, n8)
did -a asb 79 $readini(antispambot.mrc, asbhelp, n9)
did -a asb 79 $readini(antispambot.mrc, asbhelp, n10)
did -a asb 79 $readini(antispambot.mrc, asbhelp, n11) $+ $readini(antispambot.mrc, asbhelp, n12)
did -a asb 106 %asb.badchans.n
if (%asb.repme == 1) { did -c asb 35 }
if (%asb.repspamto == 1) { did -c asb 36 }
if (%asb.repdccto == 1) { did -c asb 38 }
if (%asb.dcckb == 1) { did -c asb 44 }
if (%asb.spamkb == 1) { did -c asb 48 }
if (%asb.namekb == 1) { did -c asb 52 }
if (%asb.ctcpkb == 1) { did -c asb 64 }
if (%asb.spamchanskb == 1) { did -c asb 68 }
if (%asb.logspam == 1) { did -c asb 96 }
if (%asb.logdcc == 1) { did -c asb 97 }
if (%asb.autohi == 1) { did -c asb 105 }
if (%asb.selserv == 0 ) { did -c asb 28 }
else { did -c asb 29 }
if (%asb.state == 1 ) { did -c asb 83 | did -a asb 83 ON | asb.echostatus }
else { did -a asb 84 Disconnected }
asb.load.chans
asb.load.spamwords
asb.load.names
asb.load.immune
asb.load.badchans
}
on *:dialog:asb:sclick:*: {
if ($did == 83) {
if ($did(83).state == 1) { set %asb.state 1 | did -ra asb 83 ON }
else { set %asb.state 0 | did -ra asb 83 OFF | did -ra asb 84 Disconnected }
if (%asb.state == 1) { asb.start }
else { asb.quit }
}
if ($did == 28) { set %asb.selserv 0 }
if ($did == 29) { set %asb.selserv 1 }
if ($did == 35) {
if ($did(35).state == 1) { set %asb.repme 1 }
else { set %asb.repme 0 }
}
if ($did == 36) {
if ($did(36).state == 1) { set %asb.repspamto 1 }
else { set %asb.repspamto 0 }
}
if ($did == 38) {
if ($did(38).state == 1) { set %asb.repdccto 1 }
else { set %asb.repdccto 0 }
}
if ($did == 103) { if ($isfile($scriptdirasb.spamlog.txt)) { run $scriptdirasb.spamlog.txt } }
if ($did == 104) { if ($isfile($mircdirasb.dcclog.txt)) { run $scriptdirasb.dcclog.txt } }
if ($did == 96) {
if ($did(96).state == 1) { set %asb.logspam 1 }
else { set %asb.logspam 0 }
}
if ($did == 97) {
if ($did(97).state == 1) { set %asb.logdcc 1 }
else { set %asb.logdcc 0 }
}

if ($did == 105) {
if ($did(105).state == 1) { set %asb.autohi 1 }
else { set %asb.autohi 0 }
}

if ($did == 89) {
asb.quit
.unset %asb.*
echo -a 4Antispam Bot Kaldırıldı. Yeniden Yüklemek için Bunu Yazınız: /load -rs $script
.unload -rs $script
}
if ($did == 93) {
if ($sock(asb)) {
asb.joinchans
}
}
if ($did == 91) {
if ($sock(asb)) {
asb.partchans
}
}
if ($did == 95) {
if ($sock(asb)) {
.timerstayjoined off
.timerstayparted off
echo -a 4Antispam Bot zamanlayıcı durduruldu
}
}
if ($did == 44) {
if ($did(44).state == 1) { set %asb.dcckb 1 }
else { set %asb.dcckb 0 }
}
if ($did == 48) {
if ($did(48).state == 1) { set %asb.spamkb 1 }
else { set %asb.spamkb 0 }
}
if ($did == 52) {
if ($did(52).state == 1) { set %asb.namekb 1 }
else { set %asb.namekb 0 }
}
if ($did == 64) {
if ($did(64).state == 1) { set %asb.ctcpkb 1 }
else { set %asb.ctcpkb 0 }
}
if ($did == 68) {
if ($did(68).state == 1) { set %asb.spamchanskb 1 }
else { set %asb.spamchanskb 0 }
}
if ($did == 24) {
var %chan = $did(23).text
if (%chan == $null) { halt }
if ($chr(32) isin %chan) { halt }
if ($chr(44) isin %chan) { halt }
if ($left(%chan,1) == $chr(35)) { }
elseif ($left(%chan,1) == $chr(38)) { }
else { var %chan = $chr(35) $+ %chan }
set %asb.chans $addtok(%asb.chans,%chan,44)
asb.load.chans
}
if ($did == 25) {
if ($did(23).sel == $null) { halt }
var %chan = $did(23, $did(23).sel)
set %asb.chans $deltok(%asb.chans,$findtok(%asb.chans,%chan,1,44) ,44)
asb.load.chans
}
if ($did == 55) {
var %word = $did(54).text
if (%word == $null) { halt }
if ($chr(32) isin %word) { halt }
if ($chr(44) isin %word) { halt }
set %asb.spamwords $addtok(%asb.spamwords,%word,44)
asb.load.spamwords
}
if ($did == 56) {
if ($did(54).sel == $null) { halt }
var %word = $did(54, $did(54).sel)
set %asb.spamwords $deltok(%asb.spamwords,$findtok(%asb.spamwords,%wo rd,1,44),44)
asb.load.spamwords
}
if ($did == 59) {
var %word = $did(58).text
if (%word == $null) { halt }
if ($chr(32) isin %word) { halt }
if ($chr(44) isin %word) { halt }
set %asb.names $addtok(%asb.names,%word,44)
asb.load.names
}
if ($did == 60) {
if ($did(58).sel == $null) { halt }
var %word = $did(58, $did(58).sel)
set %asb.names $deltok(%asb.names,$findtok(%asb.names,%word,1,44) ,44)
asb.load.names
}



if ($did == 99) {
var %word = $did(98).text
if (%word == $null) { halt }
if ($chr(32) isin %word) { halt }
if ($chr(44) isin %word) { halt }
set %asb.immune $addtok(%asb.immune,%word,44)
asb.load.immune
}
if ($did == 100) {
if ($did(98).sel == $null) { halt }
var %word = $did(98, $did(98).sel)
set %asb.immune $deltok(%asb.immune,$findtok(%asb.immune,%word,1,4 4),44)
asb.load.immune
}



if ($did == 86) {
if (($did(87).text != $null) && ($chr(32) !isin $did(87).text)) { sockwrite -n asb NICK : $+ $did(87).text }
}
if (($did == 70) || ($did == 78) || ($did == 102)) {
if ($sock(asb)) {
if (($did(74).text != $null) && ($did(77).text != $null) && ($chr(32) !isin $did(74).text)) {
var %l = $did(77).lines
var %n = 1
while (%n <= %l) {
var %asb.txtmsg = %asb.txtmsg $did(77,%n).text
inc %n
}
if ($did == 70) { sockwrite -n asb PRIVMSG $did(74).text : $+ %asb.txtmsg }
elseif ($did == 78) { sockwrite -n asb PRIVMSG $did(74).text : $+ ACTION %asb.txtmsg $+  }
elseif ($did == 102) { sockwrite -n asb NOTICE $did(74).text : $+ %asb.txtmsg }
if (%asb.repme == 1) { window -e @ASB | echo -t @ASB 4YOU » $did(74).text ( $+ %asb.txtmsg $+ 4) }
}
}
}


if ($did == 81) {
var %chan = $did(80).text
if (%chan == $null) { halt }
if ($chr(32) isin %chan) { halt }
if ($chr(44) isin %chan) { halt }
if ($left(%chan,1) == $chr(35)) { }
elseif ($left(%chan,1) == $chr(38)) { }
else { var %chan = $chr(35) $+ %chan }
set %asb.badchans $addtok(%asb.badchans,%chan,32)
asb.load.badchans
}
if ($did == 82) {
if ($did(80).sel == $null) { halt }
var %chan = $did(80, $did(80).sel)
set %asb.badchans $deltok(%asb.badchans,$findtok(%asb.badchans,%chan ,1,32),32)
asb.load.badchans
}


}

on *:dialog:asb:edit:*: {
if ($did == 9) { set %asb.nick1 $did(9).text }
if ($did == 11) { set %asb.pass1 $did(11).text }
if ($did == 14) { set %asb.nick2 $did(14).text }
if ($did == 16) { set %asb.pass2 $did(16).text }
if ($did == 19) { set %asb.ident $did(19).text }
if ($did == 21) { set %asb.name $did(21).text }
if ($did == 30) { set %asb.selserv.spec $did(30).text }
if ($did == 37) { set %asb.repspamto.spec $did(37).text }
if ($did == 39) { set %asb.repdccto.spec $did(39).text }
if ($did == 31) {
if ($did(31).text !isnum && $did(31)) { did -r asb 31 | if (%asb.join) { did -a asb 31 %asb.join } }
else { set %asb.join $did(31).text }
}
if ($did == 33) {
if ($did(33).text !isnum && $did(33)) { did -r asb 33 | if (%asb.part) { did -a asb 33 %asb.part } }
else { set %asb.part $did(33).text }
}
if ($did == 106) {
if ($did(106).text !isnum && $did(106)) { did -r asb 106 | if (%asb.badchans.n) { did -a asb 106 %asb.badchans.n } }
else { set %asb.badchans.n $did(106).text }
}
if ($did == 45) { set %asb.dcckb.msg $did(45).text }
if ($did == 46) { set %asb.dcckb.mins $did(46).text }
if ($did == 47) { set %asb.dcckb.mask $did(47).text }
if ($did == 49) { set %asb.spamkb.msg $did(49).text }
if ($did == 50) { set %asb.spamkb.mins $did(50).text }
if ($did == 51) { set %asb.spamkb.mask $did(51).text }
if ($did == 61) { set %asb.namekb.msg $did(61).text }
if ($did == 62) { set %asb.namekb.mins $did(62).text }
if ($did == 63) { set %asb.namekb.mask $did(63).text }
if ($did == 65) { set %asb.ctcpkb.msg $did(65).text }
if ($did == 66) { set %asb.ctcpkb.mins $did(66).text }
if ($did == 67) { set %asb.ctcpkb.mask $did(67).text }
if ($did == 69) { set %asb.spamchanskb.msg $did(69).text }
if ($did == 71) { set %asb.spamchanskb.mins $did(71).text }
if ($did == 72) { set %asb.spamchanskb.mask $did(72).text }
}

alias -l asb.load.chans {
var %totalchans $numtok(%asb.chans,44)
var %n 1
did -r asb 23
while (%n <= %totalchans) { did -a asb 23 $gettok(%asb.chans,%n,44) | inc %n }
}
alias -l asb.load.spamwords {
var %totalwords $numtok(%asb.spamwords,44)
var %n 1
did -r asb 54
while (%n <= %totalwords) { did -a asb 54 $gettok(%asb.spamwords,%n,44) | inc %n }
}
alias -l asb.load.names {
var %totalwords $numtok(%asb.names,44)
var %n 1
did -r asb 58
while (%n <= %totalwords) { did -a asb 58 $gettok(%asb.names,%n,44) | inc %n }
}
alias -l asb.load.immune {
var %totalwords $numtok(%asb.immune,44)
var %n 1
did -r asb 98
while (%n <= %totalwords) { did -a asb 98 $gettok(%asb.immune,%n,44) | inc %n }
}
alias -l asb.load.badchans {
var %totalbadchans $numtok(%asb.badchans,32)
var %n 1
did -r asb 80
while (%n <= %totalbadchans) { did -a asb 80 $gettok(%asb.badchans,%n,32) | inc %n }
}

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;; sockets and stuff
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;



alias asb.start {
asb.unset.session
set %asb.state 1
echo -a 4 $+ Antispam Bot Bağlanıyor...Lütfen Bekleyiniz
if ($sock(asb)) { sockclose asb }
elseif ($sock(asbident)) { sockclose asbident }
if (%asb.selserv == 0) {
if ($server == $null) { echo -a 4 $+ Servere Bağlanılamado. | asb.quit | halt }
else { if ($portfree(113)) { socklisten asbident 113 } | sockopen asb $server $port }
}
else {
if (%asb.selserv.spec == $null) { echo -a 4 $+ Server Seçilemedi. Lütfen Antispam Diyalogunu kontrol edip Ayarlarınızı yapınız. | asb.quit | halt }
if ($portfree(113)) { socklisten asbident 113 }
sockopen asb %asb.selserv.spec
}
}

on *:sockopen:asb: {
sockwrite -n asb NICK %asb.nick1
sockwrite -n asb USER %asb.ident . . %asb.name
}
on *:socklisten:asbident: {
var %_r = $r(1,500)
sockaccept asbident_ [ $+ [ %_r ] ]
sockclose asbident
}
on *:sockclose:asb: {
asb.quit
}




on *:sockread:asb*: {
sockread %asb.temp.sockread
tokenize 32 %asb.temp.sockread
;echo -a $1-
var %n = $numtok($1-,44)
if (%n == 2 && $1,$3 isnum) {
sockwrite -n $sockname $3 , $1 : USERID : UNIX : %asb.ident
}
if ($1 == PING && $2) { sockwrite -n $sockname PONG $2- }
if ($2 == 376) { sockclose asbident | sockwrite -n asb umode -Eep | set %asb.curnick $3 | set %asb.curserv $right($1,$calc($len($1) - 1)) | set %asb.curport $sock($sockname).port | asb.echostatus | echo -a 4 $+ Antispam Bot Bağlandı | .timer 1 5 asb.joinchans }
if ($2 == 319) {
if ($4 == %asb.curnick) { set %asb.curchans $right($5-,$calc($len($5-) - 1)) | set %asb.curchansn $numtok(%asb.curchans,32) }
else {
unset %asb.spamchans
var %spamchans $right($5-,$calc($len($5-) - 1))
var %n = $numtok(%spamchans,32)
var %c = 1
while (%c <= %n) {
var %cur = $gettok(%spamchans,%c,32)
if (($left(%cur,1) == @) || ($left(%cur,1) == +) || ($left(%cur,1) == -) || ($left(%cur,1) == .)) { var %cur = $right(%cur,$calc($len(%cur) - 1)) }
var %d = %cur %d
inc %c
}
set %asb.spamchans %d
if ($numtok(%asb.spamchans,32) >= %asb.badchans.n) { .timer -o 1 25 sockwrite -n asb PRIVMSG $4 : $+ hi | if (%asb.repme == 1) { .timer -o 1 25 window -e @ASB | .timer -o 1 25 echo -t @ASB 4YOU » $4 ( $+ hi $+ 4) } }
}
}
if ($2 == 318) { asb.echostatus }
if ($2 == 311) { set %asb.checkspammask $4 $+ ! $+ $5 $+ @ $+ $6 | .timer -m 1 500 asb.joinwho $1- }
if ($2 == 433) {
if ($4 == %asb.nick1) { sockwrite -n $sockname NICK %asb.nick2 }
else { sockwrite -n $sockname NICK Guest }
}
if (($gettok(%asb.temp.sockread,2,32) == NOTICE) && ($gettok(%asb.temp.sockread,3,32) == %asb.curnick)) {
;;; HANDLE NICKS
if (*nick*owned*someone* iswm $4-) {
if (%asb.nick1 == $3) { sockwrite -n asb nickserv identify %asb.nick1 %asb.pass1 }
elseif (%asb.nick2 == $3) { sockwrite -n asb nickserv identify %asb.nick2 %asb.pass2 }
}
;;; CHECK NOTICE SPAM
set %asb.checkspam $gettok($right($1,$calc($len($1) - 1)),1,33) $right($4-,$calc($len($4-) - 1)) | set %asb.checkspammask $right($1,$calc($len($1) - 1)) | set %asb.nmsg n | asb.checkspam
}
if (($2 == PRIVMSG) && ($3 == %asb.curnick) && (DCC SEND !isin $4-)) { set %asb.checkspam $gettok($right($1,$calc($len($1) - 1)),1,33) $right($4-,$calc($len($4-) - 1)) | set %asb.checkspammask $right($1,$calc($len($1) - 1)) | set %asb.nmsg msg | asb.checkspam }
if (($2 == NICK) && ($gettok($right($1,$calc($len($1) - 1)),1,33) == %asb.curnick)) { set %asb.curnick $right($3,$calc($len($3) - 1)) | asb.echostatus }
if (($2 == PART) && ($gettok($right($1,$calc($len($1) - 1)),1,33) == %asb.curnick)) { dec %asb.curchansn | set %asb.curchans $deltok(%asb.curchans,$findtok(%asb.curchans,$3,1, 44),44) | asb.echostatus }
if ($2 == JOIN) {
if ($gettok($right($1,$calc($len($1) - 1)),1,33) == %asb.curnick) { inc %asb.curchansn | set %asb.curchans $addtok(%asb.curchans,$right($3,$calc($len($3) - 1)),44) | asb.echostatus }
elseif ((%asb.namekb == 1) || (%asb.spamchanskb == 1) || (%asb.autohi == 1)) { if (%asb.whois != 1) { sockwrite -n asb whois $gettok($right($1,$calc($len($1) - 1)),1,33) | set %asb.whois 1 | .timerasbwhois -o 1 3 asb.check.whoisflood } }
}
if (($2 == KICK) && ($4 == %asb.curnick)) { dec %asb.curchansn | set %asb.curchans $deltok(%asb.curchans,$findtok(%asb.curchans,$3,1, 44),44) | asb.echostatus }
}
alias asb.quit {
sockclose asb
sockclose asbident
echo -a 4 $+ Antispam Bot Serverden çıktı
if ($dialog(asb)) {
did -u asb 83
did -ra asb 83 OFF
did -ra asb 84 Disconnected
}
asb.unset.session
}
alias asb.quit {
sockclose asb
sockclose asbident
echo -a 4 $+ Antispam Bot Serverden çıktı
if ($dialog(asb)) {
did -u asb 83
did -ra asb 83 OFF
did -ra asb 84 Disconnected
}
asb.unset.session
}

alias asb.status {
;; use /asb.status -a to echo it to the active window (without the dialog)
if ($sock(asb)) {
if (%asb.curserv != $null) {
sockwrite -n asb whois %asb.curnick
if ($1 == -a) { set %asb.echostatus 1 }
}
}
else {
if ($1 == -a) { set %asb.echostatus 1 }
asb.echostatus
}
}
alias asb.echostatus {
if (%asb.curchansn == $null) { set %asb.curchansn 0 }
set %asb.status %asb.curserv ]|[ %asb.curnick ]|[ %asb.curchansn Kanalda
if (%asb.curserv != $null) { if ($dialog(asb)) { did -ra asb 84 %asb.status } }
if (%asb.curchansn > 0) { var %asb.status = %asb.status - %asb.curchans }
if (%asb.echostatus == 1) {
if (%asb.state == 1) { echo -a 4 $+ %asb.status }
else { echo -a 4 $+ Bağlantı Kesik Durumda }
set %asb.echostatus 0
}
}
on *:START: {
asb.unset.session
}
alias asb.joinwho {
;;;;; BAD NAMES
if (%asb.nameskb == 0) { goto badchans }
var %n = 1
var %totalwords $numtok(%asb.names,44)
while (%n <= %totalwords) {
if ($gettok(%asb.names,%n,44) iswm $right($strip($8-,burc),$calc($len($strip($8-,burc)) - 1))) {
if (%asb.repme == 1) { window -e @ASB | echo -t @ASB 4BAD NAME - $4 ( $+ $gettok(%asb.names,%n,44) 4» $right($strip($8-,burc),$calc($len($strip($8-,burc)) - 1)) $+ 4) }
var %ni = 1
var %t = $numtok(%asb.immune,44)
while (%ni <= %t) {
if ($gettok(%asb.immune,%ni,44) iswm %asb.checkspammask) { badchans }
inc %ni
}
var %ct = $chan(0)
var %cn = 1
while (%cn <= %ct) {
;;; IF THEY ALREADY LEFT, THIS WILL BAN THEM ... BUT ONLY IF THE BOT IS IN ONE CHANNEL (FOR ACCURACY)
;;; if (($numtok(%asb.curchans,44) == 1) && ($me isop $gettok(%asb.curchans,1,44)) && ($4 !ison $gettok(%asb.curchans,1,44))) { ban -u $+ $calc(%asb.namekb.mins * 60) $gettok(%asb.curchans,1,44) %asb.checkspammask %asb.namekb.mask | goto badchans }
;;; THIS WILL BAN AND KICK THEM FROM ALL CHANS YOU ARE OP IN AND THEY ARE IN TOO
if (($4 ison $chan(%cn)) && ($me isop $chan(%cn))) {
ban -u $+ $calc(%asb.namekb.mins * 60) $chan(%cn) $4 %asb.namekb.mask
kick $chan(%cn) $4 %asb.namekb.msg
}
inc %cn
}
}
inc %n
}
;;;; BAD CHANNELS
:badchans
if (%asb.spamchanskb == 0) { goto end }
if ($asb.chancompare(%asb.spamchans,%asb.badchans) == $true) {
if (%asb.repme == 1) { window -e @ASB | echo -t @ASB 4BAD CHAN - $4 ( $+ %asb.temp.badchan $+ 4) }
var %ni = 1
var %t = $numtok(%asb.immune,44)
while (%ni <= %t) {
if ($gettok(%asb.immune,%ni,44) iswm %asb.checkspammask) { goto end }
inc %ni
}
var %ct = $chan(0)
var %cn = 1
while (%cn <= %ct) {
;;; IF THEY ALREADY LEFT, THIS WILL BAN THEM ... BUT ONLY IF THE BOT IS IN ONE CHANNEL (FOR ACCURACY)
;;; if (($numtok(%asb.curchans,44) == 1) && ($me isop $gettok(%asb.curchans,1,44)) && ($4 !ison $gettok(%asb.curchans,1,44))) { ban -u $+ $calc(%asb.spamchanskb.mins * 60) $gettok(%asb.curchans,1,44) %asb.checkspammask %asb.spamchanskb.mask | goto end }
;;; THIS WILL BAN AND KICK THEM FROM ALL CHANS YOU ARE OP IN AND THEY ARE IN TOO
if (($4 ison $chan(%cn)) && ($me isop $chan(%cn))) {
ban -u $+ $calc(%asb.spamchanskb.mins * 60) $chan(%cn) $4 %asb.spamchanskb.mask
kick $chan(%cn) $4 %asb.spamchanskb.msg
}
inc %cn
}
}
:end
unset %asb.temp.badchan
}

; example: $asb.chancompare(%theirchans,%badchans)
; returns $true if one of the tokens in the first list is in the second list
alias asb.chancompare {
var %n = 1
var %t = $numtok(%asb.spamchans,32)
while (%n <= %t) {
if ($istok($2,$gettok(%asb.spamchans,%n,32),32)) { set %asb.temp.badchan $gettok(%asb.spamchans,%n,32) | return $true }
inc %n
}
return $false
}


alias asb.check.flood {
dec %asb.flood
if (%asb.flood < 0) { .timerasbflooddec off | set %asb.flood 0 }
}

alias asb.check.whoisflood {
if (%asb.whois == 1) { .timerasbwhois off | set %asb.whois 0 }
}

alias asb.checkspam {
tokenize 32 %asb.checkspam
inc %asb.flood
.timerasbflooddec -o 0 5 asb.check.flood

if (%asb.flood >= 5) { if (%asb.repme == 1) { window -e @ASB | echo -t @ASB 4SILENCE - $1 ( $+ $mask(%asb.checkspammask,4) $+ 4) - 60 Secs } | sockwrite -n asb SILENCE $mask(%asb.checkspammask,4) | .timerasbflood -o 1 60 sockwrite -n asb SILENCE - $+ $mask(%asb.checkspammask,4) }

if ((nickserv isin $1) || (chanserv isin $1) || (memoserv isin $1)) || (%asb.curserv == $1) { halt }
if ( isin $2) {
if (ACTION == $2) { goto actionspam }
else {
if (%asb.repme == 1) { window -e @ASB | echo -t @ASB 4CTCP - $1 ( $+ $left($right($2-,$calc($len($2-) - 1)),$calc($len($right($2-,$calc($len($2-) - 1))) - 1)) $+ 4) }
var %n = 1
var %t = $numtok(%asb.immune,44)
while (%n <= %t) {
if ($gettok(%asb.immune,%n,44) iswm %asb.checkspammask) { goto end }
inc %n
}
var %ct = $chan($me)
var %cn = 1
while (%cn <= %ct) {
if (($1 ison $chan(%cn)) && ($me isop $chan(%cn)) && (%asb.ctcpkb == 1)) {
ban -u $+ $calc(%asb.ctcpkb.mins * 60) $chan(%cn) $1 %asb.ctcpkb.mask
kick $chan(%cn) $1 %asb.ctcpkb.msg
}
inc %cn
}
}
goto afteractionspam
:actionspam
if (%asb.repme == 1) { window -e @ASB | echo -t @ASB 4ACTION - $1 ( $+ $left($3-,$calc($len($3-) - 1)) $+ 4) }
var %n = 1
var %t = $numtok(%asb.immune,44)
while (%n <= %t) {
if ($gettok(%asb.immune,%n,44) iswm %asb.checkspammask) { goto end }
inc %n
}
$asb.checkspamwords($1,$2-)
:afteractionspam
}
elseif (($2 == DCC) && ($3 == Send)) {
if (%asb.repme == 1) { window -e @ASB | echo -t @ASB 4DCC SEND - $1 ( $+ $4 $+ 4) }
var %n = 1
var %t = $numtok(%asb.immune,44)
while (%n <= %t) {
if ($gettok(%asb.immune,%n,44) iswm %asb.checkspammask) { goto end }
inc %n
}
if ((%asb.repdccto == 1) && (%asb.repdccto.spec != $null)) { sockwrite -n asb privmsg %asb.repdccto.spec $1 $4 }
if (%asb.logspam == 1) { write $scriptdirasb.dcclog.txt TIME: $date - $time | write $scriptdirasb.dcclog.txt SENDER: %asb.checkspammask | write $scriptdirasb.dcclog.txt AD: $gettok(%asb.checkspam,2-,32) | write -i $scriptdirasb.dcclog.txt | write $scriptdirasb.dcclog.txt 7=============================================== =============== | write -i $scriptdirasb.dcclog.txt }

var %ct = $chan($me)
var %cn = 1
while (%cn <= %ct) {
if (($1 ison $chan(%cn)) && ($me isop $chan(%cn)) && (%asb.dcckb == 1)) {
ban -u $+ $calc(%asb.dcckb.mins * 60) $chan(%cn) $1 %asb.dcckb.mask
kick $chan(%cn) $1 %asb.dcckb.msg
}
inc %cn
}
}

elseif (%asb.nmsg == msg) {
if (%asb.repme == 1) { window -e @ASB | echo -t @ASB 4MSG - $1 ( $+ $2- $+ 4) }
var %n = 1
var %t = $numtok(%asb.immune,44)
while (%n <= %t) {
if ($gettok(%asb.immune,%n,44) iswm %asb.checkspammask) { goto end }
inc %n
}
$asb.checkspamwords($1,$2-)
}
elseif (%asb.nmsg == n) {
if (%asb.repme == 1) { window -e @ASB | echo -t @ASB 4NOTICE - $1 ( $+ $2- $+ 4) }
var %n = 1
var %t = $numtok(%asb.immune,44)
while (%n <= %t) {
if ($gettok(%asb.immune,%n,44) iswm %asb.checkspammask) { goto end }
inc %n
}
$asb.checkspamwords($1,$2-)
}
:end
}

alias asb.checkspamwords {
var %botchans = $numtok(%asb.chans,44)
var %bc = 1
while (%bc <= %botchans) {
if ($gettok(%asb.chans,%bc,44) isin $2) { goto end }
inc %bc
}
var %n = 1
var %totalwords $numtok(%asb.spamwords,44)
while (%n <= %totalwords) {
if ($gettok(%asb.spamwords,%n,44) iswm $2) {
if ((%asb.repspamto == 1) && (%asb.repspamto.spec != $null)) { sockwrite -n asb privmsg %asb.repspamto.spec $1- }
if (%asb.logspam == 1) { write $scriptdirasb.spamlog.txt TIME: $date - $time | write $scriptdirasb.spamlog.txt SPAMMER: %asb.checkspammask | write $scriptdirasb.spamlog.txt AD: $gettok(%asb.checkspam,2-,32) | write -i $scriptdirasb.spamlog.txt | write $scriptdirasb.spamlog.txt 7=============================================== =============== | write -i $scriptdirasb.spamlog.txt }
var %ct = $chan(0)
var %cn = 1
while (%cn <= %ct) {
if (($numtok(%asb.curchans,44) == 1) && ($me isop $gettok(%asb.curchans,1,44)) && ($1 !ison $gettok(%asb.curchans,1,44))) { set %asb.didkb 1 | ban -u $+ $calc(%asb.spamkb.mins * 60) $gettok(%asb.curchans,1,44) %asb.checkspammask %asb.spamkb.mask | goto end }
if (($1 ison $chan(%cn)) && ($me isop $chan(%cn)) && (%asb.spamkb == 1)) {
ban -u $+ $calc(%asb.spamkb.mins * 60) $chan(%cn) $1 %asb.spamkb.mask
kick $chan(%cn) $1 %asb.spamkb.msg
set %asb.didkb 1
}
inc %cn
}
}
if (%asb.didkb == 1) { goto end }
inc %n
}
:end
set %asb.didkb 0
}



alias asb.joinchans {
var %n = $numtok(%asb.chans,44)
var %c = 1
if (%n > 0) {
while (%c <= %n) {
if (%asb.curnick !ison $gettok(%asb.chans,%c,44)) {
set %asb.flood 0 | sockwrite -n asb join $gettok(%asb.chans,%c,44)
}
inc %c
}
}
set %asb.jp 0
set %asb.flood 0
.timerasbstayjoined -o 1 $calc(%asb.join * 60) asb.partchans
}
alias asb.partchans {
var %n = $numtok(%asb.curchans,44)
var %c = 1
if (%n > 0) {
while (%c <= %n) {
var %cur = $gettok(%asb.curchans,%c,44)
if (($left(%cur,1) == @) || ($left(%cur,1) == +) || ($left(%cur,1) == -) || ($left(%cur,1) == .)) { var %cur = $right(%cur,$calc($len(%cur) - 1)) }
set %asb.flood 0 | sockwrite -n asb part %cur
inc %c
}
}
set %asb.jp 1
set %asb.flood 0
.timerasbstayparted -o 1 $calc(%asb.part * 60) asb.joinchans
}
alias asb.unset.session {
set %asb.state 0
unset %asb.curserv
unset %asb.curport
unset %asb.curchansn
unset %asb.curchans
unset %asb.curnick
unset %asb.temp*
unset %asb.status
unset %asb.nmsg
unset %asb.checkspam*
unset %asb.spamchans
set %asb.echostatus 0
.timerasbstayjoined off
.timerasbstayparted off
.timerasbwhois off
.timerasbflood* off
set %asb.flood 0
set %asb.whois 0

 
Alıntı ile Cevapla

Cevapla

Etiketler
giristeki, girişteki, mirc, mirc download, mirc indir, modunun, nasil, nasıl, yapariz, yaparız


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 
Seçenekler
Stil

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
Bedava Seo Analizi nasıl yaparız? Kungiman IF Ekstra 0 12 Ekim 2012 09:49
ssh girişteki yazı (welcome) nerden değişir aspawa GNU, Linux ve UNIX 3 22 Eylül 2007 10:24
kanal adı yanıp sönme, olayını manuel olarak nasıl yaparız Sw33t mIRC Scripting Sorunları 1 15 Ekim 2006 20:52