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

Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 21 Temmuz 2009, 12:36   #41
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: TCL scripting öğrenmek istiyorum




uygulattığın procun yani "proc proxy:check" hemen ilk satırına da o komutu eklersen proc her çalıştığında timerı tekrar aktif edecektir. Bu durumda her 1 dakikada çalışacaktır.

 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları sohbet odaları Benimmekan Mobil Sohbet
Alt 23 Ekim 2009, 02:26   #42
Çevrimdışı
Raw
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: TCL scripting öğrenmek istiyorum




merhaba ;
sunucu noticelerine göre botumuza nasıl işlem yaptırırız . örnek verecek olursak ,
did whois on you , client connecting port , make sajoin ...
unreal ve services bazı komularda oper noticeleri atıyor bu noticelere göre uygulayan ve uygulanan nicklere nasıl işlemler yaptırabiliriz . şimdiden teşekkürler ..

__________________
ĻêģäĻ Düšűņ īĻĹęğàĻ Yàşà! ~
 
Alıntı ile Cevapla

Alt 23 Ekim 2009, 03:43   #43
Çevrimdışı
¿
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: TCL scripting öğrenmek istiyorum




Merhaba Ali,

Orneklerle gostereyim;

Bind olarak raw bind'ini kullanacagiz, sebep gelen oper noticeleri raw olarak algiliyor eggdrop.

Bota gelen raw noticeyi soyle farzedelim;

[03:24] -NOTICE- *** akcvja (TRyiz@88.88.88.88) did a /whois on you.

ve buna soyle bir islem uygulatalim. Bot'a whois cekildiginde #Opers kanalinda bana ali, veli, deli nicki whois cekmistir desin.

KOD;

# Bind'imizi olusturalim

bind raw * notice procismi

# Simdi bind'imize gore bir proc kodlayacagiz.

proc procismi {text} {

# Bot'a gelen raw noticesini algilayip islem yaptirmamiz icin hangi mesajda islem yaptiracaksak o mesajda gecen kisa bir bolumunu if icine yazmamiz gerek.
# Dikkat etmeniz gereken bir yer daha var burda -nocase kullandim, bunun anlami buyuk kucuk harf farketmeksizin islem yapmasi icin.


if {[string match -nocase "*did a /whois on you*" $text]} {

# Simdi nick kismini alacagiz. Raw noticesinde nick 2'nci kelimedir yani ?
# Set olusturup bu setin adina nick verelim. O raw noticesinin icinde 2'nci kelimemiz artik $nick olarak islem yaptiracagiz demek oluyor.


set nick [lindex $text 2]

# Islem yaptirmamizin zamani geldi. :d

putquick "PRIVMSG #Opers :$nick bana whois cekti."

# Islemimizide yaptirdik simdi ise if'i kapatalim.

}

# If'imizi kapattik simdi ise proc'umuzu kapatalim.

}

Evet islemimiz bitti cikan sonuc;

bind raw * notice procismi
proc procismi {text} {
if {[string match -nocase "*did a /whois on you*" $text]} {
set nick [lindex $text 2]
putquick "PRIVMSG #Opers :$nick bana whois cekti."
}
}


 
Alıntı ile Cevapla

Alt 23 Ekim 2009, 23:33   #44
Çevrimdışı
Raw
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: TCL scripting öğrenmek istiyorum




teşekkürler İLKER ;
ben bu kodu sunucumda kullanıyorum . Bir yerden bulup botuma ekledim . Anlatımın için teşekkürler . Gayet açıklayıcı oldu . Bu bağlamda ;


PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
*** Notice -- Client connecting on port 6667nick (keyfaLem@78.***.232.**) [clients


yukarıdaki server notice sinde kullanım ;


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
bind raw * notice procismi proc procismi {text} { if {[string match -nocase "*Client connecting on port*" $text]} { set port [lindex $text 5] set nick [lindex $text 6] putquick "PRIVMSG #Opers :$nick su anda $port undan sunuya giriş yaptı." } }

şeklinde mi olmalı anlattığın mantıka göre ?

__________________
ĻêģäĻ Düšűņ īĻĹęğàĻ Yàşà! ~
 
Alıntı ile Cevapla

Alt 24 Ekim 2009, 01:20   #45
Çevrimdışı
¿
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: TCL scripting öğrenmek istiyorum




Evet aynen oyle.
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.

Bu arada ismim Ilker degil, Dincer.
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.

Bir ornek daha verelim.

[01:12] -NOTICE- *** Notice -- Namesis used SAJOIN to make SenALi join #tryiz_sohbet

bind raw * notice procismi
proc procismi {text} {
if {[string match -nocase "*
used SAJOIN to*" $text]} {
set cekennick [lindex $text 4]
set cekilennick [lindex $text 9]
set cekilenkanal [lindex $text 11]
putquick "PRIVMSG #Opers :$
cekennick nickli oper, $cekilennick nickli kullaniciyi $cekilenkanal kanalina cekmistir. Bilginize."
}
}


Konu ¿ tarafından (24 Ekim 2009 Saat 23:30 ) değiştirilmiştir.
 
Alıntı ile Cevapla

Alt 24 Ekim 2009, 01:42   #46
Çevrimdışı
Raw
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: TCL scripting öğrenmek istiyorum




Alıntı:
Bu arada ismim Ilker degil, Dincer.
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.

pardon Dinçer
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
teşekkürler bu konuyu anladık zannımca .. peki bi eggdrop bota bir nickle aynı ipden bağlı clone nickleri buldurabilirmiyiz ? bunun için hangi yöntem kullanılmalı ?

__________________
ĻêģäĻ Düšűņ īĻĹęğàĻ Yàşà! ~
 
Alıntı ile Cevapla

Alt 24 Ekim 2009, 21:46   #47
Çevrimdışı
¿
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: TCL scripting öğrenmek istiyorum




Ali basit bir clone korumasi yapalim.
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.


set clonelimit "3"

set clonereason "Clone girisi tespit edildi."

bind join - * clones:kick
proc clones:kick {nick uhost hand chan} {
global botnick clonelimit clonereason
set clone 0
foreach tara [chanlist $chan] {
if {[string equal -nocase [scan $uhost %*\[^@\]@%s] [scan [getchanhost $tara $chan] %*\[^@\]@%s]]} {
incr clone
lappend cln $tara
}
}
if {$clone >= $clonelimit} {
putquick "MODE $chan +b $nick"
putquick "KICK $chan $nick $clonereason"
}
}


Ali anlatmaya gerek duymuyorum. Anlayacagindan eminim sadece botun yapacagi islemleri degistirip diledigin gibi kullanabilirsin.
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.


putquick "MODE $chan +b $nick"
putquick "KICK $chan $nick $clonereason"

Banlayip kick'lemek yerine;

putquick "KILL $nick $clonereason" ve/veya putquick "ZLINE $nick 1h $clonereason"

seklinde kullanabilirsin.
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.


Konu ¿ tarafından (24 Ekim 2009 Saat 23:33 ) değiştirilmiştir.
 
Alıntı ile Cevapla

Alt 08 Kasım 2009, 16:53   #48
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: TCL scripting öğrenmek istiyorum




kanalda sadece 3. giren cloneyi atıyor peki bunu 3. clone girdiğinde 3 cloneyi atması için ne kullanmamız lazım , + ircop.xx.com hostlarına bile işlem yapıyor host olayı için muaf eklemek lazım ?

__________________
n/a

Konu insane tarafından (08 Kasım 2009 Saat 17:29 ) değiştirilmiştir.
 
Alıntı ile Cevapla

Alt 08 Kasım 2009, 20:18   #49
Çevrimdışı
¿
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: TCL scripting öğrenmek istiyorum




# Clone limiti.
set clonelimit "3"

# Clone kick sebebi.
set clonereason "Clone girisi tespit edildi."

# Muaf hostlar.
set clonemuafhost1 "ircop.domain.com"
set clonemuafhost2 "coadmin.domain.com"
set clonemuafhost3 "servicesadmin.domain.com"
set clonemuafhost4 "serveradmin.domain.com"
set clonemuafhost5 "netadmin.domain.com"


bind join - * clones:kick
proc clones:kick {nick uhost hand chan} {
global botnick clonelimit clonereason clonemuafhost1 clonemuafhost2 clonemuafhost3 clonemuafhost4 clonemuafhost5
if {$nick == $botnick} { return 0 }
if {[string match -nocase $clonemuafhost1 [scan $uhost %*\[^@\]@%s]] || [string match -nocase $clonemuafhost2 [scan $uhost %*\[^@\]@%s]] || [string match -nocase $clonemuafhost3 [scan $uhost %*\[^@\]@%s]] || [string match -nocase $clonemuafhost4 [scan $uhost %*\[^@\]@%s]] || [string match -nocase $clonemuafhost5 [scan $uhost %*\[^@\]@%s]]} { return 0 }
set clone 0
foreach tara [chanlist $chan] {
if {[string equal -nocase [scan $uhost %*\[^@\]@%s] [scan [getchanhost $tara $chan] %*\[^@\]@%s]]} {
incr clone
lappend cln $tara
}
if {$clone >= $clonelimit} {
foreach all [chanlist $chan] {
if {[string equal -nocase [scan $uhost %*\[^@\]@%s] [scan [getchanhost $all $chan] %*\[^@\]@%s]]} {
putquick "MODE $chan +b *!*[string range $uhost [string first @ $uhost] e]"
putquick "KICK $chan $all $clonereason"
}
}
}
}
}


 
Alıntı ile Cevapla

Alt 18 Kasım 2009, 19:58   #50
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: TCL scripting öğrenmek istiyorum




Namesis Nickli Üyeden Alıntı
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
Evet islemimiz bitti cikan sonuc;

bind raw * notice procismi
proc procismi {text} {
if {[string match -nocase "*did a /whois on you*" $text]} {
set nick [lindex $text 2]
putquick "PRIVMSG #Opers :$nick bana whois cekti."
}
}

Bu Kodu CR Sunucu'da calistirabilirmiyiz peki Namesis?

 
Alıntı ile Cevapla

Cevapla

Etiketler
istiyorum, ogrenmek, scripting, tcl, öğrenmek


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
Scripting laglagorg mIRC Scripting Sorunları 1 17 Aralık 2007 03:50
TCL Scripting'den anlayan? bLackStar Eggdrop, NeoStats, BNC 10 11 Nisan 2006 21:58
mIRC Scripting Öğrenmek İstoyorum... DoStNaMe mIRC Scripting Sorunları 19 27 Şubat 2006 13:50