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

7Beğeni(ler)

Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 07 Eylül 2012, 19:17   #1
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
VIP User TCL




Merhaba,

Bu TCL ile, listeye eklediğiniz kullanıcılar kanal girişlerinde otomatik voice (veya başka modlar) alacak, kişiler ayrıca bir mesajla karşılanacaklardır.

Kullanım:

!vipekle Nick
!vip on/off
!vipsil Nick
!vipliste


PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
#VIP olanların host taramasının yapılacağı süre (dakika cinsinden)

set viptime "30"

#VIP olanlara mesaj gönderilsin istiyorsan "1" yap, aksi halde "0" yap


set viphowmsg "1"

#Eğer "1" yapmışsan mesajı buraya yaz.

set vipmsg "Tebrikler, bu kanalda VIP olduğunuz için Voice (+) aldınız :)"

#VIP eklemeye yetkili olanların flagları

set vipwho "Nmn|MN"

############ AYARLAR BURAYA KADAR ##############

bind pub $vipwho !vip vipstatus
bind pub $vipwho 
!vipekle addvip
bind pub $vipwho 
!vipsil remvip
bind pub $vipwho 
!vipliste listvip
bind join 
- * vipscan
setudef flag vip


if {![info exists vips_running]} {
timer $viptime vips
set vips_running 1
}

