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

 Kayıt ol  Topluluk
4Beğeni(ler)

Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 18 Eylül 2014, 22:45   #1
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Radyo dinleyen nick tcl ile ilgili.




Merhaba arkadaşlar , elimde TechnicaL arkadaşımızın yazmış olduğu bir tcl var çok sık sürede kanala yansıttığı için bunu !dinleyici komutu yazdığımda yansıtmasını istiyorum belirttiğim kanala.Rica etsem ilgi alanı olan arkadaşlarımız yardımcı olabilir mi?
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
# Radyo dinleyici eklentisi # site:
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
Alinti: SaW # Duzenleyen: aCoustiC #radyo kanali set sc(kanal) "#radyo" #radyo portu set sc(port) "7979" #radyo ip set sc(ip) "174.36.194.119" #radyo sifre set sc(sifre) "adminsifremiz" #Ayar kisimlari bitti, gerisini ellemenize gerek yoktur. bind raw - 315 who_son bind time - "* * * * *" sc:dinleyici proc sc:dinleyici {min hour day month year} { global nicks SayIp http::config -useragent "Mozilla 5.0" set baglan [http::geturl http://$::sc(ip):$::sc(port)/admin.cgi?pass=$::sc(sifre)&mode=viewxml&page=0 -timeout 10000] set httpraw [http::data $baglan] set nicks "" set ips "" set SayIp "0" http::cleanup $baglan if { [regexp "<LISTENERS>(.*?)</LISTENERS>" $httpraw data veri] } { set listeraw $veri bind raw - 352 raw_oku regsub -all "</LISTENER>" $listeraw "</LISTENER>\n" listeraw foreach strListe $listeraw { if { [regexp "<HOSTNAME>(.*?)</HOSTNAME>" $strListe data ipVeri] } { if {[regexp $ipVeri $ips] == "0"} { lappend ips $ipVeri incr SayIp } } } } foreach x $ips { putserv "who +i $x" } } proc raw_oku {from keyword arg} { global nicks set nick [lindex $arg 5] if {[regexp {$nick} $nicks] == "0"} { lappend nicks $nick } } proc who_son {from keyword arg} { global nicks SayIp set SayIp [expr $SayIp - 1] ;#putlog $SayIp if {$SayIp == "0"} { foreach xy [chanlist $::sc(kanal)] { if {[regexp $xy $nicks] == "1"} { if {[isvoice $xy $::sc(kanal)] == "0"} { putserv "sajoin $xy #radyo" putserv "mmmode $::sc(kanal) +v $xy" } } if {[regexp $xy $nicks] == "0"} { if {[isvoice $xy $::sc(kanal)] == "1"} { putserv "mmmode $::sc(kanal) -v $xy" } } } putserv "os raw :operserv PRIVMSG $::sc(kanal) :\02 0,4.::. Radyomuzu Dinleyenler .::.\02 0,1 $nicks" unbind raw - 352 raw_oku } }


 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları reklam ver Benimmekan Mobil Sohbet
Alt 18 Eylül 2014, 23:31   #2
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Radyo dinleyen nick tcl ile ilgili.




Kod:   Kodu kopyalamak için üzerine çift tıklayın!
bind time - "* * * * *" sc:dinleyici

sc:dinleyici prosedürünü dakikada bir çalıştırır/çağırır...

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
bind time - "*2 * * * *" sc:dinleyici

iki dakikada bir

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
bind time - "?5 *" sc:dinleyici

beş dakikada bir

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
bind time - "?0 *" sc:dinleyici

10 dakikada bir çağıracak/çalıştıracaktır.....

yok bu aralıklar dışında dilediğim bir süre aralığında çalışsın,ben seçeyim deniyorsa (dakika cinsinden)

prosedürler dışına bir süre-aralığı ayarı satırı girin.

set sure "25"

