TCL Scriptler

SheqiL 

Belalim.Net ❤️
FORUM SAHIBI

SheqiL 

Belalim.Net ❤️
FORUM SAHIBI
Katılım
25 Haz 2023
Mesajlar
1,005
Tepkime puanı
239
Puanları
63
Yaş
37
Konum
Fransa
Cinsiyet
Erkek
Takım
Türkiye
TCL (Tool Command Language), IRC botları ve uygulamaları için yaygın olarak kullanılan bir komut dilidir. Özellikle Eggdrop IRC botları gibi platformlarda, TCL kullanılarak botların özellikleri özelleştirilebilir. TCL, IRC botlarında komutları, kullanıcı etkileşimlerini ve kanal yönetimini yönetmek için sıklıkla kullanılır.

Aşağıda, Eggdrop IRC botu için yaygın olarak kullanılan bazı TCL script örnekleri bulunmaktadır:

1. Basit Komut Yanıt Scripti

Bu script, kullanıcıların bir kanal içinde belirli bir komut yazdığında botun yanıt vermesini sağlar.

TCL Script Örneği - !hello Komutu:

tcl

# Bot, kullanıcı "hello" komutunu yazdığında yanıt verecek.
bind pub - "!hello" hello_command

# Komut fonksiyonu
proc hello_command {nick uhost hand chan text} {
putserv "PRIVMSG $chan :Merhaba $nick! Yardım edebilir miyim?"
}

Bu script, bir kullanıcı !hello komutunu kanal içinde yazarsa botun kullanıcıya yanıt vermesini sağlar.

2. Botun Kanala Hoş Geldin Mesajı Yazması

Bot, kanalına katılan kullanıcıya otomatik bir hoş geldin mesajı gönderir.

TCL Script Örneği - Hoş Geldin Mesajı:

tcl

# Kanalınıza katılan her kullanıcıya hoş geldin mesajı.
bind join - * welcome_user

proc welcome_user {nick uhost hand chan} {
putserv "PRIVMSG $chan :Hoş geldin $nick! Kanalımıza katıldığın için teşekkürler!"
}

Bu script, bir kullanıcı kanalınıza katıldığında ona hoş geldin mesajı gönderir.

3. Kullanıcı Sayısını Gösterme

Bir komutla kanalınızdaki aktif kullanıcı sayısını gösteren basit bir script.

TCL Script Örneği - !users Komutu:

tcl

# Kanalınızdaki aktif kullanıcı sayısını gösteren komut
bind pub - "!users" show_users

proc show_users {nick uhost hand chan text} {
set users [chanusers $chan]
set user_count [llength $users]
putserv "PRIVMSG $chan :Kanalda şu anda $user_count kullanıcı var."
}

Bu script, kullanıcılar !users komutunu yazarsa, kanalda kaç kişi olduğunu gösterir.

4. Yasaklı Kelimeler İçin Filtre

Kanalda belirli kelimelerin kullanılmasını engelleyen bir script.

TCL Script Örneği - Yasaklı Kelimeler:

tcl

# Yasaklı kelimeler listesi
set banned_words [list "yasaklıkelime1" "yasaklıkelime2" "yasaklıkelime3"]

# Kullanıcı bir mesaj gönderdiğinde, yasaklı kelimeleri kontrol etme
bind pub - * check_banned_words

proc check_banned_words {nick uhost hand chan text} {
global banned_words

foreach word $banned_words {
if {[string match "*$word*" $text]} {
putserv "PRIVMSG $chan :$nick, o kelime yasaklıdır!"
putserv "KICK $chan $nick :Yasaklı kelime kullanmak!"
return
}
}
}

Bu script, kullanıcılar yasaklı kelimeleri kullanmaya çalıştığında onları uyarır ve otomatik olarak kanaldan atar.

5. Sohbet Logları Kaydetme

Bu script, kanal sohbetlerini kaydeden basit bir loglama mekanizması sağlar.

TCL Script Örneği - Sohbet Logları:

tcl

# Sohbet logları dosyası
set logfile "/path/to/logfile.txt"

# Her mesajı kaydetme
bind pub - * log_message

proc log_message {nick uhost hand chan text} {
global logfile

set log_text "[timestamp] $nick: $text"
# Mesajı dosyaya yaz
append_to_file $logfile "$log_text"
}

# Mesajları dosyaya yazan yardımcı fonksiyon
proc append_to_file {filename text} {
set fh [open $filename a]
puts $fh $text
close $fh
}

Bu script, her kanal mesajını belirtilen log dosyasına kaydeder.

6. Rastgele Cevaplar (Fun Bot)

Bot, kullanıcılara rastgele eğlenceli cevaplar verir.

TCL Script Örneği - Rastgele Cevaplar:

tcl

# Fun komutları
set responses {
"Ben buradayım!" "Nasılsınız?" "Bugün harika bir gün!" "Yardımcı olabilir miyim?"
}

# Kullanıcı "!fun" komutunu yazarsa, rastgele bir cevap verir.
bind pub - "!fun" random_response

proc random_response {nick uhost hand chan text} {
global responses

# Rastgele cevap seçme
set random_reply [lindex $responses [expr {int(rand() * [llength $responses])}]]
putserv "PRIVMSG $chan :$random_reply"
}

Bu script, bir kullanıcı !fun komutunu yazarsa, bot rastgele bir eğlenceli cevap verir.


TCL Script Özelleştirmeleri:

  • Kanallara ve kullanıcı gruplarına özgü komutlar ekleyebilirsiniz.
  • Kullanıcı yetkilendirmesi (mod, oper vs.) ekleyerek yalnızca belirli kullanıcıların belirli komutları kullanmasına izin verebilirsiniz.
  • Kanal yönetim araçları ekleyerek moderasyon işlevlerini otomatikleştirebilirsiniz.
Bu örnekler, Eggdrop IRC botunu TCL dilinde özelleştirmenin sadece birkaç yoludur. TCL dilindeki becerilerinizi geliştirerek botunuza daha fazla işlevsellik ekleyebilirsiniz.
 

Konuyu görüntüleyenler

Ana Sayfa Register Log In
Üst