.

Posts Tagged “socket bot”

Her zaman sorulan socket botun nasıl yapıldığı konusunu biraz anlattım. Aşağıdaki kodun içinde neyin ne olduğunu gösteriyor. Sizde bu kodu yükledikten sonra @sdebug penceresine gelen bilgiye göre swalias’ı içinde istediğinizi ekleyebilirsiniz. İşte kod ve açıklaması:

Önce mIRC’de yazı yazdığımız yerde yani command line’dan /sockopen bot <server-ip> <port> komutunu yazarak botumuzu istediğimiz servera bağlıyoruz.

;”bot” adlı socketımız açıldığında
on *:sockopen:bot:{
;eğer socketta bir sorun varsa işlemi durduruyoruz
if ($sockerr) { echo $color(info) -st Socket botun bağlantısı kesildi. | return }
;servera bağlanırken botun nicki gönderiliyor
swbot NICK BOTUN-NICKI
;servera bağlanırken botun identdi ve usernamei gönderiliyor
swbot USER IDENTD * * :USERNAME BURAYA
;socket botun nickiyle işaretleniyor. yani $sock(bot).mark değeri botun nicki oluyor
sockmark $sockname BOTUN-NICKI
}
;serverdan socketa bilgi geldiğinde
on *:sockread:bot:{
;eğer socketta bir sorun varsa işlemi durduruyoruz
if ($sockerr) { echo $color(info) -st Socket botun bağlantısı kesildi. | return }
;%; diye bir değişken oluşturup sockettan gelen bilgiyi bu değişkene yüklüyoruz ve $1- değerini doldurması için tokenize kullanıyoruz
var %; | sockread %; | tokenize 32 %;
;eğer @sdebug penceresi yoksa pencere oluşturuluyor ve sockettan gelen bilgi o pencereye gösteriliyor
if !$window(@sdebug) { window -k0 @sdebug } | aline -p @sdebug $timestamp < $1-
;sockettan gelen bilgi ile swalias aliasını çağırıyoruz
swalias $1-
}
;socketta bilgi gönderme aliasımız, eğer bot socketı açıksa o socketa istediğimiz bilgiyi gönderiyoruz
alias swbot { if $sock(bot) { sockwrite -n bot $1- } }