ilgili prosedür (bu örnekte sc:dinleyici) içinde hemen proc sc:dinleyici ......
satırının bir altına , set sure "xx" ayarında istenen süre aralığını kontrol edecek bir satırı girin :

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
if ([scan $min %d] + ([scan $hour %d]*60)) % $::sure eq 0} {

(tabi bu koşul satırı sonundaki açık " { " bracket'a karşılık olarak eklendiği prosedür sonunada fazladan bir kapalı " } " bracket eklemeyi de unutmayın*...)

böylelikle set sure ayarından ayarlanabilecek dakika aralığında, şu anki bind satırına hiç dokunmadan, istenen iş yaptırılabilir.


yok oto süre aralığında değil, komutla olsun deniyorsa:

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
bind time - "* * * * *" sc:dinleyici

satırını;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
bind pub - "!dinleyici" sc:dinleyici

ve ,

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
proc sc:dinleyici {min hour day month year} {

satırınıda;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
proc sc:dinleyici {nick uhost hand chan text} {

olarak değişmeniz kafi gelir....

 
Alıntı ile Cevapla

Alt 18 Eylül 2014, 23:46   #3
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Radyo dinleyen nick tcl ile ilgili.




Saywhat herzamanki gibi harikasın , istediğim şekilde anlatımını yapmışsın Emeğine sağlık fakat hiçbir tepki alamadım bottan bu sefer.Rica etsem tekrar kontrol edermisin?birşey daha sormak istiyorum tcl dinleyen bot nicklerinide dahil ediyor , bunu muaf etme şansımız varmıdır peki?

 
Alıntı ile Cevapla

Alt 19 Eylül 2014, 01:56   #4
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Radyo dinleyen nick tcl ile ilgili.




üste ,prosedürlerin dışına muaf nickleri ,birer boşluk bırakarak ekleyin .

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
set muaf "birbot ikibot ucbot"

gibi...

scriptin en sonundaki ;
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
putserv "os raw :operserv PRIVMSG $::sc(kanal) :\02 0,4.::. Radyomuzu Dinleyenler .::.\02 0,1 $nicks" unbind raw - 352 raw_oku } }

satırlarını,

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
foreach foo [split $::muaf " "] { regsub -all -- "$foo" $nicks "" nicks putserv "os raw :operserv PRIVMSG $::sc(kanal) :\02 0,4.::. Radyomuzu Dinleyenler .::.\02 0,1 [join [string trim $nicks] " ,"]" unbind raw - 352 raw_oku } } }

olarak değişip deneyiniz...

yaptığınız değişikliklerden sonraki "tepki vermediğini" söylediğiniz haliyle kodu gösterirseniz,sorunu söyleyebilirim.

yukarıda birden fazla editleme yolu/seçimi vermiştim siz hangi yolu ve nasıl denediğinizi görmem lazım ki sorun varsa görebilirim..

 
Alıntı ile Cevapla

Alt 19 Eylül 2014, 04:47   #5
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Radyo dinleyen nick tcl ile ilgili.




> "proc who_son {from keyword arg} {
> global nicks SayIp
> set SayIp [expr $SayIp - 1]
> ;#putlog $SayIp
> if {$SayIp == "0"} {
> foreach xy [chanlist $::sc..."
> (file "scripts/ek.tcl" line 57)
> invoked from within
> "source scripts/ek.tcl"
> (file "radyo.conf" line 65)

foreach foo [split $::muaf " "] { regsub -all -- "$foo" $nicks "" nicks
bu kodu eklediğim zaman yukarda belirttiğim hatayı alıyorum , kodu eklemeyince sorun ortadan kalkıyor @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] , yardımların için şimdiden teşekkürler.

 
Alıntı ile Cevapla

Alt 19 Eylül 2014, 05:16   #6
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Radyo dinleyen nick tcl ile ilgili.




yukarıda tarif ettiğim değişikliklerin yapılmış haliyle buradan alabilirsiniz -> [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] (kanal komutuyla çalışmasını istediğinizi kabul ederek ...)

bu paste sitesi özel olarak Tcl yazımı/syntax'ını kontrol etmek için kullanılan bir paste adresidir. negalfar Tcl yazım kontrolü yapan bir yazılımı kullanır. script/kodda herhangi bir Tcl hatası olduğunda ,pastenin üstünde hatayı ve yerini işaret eder.

Görüldüğü üzere şu haliyle hiçbir Tcl yazım hatası bulunmamaktadır...
not : eggdrop Tcl == (pure/safe) Tcl değildir !! ... eggdrop'un kendine has tanımlanmış Tcl komutlarıda vardır.Tcl açısından yazım hatası olmasa dahi eggdrop'ta çalışır* demek de doğru değildir.

yukarıdaki gösterdiğiniz hata çıktısı scriptin 57.satırına ,yani edit edilecek olan satırlardan farklı bir yere ve farklı bir prosedüre işaret ediyor ki, bu durum bana Tcl scripti açmak- editlemekte kullandığınız txt editörünün Tcl desteğinin olmadığını düşündürüyor... (umarım windows notepad kullanmıyorsunuzdur bu iş için..)

 
Alıntı ile Cevapla

Alt 19 Eylül 2014, 06:17   #7
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Radyo dinleyen nick tcl ile ilgili.




Teşekkür ederim sevgili @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] , düzenlemiş olduğunuz kodları kullandım ve yüklemede aynı hatayı vermedi,hayır notepad kullanmıyorum fakat şimdide !dinleyici komutunu uyguladığımda her dakikada bir belirlediğim kanala bildirim yapmaya başladı (!dinleyici komutunu uygulamadan herşey yolunda ) ekstradan bot nickleri hala muaf şekilde değil bot nicklerinin arasına ( , ) koymadım.

 
Alıntı ile Cevapla

Alt 19 Eylül 2014, 07:11   #8
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Radyo dinleyen nick tcl ile ilgili.




bota telnet/dcc üzerinden bağlanıp ->
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
.binds time

komutu uygulayın.

bu komut botunuzun hafızasında tuttuğu/halen işlemde olan "bind time" ile çağrılan prosedürlerin listesini verir. ..

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
binds time Command bindings: TYPE FLAGS COMMAND HITS BINDING (TCL) time -|- 00 00 20 * * 0 logger:time-save time -|- 00 * 133 sayac:pub time -|- 01 00 * * * 1 MDS::backup_db time -|- ?0 * * * * 794 ::pixseen::RemoveFlood

gibi olacak çıktısı...

oradan (BINDING başlığı altında, alt alta prosedür isimleri listelenir) "sc:dinleyici" prosedürünüde görüyorsanız ki göreceksiniz. eski kullandığınız bind time kullanan kod halen botunuzun hafızasında saklı. kodun yeni hali .rehash ile yüklenmiş olsada ,eski halini hafızasından silmek için yeterli gelmemiş. hafızanın temizlenmesi için .restart edilmeli....

 
Alıntı ile Cevapla

Alt 19 Eylül 2014, 07:17   #9
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Radyo dinleyen nick tcl ile ilgili.




Teşekkürler ilginiz için @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] restart ile deniyeceğim.birde muaf nickler hala aktif değil , nickler arasına , koymadım bu yüzden olmuş olabilir mi?

