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 Sorunları (https://www.ircforumlari.net/mirc-scripting-sorunlari/)
-   -   Konuşan sockedbot (GünceL) (https://www.ircforumlari.net/mirc-scripting-sorunlari/384086-konusan-sockedbot-guncel.html)

Goemon 23 Şubat 2011 10:26

Konuşan sockedbot (GünceL)
 
arkadaşlar forumda radım böle bir şey bulamadım ondan dolayı bende böle bir konu açtım.



arkadaşlar bana lazım olan sunucuya giren bir socked bot ve onu konuşturma komutu şu şekilde izah edim.

SockedBoT:irc.vsvs.com sunucusuna bağlandı.
SockedBoT:irc.vsvs.com sunucusundan ayrıldı.

socked botu bağlamak için komut: /bagla
sockedbotu çıkartmak için : /exit

arkadaşlar botun sadece iki kanala girmesini istiyorum
#sohbet,gençlik

onun haricinde botu konuşturmak için komut la yapmak istiyorum bunu tabiki inş yardımlarınızla olur, komutuda şöle olcak üstadlar

/konuş botname mesaj
yani
/konuş SockedBoT merhabalar

SockedBoT:Merhabalar

birde kanala userler girdiği zaman sockedbot userlerin özeline şöle bir mesaj göndersin istiyorum

SockedBoT:Sohbetin doyumsuz kanalı #sohbet

bana böle bir socked lazım arkadaşlar inş yardım edersiniz.
emeklerinize herzaman tşk ederim.

L4roXyL 23 Şubat 2011 19:05

Cevap: Konuşan sockedbot (GünceL)
 
Bir daha bu şekilde bir konu açarsan silerim.

Kendin birşeyler yapıp yardım istemelisin, lakin sen direk hiçbirşey ortaya koymadan istek yapmışsın. Bu bölüm iste-yapılsın köşesi değil ilk öncelikle. Sen birşeyler yaparsın veya yapmaya çalışırsın, takıldığın yerde gerekli kişiler sana yardımcı olur.

Mesela socket ile IRC sunucularına nasıl bağlanır? Bunun hakkında bir makale varmı yokmu? -diye araştırdınmı? Ben sana söyleyeyim cevabını; VAR. Ve yine istediğine benzer(socket ile sunucuya bağlanma) hakkında onlarca hazır kod olduğunuda düşünüyorum. Neyse istediğini karşılayacak kısa birşey yazdım.

Botu sunucuya bağlama

Kullanma şekli: /bağla BOTISMI IRC-SUNUCUSU|IP PORT
Örnek: /bağla Security irc.zurna.net 6666

Botun bağlantısını kopartma: /çıkış

Botu konuşturma: /konuş #kanal|nick mesaj
Örnek: /konuş #gençlik mesajın.


Kod:

alias bağla $iif($sock(_bot),sockclose $v1) | sockopen _bot $2 $iif($3,$v1,6667) | var -g %_bname = $1
alias çıkış $iif($sock(_bot),sockclose $v1)
alias _ch if ($istok(#sohbet #gençlik,$1,32)) { return $false } | return $true
alias konuş if ($sock(_bot)) sockwrite -n $v1 privmsg $1 $2-
on *:sockopen:_bot: {
  if ($sockerr) returnex
  var %:- sockwrite -n _bot
  %:- nick %_bname
  %:- user fafi * * :fa fi.
  sockmark _bot %_bname
}
on *:sockread:_bot: {
  if ($sockerr) returnex
  var %:- sockwrite -n _bot,%_bot,%_bn = $sock(_bot).mark
  sockread -n %_bot
  tokenize 32 %_bot
  var %_us = $right($token($1-,1,33),-1),%_ch = $right($3,-1)
  %:- join #sohbet,gençlik
  if ($1 == PING) %:- pong $2-
  if (%_us == %_bn && $2 = join && $_ch(%_ch)) { %:- part %_ch }
  if ($2 = join && !$_ch(%_ch) && %_us != %_bn) { %:- privmsg %_us kanala giren nicklere atılacak olan mesaj. }
}

Mavi olan yere boşluk bırakarak kanallar ekleyebilirsin.
Kırmızı olan yere kanala girecek olan kullanıcının özeline yazılacak mesajı girebilirsin.

-

Kolay gelsin.
L4roXyL - (Hasan AYDENİZ)

Goemon 24 Şubat 2011 09:44

Cevap: Konuşan sockedbot (GünceL)
 
L4roXyL hocam tşk ederim haklısınız.ama ben konuyu açarkende zaten aradığımı bulamadım diyede yazı yazdım üstüne hocam.hocam birde ben yeni yeni uraşıyorum bu işlerle öncelerden meraklı değildim şimdi iyi kötü bişiler yapmaya çalışıyorum ama şuna emin olun hocam ne zaman bir konu açsam muhakkak biri laf vuruyor kendin bişiler yap diye bilsem zaten hocam kendim yapacam.

vermiş olduğunuz koduda denedim hocam çalışmadı ircim mırca kapalı ident olmadan girilmiyor yani hocam acaba ondanmı.

ayrıca Set ScoundReL(Jan) SerdaR406 Difuzyon CesurYürek CipriX ircBastard üstadlarımada tşk ederim onlarında çok yardımını aldım paylaştığı kodları aldım.

L4roXyL 24 Şubat 2011 14:41

Cevap: Konuşan sockedbot (GünceL)
 
İlk öncelikle yeterli araştırma yaptığını zannetmiyorum.
Socket ile IRC sunucusuna bağlanmak hakkında el33t'in yazmış olduğu bir [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] mevcut. Bunu inceledin mi? Büyük ihtimalle hayır. Benim demek istediğim yeterli araştırmayı yapın. Ondan sonra saçma sapanda olsa ortaya birşey koyarak yardım isteyin.

Ek olarak senin isteğin üzere/şekilde verdiğim kod-un çalışmaması için bir sebeb yok(doğru bağlanmayı denediysen eğer)

Goemon 24 Şubat 2011 15:13

Cevap: Konuşan sockedbot (GünceL)
 
hocam irc girişim kapalı ident olmadan giremez Set hocamın yapmış olduğu sockedde de bot sunucuya giriyor ama kanala girmiyor portum 6667 hocam elet in ustanın socked üzerine yazdıklarını gördüm yeniyim hocam kusura bahkmayın işde ondan bende yapamam diyerek yani aradığımı bulamayınca öle yaptım ama inş birgün kolayda olsa bişi yapıp paylaşıcam bu forumda.
bundan sonrada bir konu açarken yanlışda olsa bişiler yapıpda açıçam.

L4roXyL 24 Şubat 2011 16:32

Cevap: Konuşan sockedbot (GünceL)
 
İdent dediğin şifreli giriş mi? IRC sunucularına girmeyeli yıllar oldu. O yüzden unuttum desem yeridir. Benim yazdığım kod sana biraz farklı geldi sanırım. Senin hiçbir bilgin yok sanırım yazdığım kod hakkında. O yüzden üzerinde oynama yaparak istediğini yapamıyorsun(gerekli yerleri değiştiremiyorsun). Ben senin anlayacağın dilden kodu değiştiriyorum;

alias bağla $iif($sock(_bot),sockclose $v1) | sockopen _bot $_server $_port $_pass
;-
alias _bnick return BOTUN_NICKI
alias _server return irc.sunucuadresi.uzantısı
alias _identd return IDENT_ISMI
alias _pass return sunucu-şifresi
alias _port return 6667
alias _username return buraya botun setname-sini gir
alias _usermsg return kanala giren kullanıcılara atılacak olan mesaj.
;-
alias çıkış $iif($sock(_bot),sockclose $v1)
alias _ch if ($istok(#sohbet #gençlik,$1,32)) { return $false } | return $true
alias konuş if ($sock(_bot)) sockwrite -n $v1 privmsg $1 $2-
on *:sockopen:_bot: {
if ($sockerr) returnex
var %:- sockwrite -n _bot
%:- nick $_bnick
%:- user $_identd * * : $+ $_username
sockmark _bot $_bnick
}
on *:sockread:_bot: {
if ($sockerr) returnex
var %:- sockwrite -n _bot,%_bot,%_bn = $sock(_bot).mark
sockread -n %_bot
tokenize 32 %_bot
var %_us = $right($token($1-,1,33),-1),%_ch = $right($3,-1)
if ($1 == PING) %:- pong $2-
;botun gireceği kanallar
%:- join #sohbet,#gençlik
if (%_us == %_bn && $2 = join && $_ch(%_ch)) { %:- part %_ch }
if ($2 = join && !$_ch(%_ch)) { %:- privmsg %_us $_usermsg }
}

Koyu olarak belirttiğim yerleri kendi sunucuna göre ayarladıktan sonra; /bağla yazman yeterli olacaktır. Sanırım gayet açık oldu bu sefer.


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

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