proc vipstatus {nick host hand chan arg} {
set flag "vip"
set why [lindex [split $arg0]
if {
$why == "" } { puthelp "NOTICE $nick :Kullanım: !vip <on> / <off>"
return 0
}
if {
$why == "on"} {
channel set $chan +$flag
puthelp 
"NOTICE $nick :Kanalda VIP Sistemi aktif hale getirildi: $chan"
return 0
}
if {
$why == "off"} {
channel set $chan -$flag
puthelp 
"NOTICE $nick :VIP Sistemi kapatılan kanal: $chan"
return 0
}
}

proc addvip {nick host hand chan arg} {
set dir "logs/vip($chan).txt"
set vip [join [lindex [split $arg0]]
if {
$vip == ""} { puthelp "NOTICE $nick :Kullanım: !vipekle <nick>"
return 0
}

if {[
file exists $dir] == 0} {
set file [open $dir a]
close $file
}

set file [open $dir a]
puts $file $vip
close $file
puthelp 
"NOTICE $nick :Eklenen VIP - $vip - veritabanına eklendi."
}

proc listvip {nick host hand chan arg} {
set dir "logs/vip($chan).txt"
if {[file exists $dir] == 0} {
set file [open $dir a]
close $file
}
set file [open $dir "r"]
set w [read -nonewline $file]
close $file
set data 
[split $w "\n"]
set i 0
if {$data == ""} { puthelp "NOTICE $nick :Eklenen hiç VIP Yok!"
return 0
}

foreach 
vip $data {
set i [expr $i +1]
lappend vipnumber $i.$vip
}
foreach 
txt [wordwrap [join $vipnumber " "200] {
puthelp "NOTICE $nick :VIP Eklenenler Listesi :"
puthelp "NOTICE $nick :$txt"
}
}

proc remvip {nick host hand chan arg} {
set dir "logs/vip($chan).txt"
set number [join [lindex [split $arg0]]
if {
$number == ""} { puthelp "NOTICE $nick :Kullanım: !vipsil <number> (Listeden Seç)"
return 0
}
if {[
file exists $dir] == 0} {
set file [open $dir a]
close $file
}
set file [open $dir "r"]
set data [read -nonewline $file]
close $file
set lines 
[split $data "\n"]
set i [expr $number 1]
set delete [lreplace $lines $i $i]
set files [open $dir "w"]
puts $files [join $delete "\n"]
close $files
puthelp 
"NOTICE $nick :VIP Listesinden, $number numaralı kişi silindi. Kontol etmek için !vipliste komutunu kullanın."
}

proc vipscan {nick host hand chan} {
global 
vipmsg viphowmsg
set dir 
"logs/vip($chan).txt"
if {[file exists $dir] == 0} {
set file [open $dir a]
close $file
}
set file [open $dir "r"]
set w [read -nonewline $file]
close $file
set data 
[split $w "\n"]
if {
$data == ""} { 
return 
0
}
foreach 
vip $data {
if {[
string match -nocase $nick $vip]} {
if {
$viphowmsg == "1"} {
puthelp "NOTICE $nick :$vipmsg"
}
pushmode $chan +v $vip
}
}
}



proc vips { } {
global 
viptime
foreach chan [channels] {
set dir "logs/vip($chan).txt"
if {[channel get $chan vip]} {
putlog "$chan kanalında VIP taraması yapılıyor.."
set file [open $dir "r"]
set w [read -nonewline $file]
close $file
set data 
[split $w "\n"]
foreach 
vip $data {
if {[
onchan $vip $chan]} {
if {![
isvoice $vip $chan]} {
pushmode $chan +v $vip
}
}
}
}
}
timer $viptime vips
return 1
}

proc wordwrap {str {len 100} {splitChr { }}} { 
   
set out [set cur {}]; set i 0 
   
foreach word [split [set str][unset str$splitChr] { 
     if {[
incr i [string len $word]]>$len} { 
         
lappend out [join $cur $splitChr
         
set cur [list $word
         
set i [string len $word
      } { 
         
lappend cur $word 
      

      
incr i 
   

   
lappend out [join $cur $splitChr




İsterseniz modları kendinize göre değişin, +v yerine +o verdirebilir veya birden fazla mod kullanabilirsiniz. Güle güle kullanın.

 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları reklam ver Benimmekan Mobil Sohbet
Alt 08 Eylül 2012, 14:58   #2
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: VIP User TCL




Merhaba. Kod da ne yazıkkı hatalar mevcut. Bunlar sırasıyla.

1. Vip ekle dediğiniz nick !vipsil nick ile silinmemekte bot herhangi bir işlem yapmamakta.

2. Örnek olarak !vipekle test diye bir nick ekledim, ancak yanlışıkla tekrar test diye ekle dediğimde 2. hatta 3. nick olarak test eklemekte.

[14:57:43] -BoT- VIP Eklenenler Listesi :
[14:57:45] -BoT- 1.test 2.test 3.test

Test nicki zaten ekli diye mesaj almak daha doğru olur.
Aynı isimden 3 tane test olamayacağına göre
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.


Harici olarak sorunsuz çalışmakta 2 sıkıntısı var okadar. Sevgilerimle.


İşe yararmı bilmiyorum ancak bot içinde şunu yazmakta.


<BoT> [14:56:02] Tcl error [remvip]: invalid bareword "test"
<BoT> in expression "test - 1";
<BoT> should be "$test" or "{test}" or "test(...)" or ...
<BoT> [14:56:38] Tcl error [remvip]: invalid bareword "test"
<BoT> in expression "test - 1";
<BoT> should be "$test" or "{test}" or "test(...)" or ...
<BoT> [14:56:41] Tcl error [remvip]: invalid bareword "test"
<BoT> in expression "1._@_test - 1";
<BoT> should be "$test" or "{test}" or "test(...)" or ...
<BoT> [14:56:46] utimer173 (page_check) killed.
<BoT> [14:57:28] Tcl error [remvip]: invalid bareword "test"
<BoT> in expression "test - 1";
<BoT> should be "$test" or "{test}" or "test(...)" or ...
<BoT> [14:57:30] Tcl error [remvip]: invalid bareword "test1"
<BoT> in expression "test1 - 1";
<BoT> should be "$test1" or "{test1}" or "test1(...)" or ...



EK olarak. -BoT- Tebrikler, VIP olduğunuz için Voice (+) aldınız
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.


Bu mesajın notice olarak değil kanal geneline yazmasını istiyorum. NOTİCE kısmını silip msg $chan yaptım ama calısmadı. Teşekkürler.

 
Alıntı ile Cevapla

Alt 08 Eylül 2012, 16:07   #3
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: VIP User TCL




kheldor Nickli Üyeden Alıntı
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
Merhaba. Kod da ne yazıkkı hatalar mevcut. Bunlar sırasıyla.

1. Vip ekle dediğiniz nick !vipsil nick ile silinmemekte bot herhangi bir işlem yapmamakta.

2. Örnek olarak !vipekle test diye bir nick ekledim, ancak yanlışıkla tekrar test diye ekle dediğimde 2. hatta 3. nick olarak test eklemekte.

[14:57:43] -BoT- VIP Eklenenler Listesi :
[14:57:45] -BoT- 1.test 2.test 3.test

Test nicki zaten ekli diye mesaj almak daha doğru olur.
Aynı isimden 3 tane test olamayacağına göre
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.


Harici olarak sorunsuz çalışmakta 2 sıkıntısı var okadar. Sevgilerimle.


İşe yararmı bilmiyorum ancak bot içinde şunu yazmakta.


<BoT> [14:56:02] Tcl error [remvip]: invalid bareword "test"
<BoT> in expression "test - 1";
<BoT> should be "$test" or "{test}" or "test(...)" or ...
<BoT> [14:56:38] Tcl error [remvip]: invalid bareword "test"
<BoT> in expression "test - 1";
<BoT> should be "$test" or "{test}" or "test(...)" or ...
<BoT> [14:56:41] Tcl error [remvip]: invalid bareword "test"
<BoT> in expression "1._@_test - 1";
<BoT> should be "$test" or "{test}" or "test(...)" or ...
<BoT> [14:56:46] utimer173 (page_check) killed.
<BoT> [14:57:28] Tcl error [remvip]: invalid bareword "test"
<BoT> in expression "test - 1";
<BoT> should be "$test" or "{test}" or "test(...)" or ...
<BoT> [14:57:30] Tcl error [remvip]: invalid bareword "test1"
<BoT> in expression "test1 - 1";
<BoT> should be "$test1" or "{test1}" or "test1(...)" or ...



EK olarak. -BoT- Tebrikler, VIP olduğunuz için Voice (+) aldınız
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.


Bu mesajın notice olarak değil kanal geneline yazmasını istiyorum. NOTİCE kısmını silip msg $chan yaptım ama calısmadı. Teşekkürler.

Kodda gördüğüm kadarıyla silerken numara kullanmanız gerekiyor. msg $chan olarak değilde privmsg $chan olarak değiştirmeniz gerek.

 
Alıntı ile Cevapla

Alt 08 Eylül 2012, 16:23   #4
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: VIP User TCL




Tmm meseleyi çözdüm.
!vipsil numara nick seklinde olacakmış
Kanal yansıtmayı yaptım sayende. Teşekkürler.

 
Alıntı ile Cevapla

Alt 08 Eylül 2012, 19:38   #5
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: VIP User TCL




bir kullanıcı eklemek yada belli bir kullanıcıya kanala girişte oto herhangi bir modun bot tarafından verilmesi-atanması için bir tcl script kullanmadan partyline üzerinden komutla bunu bota oto yaptırabilirsiniz.
.chattr nick +-flag #kanal-adı komutu o kullanıcı için belirlenen kanal üstünde istenilen flagı/modu almasını sağlayacaktır. örnek saywhat nickine akanalında oto voice vermek istiyorsanız. bota telnet/dcc ile bağlanıp .chattr saywhat +g #kanala eğer belirlenen kanal halihazırda +autovoice olarak ekli bir kanalsa .chattr saywhat +v #kanalb flagları belirlenen kullanıcıya belirtilen kanalda girişte botun oto voice vermesini sağlayacaktır.

ayrıntılı bilgi için telnet/dcc bağlantısında .help chattr komutu uygulayın.diğer eggdrop kullanıcı flagları için doküman -> [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

 
Alıntı ile Cevapla

Alt 08 Eylül 2012, 19:51   #6
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: VIP User TCL




Şunu da belirtim arkadaşlar, botu kullanırken hostname kısmınız aynı olmalı. Örneğin ben bota kendimi owner olarak tanıttım;

/msg Botnick hello
/msg Botnick pass 87989

Gibi. Sonra bi kanala girdim servisler başka host verdi, veya chghost yaptım kendime. Ozaman bot sizi algılamıyor. Dolayısıyla komutları da görmüyor.

- !vipsil 3 gibi silmeniz lazım evet, @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] belirtmiş bunu da ve $chan olarak düzenleyin ama şu şekilde yapın;

putquick "NOTICE $nick" yerine , putquick "privmsg $chan" şeklinde yapın.

@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] evet söylediğin de geçerli ama şunu da düşün ki bot üzerinde konsola girerek yapılabilir o ancak, bunu ise herkes kullanabilicek. Veya mesajla karşılama yapmak da mümkün.


PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
set vipwho "Nmn|MN" 

bu kısmı;

PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
set vipwho "r | o" 

gibi yaparsanız oplar veya normal kullanıcılar da kullanabilicek.

 
Alıntı ile Cevapla

Alt 08 Eylül 2012, 20:14   #7
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: VIP User TCL




bota .+user nick/handle *!*ident@*hostun-son-kısmı şeklinde kullanıcı ekleyip .-user nick/handle diyerek kullanıcıyı botun kullanıcı dosyasından silebilirsiniz. eğerki botta ekli kullanıcının ident yada host bilgilerinde değişiklik oldu ve bot bu kişiyi tanıyamıyorsa ki bu botun sahibinede olabilir.dinamik ip nedeniyle host ip değiştikçe değişebilir.bot bu kişiyi onaylamaz-tanımlamaz güvenlik nedeniyle sadece nickin değil kullanıcın ident@host kısmınında eşleşmesi gerekir. bu durumda yeni değişmiş ident/host kısmını o ekli kullanıcı için yeni şekliyle .+host nick/handle *!*ident@*.yeni.hostun.son.iki.parçası gibi ekleyebilir böylece o nick/kullanıcı için bot kendi user/kullanıcı dosyasında bu yeni hostuda o kullanıcı için listeleyecek ister eski host/identle ister bu yeni eklenen ident/hostla olsun kullanıcıyı tanıyabilecektir.

örnek. saywhat bot sahibi kendini bota tanıttığında bot onu kullanıcı dosyasına
nick/handle flagları
saywhat - hjlmnoptx
! #kanal 1346936993 -
--HOSTS
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.


olarak kaydetti.fakat elektrik kesildi geldi saywhatın ip değişti.yeniden bağlandığında sunucunun verdiği hostda değişeceğinden botu onu tanımamazlıktan geldi.
saywhat bota bağlandı yeni hostunu komutla.

.+host saywhat
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
gibi ekleyince bot bu hostuda eskisinin altına saywhat nick/handle'ı için ekler ve artık saywhat'a yanlış yapmaya kalkmaz...mutlu son...


ekstra bir bilgi olarak : bota eklediğiniz herhangi bir kullanıcı için bota komutla greet/karşılama mesajı ekleyebilirsiniz. belirtilen kullanıcı belirlenen kanala girişinde bot bu greet/karşılama mesajını atacaktır. ...

bunun için botun confunda kanal ayarlarında greet ayarı +greet olmalı ..
botun confunda yoksa set no-chanrec-info 1
set wait-info 0 ayarları ekli olsun. bu değişiklikleri yaparken ya botu durdurup yapın ya değişiklikten sonra .restart yeniden başlatın.

bota bağlanıp .chinfo kullanıcı #kanal info-mesajı şeklinde istenilen kanalda istenilen kullanıcı için bir karşılama mesajı belirlemiş olursunuz bu mesaj @ işareti ile başlayamaz.none olarak eklenirse mesaj silenecektir.
.chinfo saywhat #kanal amanda aman kimler gelmiş. gibi...

hazır bi yerden başlamışız konuyla alakalı sonunu getirelim bari...

 
Alıntı ile Cevapla

Alt 08 Eylül 2012, 21:24   #8
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: VIP User TCL




@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] , avatarını ve giriş mesajı örneğini beğendim
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.

 
Alıntı ile Cevapla

Alt 08 Eylül 2012, 21:49   #9
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: VIP User TCL




@ilvir çalışmadı
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
C
@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] teşekkür butononu gördüm forum icad edildikten sonra 18 yıldır kullanırım o butonu sandığın kadar aptal değilim!

 
Alıntı ile Cevapla

Alt 08 Eylül 2012, 21:51   #10
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: VIP User TCL




@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] usta istersen bir uğra bana, ben şu an kullanıyorum aynı verdiğim şekilde çalışıyo. Hatayı buraya kopy edersen bakalım istersen.

 
Alıntı ile Cevapla

Cevapla

Etiketler
tcl, user, vip


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