Not : Setowner nickiyle Hello yazmadığım için bağlantı sağlayamıyorum şuan tekrar setowner nickiyle hello yazmam için ne yapmam gerekli?mIRC 736 ve diğer Scriptlerde denediğimde aynı hatayı alıyorum malasef.

Acknowledging chat request...
-
Unable to connect
-
DCC session closed

Chat Isteği Kabul Ediliyor...
-
Bağlanılamıyor!
-
DCC Oturumu Kapatıldı


Konu Kombine tarafından (19 Eylül 2014 Saat 08:36 ) değiştirilmiştir.
 
Alıntı ile Cevapla

Alt 19 Eylül 2014, 09:29   #10
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Radyo dinleyen nick tcl ile ilgili.




başka biriyle DCC chat deneyin o denemede de aynı durum oluşuyorsa , PC'nizde olabilecek anti-virüs yada firewall yazılımları, artı NAT ardından bağlanıyorsanız ,DCC / handshake için kullanılan portlar bloke olduğundan dolayı olabilir.

DCC olmadıysa "telnet" seçeneği var. botun .conf dosyasında listen xxxx all satırında xxxx yerine belirtilmiş port aralığını ve set my-ip yada set hostname ayarlarındaki IP yada host kullanılarak ,örnek windows telnet penceresinde o IP/host portu şeklinde bağlanabilirsiniz.
buradaki sözü geçen IP/host botun üzerinde işlediği shell'in IP yada hostu olacaktır. birden fazla IP/hostu var ise o halde botun .conf'unda hangisi kullanılıyorsa set my-ip yada set hostname (1.6.x serisindeki botlar için) 1.8 botlarında set vhost4 yada IPv6 kullanılıyorsa set vhost6 şeklinde olur bu ayar... bu ayarda belirtilmiş olması gerekir...

şurada tanıtımını yaptığım aracıda bu iş için kullanabilirsiniz -> [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]


daha evvel tanıtmamışsanız kendinizi ilk bağlantıda "new" olarak girin login-name sorduğunda sonra sizden yeni bir login name isteyecek ki bu set owner " " ayarında belirttiğiniz rumuz olmalı... (bu önemli bir husustur. -> [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] )

sonra şifre belirlemenizi ve doğrulamasını ister sonra bağlanırsınız. set owner ayarına birden fazla handle / login-name eklenebilir bu illa irc nickinizle eşleşmesi gerekmez.

set owner "bir, iki, uc" gibi birden fazla handle owner olarak girilebilir. şurada ben bunları resimli olarak anlatmıştım -> [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

yukarıda paste linkiyle verdiğim koddaki muaf nicklerde sorun olmuşsa şu şekilde -> [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] de denenebilir. muaf nickleri ayıklamanın birden fazla yolu bulunabilir. sorun benim için şudur ki ,ben bu tür kodları deneyemem kendi botumda nasıl çalıştığını vs ..
denemesi size kalmış birşey...

 
Alıntı ile Cevapla

Cevapla

Etiketler
dinleyen, ile, ilgili, nick, radyo, tcl


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

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
Radyo dinleyen voice-devoice Set mIRC Scripting Hazır Kodlar 16 16 Nisan 2020 21:21
sanoticeden nick ve ident le ilgili Dangerous123 mIRC Scripting Sorunları 10 13 Aralık 2011 19:14
Nick ve FuLLname ile iLgiLi angry1 mIRC Scripting Sorunları 10 18 Ekim 2011 14:32
Radyo Botu, Dinleyen userlere teşekkür etmesini nasıl sağlayabilirim gapex Eggdrop, NeoStats, BNC 4 02 Haziran 2011 22:26
Radyo ile ilgili Brain Unreal IRCd 9 09 Mayıs 2007 23:25