;sockettan gelen bilgiyi okumak için oluşturduğumuz swalias aliası
alias swalias {
;eğer bot socketı açıksa
if $sock(bot) {
;%: değişkenine status penceresine echolaması için bir komut yüklüyoruz
var %: = echo $color(info) -st > Socket bot:
;eğer serverdan socket VERSIONu istenirse mIRC v6.17′nin version cevabını gönderiyoruz.
if :VERSION iswm $4- { swbot NOTICE $gettok($gettok($1,1,33),1,5h : $+ $chr(1) $+ VERSION mIRC v6.17 Khaled Mardam-Bey $+ $chr(1) }
;eğer serverdan botumuzun fingerı istenirse ona cevap gönderiyoruz
if :FINGER iswm $4- { swbot NOTICE $gettok($gettok($1,1,33),1,5h : $+ $chr(1) $+ FINGER Sevket Arslan $+ $chr(1) }
;eğer server bizi pinglerse, bizde onu pongluyoruz, düşmemek için bu gerekli.
if $1 == PING { swbot PONG $2- }
;serverdan gelen bilginin 2. kelimesi 474′se, bu 474. rawı gördü demektir, 474. raw bir kanaldan banlı olduğunu gönderir. statuse 4. değer olan kanaldan banlı olduğunu bildiriyor.
if $2 == 474 { %: $4 kanalında banlı. }
;2. kelime 366 ise yani /names komutunun sonu ki bu genelde bot kanala girdiğinde gelir, girdiğimiz kanal status penceresine gösteriliyor.
if $2 == 366 { %: $4 kanalına girdi. }
;eğer 2. kelime kickse ve 4. kelime botumuzun nickiyse, statuse kanaldan kicklendiğimizi kimin kicklediğini ve neden kicklendiğini gösteriyoruz.
if $2 == KICK && $4 == $sock(bot).mark { %: $3 kanalından %n tarafından kicklendi. $+($chr(40),$right($5-,-1),$chr(41)) | swbot JOIN $3 }
;eğer 2. kelime PRIVMSG ise
if $2 == PRIVMSG {
;%n değişkenine nicki, %m değişkenine gelen mesajı, %k değişkenine kanalı ayarlıyoruz
var %n = $gettok($gettok($1,1,33),1,5h, %m = $right($4-,-1), %k = $3
;eğer nickler belirlediğimiz nickler ise (burda el33t ve el33t2)
if $istok(el33t el33t2,%n,32) {
;eğer gelen mesajın birinci sözcüğü .hop ise eğer 2. kelime varsa 2. kelimenin olduğu kanalda, yoksa yazılan kanalda hop komutu uygulanıyor yani kanaldan çıkıp tekrar giriliyor.
if .hop == $gettok(%m,1,32) { var %< = $iif($gettok(%m,2,32),$v1,%k) | swbot PART %< | swbot JOIN %< }
;bu da .hop gibi fakat bunda botumuz belirtilen kanaldan çıkıyor. eğer 2. sözcük varsa, o kanaldan, yoksa mesajın yazıldığı kanaldan
if .part == $gettok(%m,1,32) { var %< = $iif($gettok(%m,2,32),$v1,%k) | swbot PART %< }
;bu da .part gibi ama bununla istediğimiz kanala sokuyoruz
if .join #* iswm %m { swbot JOIN $gettok(%m,2-,32) }

Comments Yorum Yok »

mirc socket botu olan cause bir çok kişi tarafından sunucusuna kurulup kullanılmaktadır.
cause botu sunucu ve kanal koruma botudur. mirc botu olmakla çok kaliteli bir şekilde sunucunuza yapılan saldırı.
Trojen
Random nick
Flood Saldırı, Mesaj saldırı, küfür saldiri, badnick saldiri, botnet saldiri gibi bir çok konuda sunucunuza bu ve bunlar gibi etkenlerden korumak için yapilmiştir.
yapimcisii hatırlamıyorum fakat yapana burdan teşekkürlerimizi sunuyoruz..

Etiketler: mirc, mirc indir, mirc download, mirc script, mirc chat, cause, mirc bot, socket bot, cause botu indir, ircd bot,

Comments Yorum Yok »

on *:sockopen:back:{
yaz PASS 123456
yaz Nick HEBOT
yaz user HELP * * :4Socket (v1) Help Egitim Bot..2[LiderChat.Net]
}

on *:sockread:back:{
var %1
sockread %1
tokenize 32 %1
echo -s %1
var %nick = $gettok($gettok($1,1,33),1,58)
var %mesaj = $right($4-,-1)
var %kanal = $3
if $1 == PING {
yaz PONG $2-
}
if $2 == PRIVMSG {
if %mesaj == .konular {
.timeregitim.* off
var %help 1
var %saniye 1
while %help <= $lines(egitim/konular.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/konular.txt,%help)
inc %help
inc %saniye 1
}
}
}
if %mesaj == .Services {
.timeregitim.* off
var %help 1
var %saniye 1
while %help <= $lines(egitim/Services.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/Services.txt,%help)
inc %help
inc %saniye 1
}
}
if %mesaj == .client {
.timeregitim.* off
var %help 1
var %saniye 1
while %help <= $lines(egitim/client.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/client.txt,%help)
inc %help
inc %saniye 1
}
}
if %mesaj == .genel {
.timeregitim.* off
var %help 1
var %saniye 1
while %help <= $lines(egitim/genel.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/genel.txt,%help)
inc %help
inc %saniye 1
}
}
if %mesaj == .usercmds {
.timeregitim.* off
var %help 1
var %saniye 1
while %help <= $lines(egitim/usercmds.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/usercmds.txt,%help)
inc %help
inc %saniye 1
}
}
if %mesaj == .helpserv {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/helpserv.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/helpserv.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .timer {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/timer.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/timer.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .ignore {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/ignore.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/ignore.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .ban {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/ban.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/ban.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .who {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/who.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/who.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .quit {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/quit.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/quit.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .chmodef {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/chmodef.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/chmodef.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .userhost {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/userhost.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/userhost.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .list {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/list.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/list.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .umodes {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/umodes.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/umodes.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .version {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/version.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/version.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .levels {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/levels.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/levels.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .wildcard {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/wildcard.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/wildcard.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .exceptions {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/exceptions.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/exceptions.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .akick {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/akick.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/akick.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .chmodes {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/chmodes.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/chmodes.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .csset {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/csset.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/csset.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .nsset {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/nsset.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/nsset.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .msset {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/msset.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/msset.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .chanserv {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/chanserv.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/chanserv.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .Nickserv {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/nickserv.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/nickserv.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .memoserv {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/memoserv.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/memoserv.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .silence {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/silence.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/silence.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .showmirc {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/showmirc.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/showmirc.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .notify {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/notify.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/notify.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .motd {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/motd.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/motd.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .kick {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/kick.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/kick.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .setname {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/setname.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/setname.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .whois {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/whois.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/whois.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .time {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/time.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/time.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .nick {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/nick.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/nick.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .notice {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/notice.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/notice.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .knock {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/knock.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/knock.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .stats {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/stats.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/stats.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .whowas {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/whowas.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/whowas.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .join {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/join.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/join.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .names {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/names.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/names.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .links {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/links.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/links.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .userip {
.timeregitim.* off
var %help 1
var %saniye 3
while %help <= $lines(egitim/userip.txt) {
.timeregitim. $+ %help 1 %saniye yaz privmsg %kanal $read(egitim/userip.txt,%help)
inc %help
inc %saniye 3
}
}
if %mesaj == .dur {
.timers off
yaz privmsg %kanal  %nick  Tarafından egitim akisi durduruldu.
}
if $remove($4,:) == .sil {
if $5 == $null {
yaz privmsg %kanal Nick belirtmediniz %nick
}
else {
if $5 == $5 {
yaz cs access #Helpstaff del $5
yaz cs access #Egitim del $5
}
}
}
if $remove($4,:) == .Ekle {
if $5 == $null {
yaz privmsg %kanal Nick Belirtmediniz %nick
}
else {
if $5 == $5 {
yaz cs access #Helpstaff add $5 1
yaz cs access #Egitim add $5 1
}
}
}
if $2 == Notice {
if %nick == ChanServ {
if *kayitli* iswm $5- || *kanalinin* iswm $5- {
yaz privmsg #Egitmen $4-
}
}
}
if $2 == Join {
if $gettok($3,1,58) == #Helpstaff {
yaz privmsg %nick Merhaba %nick $+ , Eğitim konularını incelemek için #helpstaff kanalında .konular yaziniz.
}
}
}

alias yaz { sockwrite -n back $1- }
alias gir { sockopen back 95.168.171.134 6667 }
alias cik { sockclose back }

Merhaba, Arkadaşlar Socket HEBOT Tamamen benim tarafimdan yazilmiştir.
çaliştirmak çok kolay olup
/gir yazmaniz yeterlidir tabiki ayarlarini yapmaniz gerekmektedir.
/cik botu çikartir.
Botun eğitim vereceğim konulari sizin ayarlamaniz gerekir sitemizde mevcuttur bu konular.
Eğitim Adinda Bir klasör açip text halinde verilcek eğitimleri yükleyiniz..
Yapim: 07.07.2008
Yapan: SouL ( back )
Isim: Mehmet.
Web sitesi: www.mircbul.net

eğitim botu, help bot, helper botu, ircd services bot, mirc, mırç dowload, mirc indir, mirc script, mirc yükle, socket, socket bot, socket help bot,

Saygılarimla..

Comments Yorum Yok »