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/)
-   -   socket botu konuşturma (https://www.ircforumlari.net/mirc-scripting-sorunlari/392081-socket-botu-konusturma.html)

RegSubex 01 Mayıs 2011 15:29

socket botu konuşturma
 
s.a arkadaşlar


Kod:


alias _bnick return $read Nick.txt
alias _server return
irc.sunucu.net
alias _identd return ChatWeb
alias _pass return
 
alias _port return 6667
alias _username return Muhabbet
alias
_usermsg return .
;-
alias partt if ($sock(_bot)) sockwrite -n $v1 part
$1
alias çıkış $iif($sock(_bot),sockclose $v1)
alias _ch if
($istok(#sohbet #muhabbet,$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,#muhabbet
  if (%_us == %_bn
&& $2 = join && $_ch(%_ch)) { %:- part %_ch }
  ;if ($2
= join && !$_ch(%_ch)) { %:- privmsg %_us $_usermsg }
}


bu bota kanalda biri s.a dediğinde otomatik a.s nasıl dedirtiriz arkadaşlar

birde çıkış partt konuş gibi komutlarımı geç uyguluyor 1 veya 2 dakika sürüyor nedendir sizce

Difuzyon 02 Mayıs 2011 18:16

Cevap: socket botu konuşturma
 
;Eğer $2 privmsg ise ve $3 bir kanal ise ve $4- ten sonrasında s.a geçiyorsa { sockbot $3 kanalına "A'slm" mesajını göndersin }
if $2 == privmsg && $remove($3,:) ischan && s.a isin $4- { sockwrite -n $sockname privmsg $3 A'slm }

RegSubex 02 Mayıs 2011 21:28

Cevap: socket botu konuşturma
 
difizyun tşkler çalışıyor anlamadığım bir nokta daha var

[21:08:13] s.a yazdım
[21:11:17] yanıt verdi neden bukadar geç cvplıyor sence

artı tek kanaldaydım user sayısıda cok azdı

----------

ilave olarak butun özeline s.a yazılırsa a.s nasıl dedirtiriz şimdiden tşkler

Difuzyon 02 Mayıs 2011 22:43

Cevap: socket botu konuşturma
 
Bunun birden çok nedeni olabilir.
Göze batan en belirgin sebep,kodun dizilim sıralaması:

Alıntı:

alias partt if ($sock(_bot)) sockwrite -n $v1 part
$1
alias çıkış $iif($sock(_bot),sockclose $v1)
alias _ch if
................
Socket botu sıfırdan kurgulamak senin düzeyindeki biri için çok zor olmamalı.
mIRC Scripting Dersleri bölümünde 2.sayfada el33t'in bu konuda bir anlatımı mevcut,oldukça açıklayıcı.
mIRC Scripting Görüntülü Dersler bölümünde SeRDaR406'ının eklediği görsel bir anlatımda mevcut,üstelik konu çok yeni.

RegSubex 03 Mayıs 2011 20:51

Cevap: socket botu konuşturma
 
Kod:


    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,58), %m = $right($4-,-1), %k =
$3
 
;;;;;;;;;;;;;;;;;;;;;;;;kanalda;;;;;;;;;;;;;;;;;;
 
if $2 == privmsg && $remove($3,:) ischan && s.a isin $4- {
.timer 1 $rand(1,10) sockwrite -n $sockname privmsg $3
$gettok($gettok($1-,1,33),1,58) $read bot\zzzzz.txt
}
      if $2 == privmsg && $remove($3,:)
ischan && slm isin $4- { .timer 1 $rand(1,10) sockwrite -n $sockname
privmsg $3 $gettok($gettok($1-,1,33),1,58) $read bot\zzzzz.txt
}
      if $2 == privmsg && $remove($3,:) ischan && selam isin $4- { .timer 1 $rand(1,10) sockwrite -n $sockname privmsg $3 $gettok($gettok($1-,1,33),1,58) $read bot\zzzzz.txt }
      if $2 == privmsg && $remove($3,:)
ischan && nbr isin $4- { .timer 1 $rand(1,10) sockwrite -n $sockname
privmsg $3 $gettok($gettok($1-,1,33),1,58) $read bot\bot\nbr.txt
}
      if $2 == privmsg && $remove($3,:)
ischan && sezer isin $4- { .timer 1 $rand(1,10) sockwrite -n $sockname
privmsg $3 $gettok($gettok($1-,1,33),1,58) $read bot\bot\YaPraK.txt
}
      if $2 == privmsg && $remove($3,:)
ischan && a.s isin $4- { .timer 1 $rand(1,10) sockwrite -n $sockname
privmsg $3 $gettok($gettok($1-,1,33),1,58) $read bot\zxz2.txt
}
      if $2 == privmsg && $remove($3,:)
ischan && aslm isin $4- { .timer 1 $rand(1,10) sockwrite -n $sockname
privmsg $3 $gettok($gettok($1-,1,33),1,58) $read bot\zxz2.txt
}
      if $2 == privmsg && $remove($3,:)
ischan && nasılsın isin $4- { .timer 1 $rand(1,10) sockwrite -n
$sockname privmsg $3 $gettok($gettok($1-,1,33),1,58) $read
bot\bot\nasılsınız.txt }
      if $2 == privmsg
&& $remove($3,:) ischan && bot isin $4- { .timer 1 $rand(1,10)
sockwrite -n $sockname privmsg $3 $gettok($gettok($1-,1,33),1,58) $read
bot\bot\bot.txt }
 
;;;;;;;;;;;;;;;;;;;;;;;;özelde;;;;;;;;;;;;;;;;;;
 
if $2 == privmsg && $remove($3,:) == sezer && bot isin $4- {
.timer 1 $rand(1,2) sockwrite -n $sockname privmsg
$gettok($gettok($1-,1,33),1,58) $read bot\bot\bot.txt
}
      if $2 == privmsg && $remove($3,:) ==
sezer && s.a isin $4- { .timer 1 $rand(1,10) sockwrite -n $sockname
privmsg $3 $gettok($gettok($1-,1,33),1,58) $read bot\zzzzz.txt
}
      if $2 == privmsg && $remove($3,:) ==
sezer && slm isin $4- { .timer 1 $rand(1,10) sockwrite -n $sockname
privmsg $3 $gettok($gettok($1-,1,33),1,58) $read bot\zzzzz.txt
}
      if $2 == privmsg && $remove($3,:) ==
sezer && selam isin $4- { .timer 1 $rand(1,10) sockwrite -n $sockname
privmsg $3 $gettok($gettok($1-,1,33),1,58) $read bot\zzzzz.txt
}
      if $2 == privmsg && $remove($3,:) ==
sezer && nbr isin $4- { .timer 1 $rand(1,10) sockwrite -n $sockname
privmsg $3 $gettok($gettok($1-,1,33),1,58) $read bot\bot\nbr.txt
}
      if $2 == privmsg && $remove($3,:) ==
sezer && sezer isin $4- { .timer 1 $rand(1,10) sockwrite -n $sockname
privmsg $3 $gettok($gettok($1-,1,33),1,58) $read bot\bot\YaPraK.txt
}
      if $2 == privmsg && $remove($3,:) ==
sezer && a.s isin $4- { .timer 1 $rand(1,10) sockwrite -n $sockname
privmsg $3 $gettok($gettok($1-,1,33),1,58) $read bot\zxz2.txt
}
      if $2 == privmsg && $remove($3,:) ==
sezer && aslm isin $4- { .timer 1 $rand(1,10) sockwrite -n $sockname
privmsg $3 $gettok($gettok($1-,1,33),1,58) $read bot\zxz2.txt
}
      if $2 == privmsg && $remove($3,:) ==
sezer && nasılsın isin $4- { .timer 1 $rand(1,10) sockwrite -n $sockname
privmsg $3 $gettok($gettok($1-,1,33),1,58) $read bot\bot\nasılsınız.txt
}
    }

socket botu konuşturma kodu belki birinin işine yarat küfür koruma olarakta değiştirilip kullanıla bilir bot nick sezer dir. kodlamaya göre

Difuzyon 03 Mayıs 2011 21:15

Cevap: socket botu konuşturma
 
Kod içindeki klasörlerin\belgelerin içeriğinin ne şekilde olacağını da üyelere tarif etmelisin yoksa bu haliyle eklendiğinde hata mesajı verecektir.

RegSubex 03 Mayıs 2011 21:31

Cevap: socket botu konuşturma
 
aklıma geldi difizyun okadar ayrıntıyı bilmeyenin işine yarıyacağını sanmadığım için gerek duymadım :)

RegSubex 08 Mayıs 2011 14:40

Cevap: socket botu konuşturma
 
Kod:

if $2 == privmsg && $remove($remove($3,:),#oyun) && slm isin $4-
{ .timer 1 $rand(1,10) sockwrite -n $sockname privmsg $3 
$gettok($gettok($1-,1,33),1,58) $read bot/slm.txt 
}
      if $2 == privmsg &&
$remove($remove($3,:),#oyun) && nbr isin $4- { .timer 1 $rand(1,10)
sockwrite -n $sockname privmsg $3  $gettok($gettok($1-,1,33),1,58) $read
bot/nbr.txt  }

arkadaşlar socket bilgisi olanlardan ricam botum kanalda aynı satırda gecen kelimelere ayrı ayrı cvp vermesi sıkıntı yaratıyor

slm nbr dendiğinde bor ıkısınede ayrı ayrı satırlarda cvp veriyor bu sorunu isin yerine iswm kullanarak denedim pek bişey elde edemedim

1: && slm isin $4- bu satırı && slm naber isin $4- gibi ekleyınce okuta bilirmiyiz bota && slm naber isin $4- bu şekıldeki kodları okumuyor

2: bota kayıtlı olan ıkı kelime satırda geciyorsa tek cvp verdire bilirmiyiz

Difuzyon 24 Mayıs 2011 23:35

Cevap: socket botu konuşturma
 
if sorgusunda belirttiğiniz tanımı eşitlemeyen bir belirsizlik var:

$remove($remove($3,:),#oyun)

buna bir karşılık belirtilmediğinden sorgu yanıt alamayacaktır.Şayet burda ki durumu "#oyun kanalı hariç" şeklinde almak istiyorsanız sorgunuz:
$remove($3,:) != #oyun
şeklinde olmalıdır.

RegSubex 25 Mayıs 2011 19:46

Cevap: socket botu konuşturma
 
if $2 == privmsg && $remove($remove($remove($remove($remove($remove($3 ,:),#oxm),#kelime),#test),#yarisma),#oyun) bu şekilde muafm kanalalr eklemiştim

$remove($3,:) != #oyun bu sorguya göre muafkanalalr sıralamasını nasıl yapmam uygun olur butun oyun kanallarını muaf tutmak istiyorun


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

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