Merhabalar. Bildiğiniz gibi, Normal Radyo TCL'nin Radyo Durumunu Yansıtmaktan Başka Pek Bi Özelliği Olduğu Söylenemez. Ama Benim Kullandığım, Bazı Bölümlerini Kendimin Yazdığım TCL'yi sizlerle Paylaşmak istiyorum. İstek TCL Kod: Kodu kopyalamak için üzerine çift tıklayın!
bind pub - !istek istek
proc istek {n u h c a} {
global gnick
set gnick $n
set kanal [lindex $a ]
putserv "PRIVMSG #DJ :\[Radyo İstek Paneli\] İstekte Bulunan Kullanıcı: $gnick İsteği: $kanal"
putserv "PRIVMSG #Radyo :İsteğiniz DJ'lerimize İletilmiştir $gnick."
}
#DJ Kanalında !istek on/off TCL (İstek Komutunu Kapatma/Açma) Kod: Kodu kopyalamak için üzerine çift tıklayın!
bind pub - !istek istekoff
proc istekoff {nick uhost hand chan text} {
setudef flag radyocmd
if {[string match -nocase "#DJ" $chan]} {
set komut [lindex $text 0]
if {$komut == ""} { putquick "PRIVMSG #DJ :Kullanımı !istek on/off şeklindedir."; return 0 }
if {[string match -nocase "on" $komut]} { channel set $chan +radyocmd; putquick "PRIVMSG #DJ Radyo İstekleri Kabul Edilecek."; return 0 }
if {[string match -nocase "off" $komut]} { channel set $chan -radyocmd; putquick "PRIVMSG #DJ Radyo İstekleri Reddedilecek."; return 0 }
}
if {[string match -nocase "#Radyo" $chan]} {
if {[lsearch -exact [channel info #DJ] +radyocmd] != -1} {
putquick "PRIVMSG #Radyo :İsteğiniz DJ'lerimize İletilmiştir $nick."
putquick "PRIVMSG #DJ Radyo İsteği: $text İstekte Bulunan Kullanıcı: $nick"
}
if {[lsearch -exact [channel info #DJ] +radyocmd] == -1} {
putquick "PRIVMSG #Radyo Üzgünüz Dj'imiz İstekleri Kabul Etmemektedir $nick."
}
}
}
putlog "Radyo Panel TCL v1.0 CLubber"
Radyo Kanalında (@) Olanlar için, #DJ Kanalına Yönlendirme ve Özel HOST TCL'si. Kod: Kodu kopyalamak için üzerine çift tıklayın!
set opkanal "#DJ"
channel add $opkanal
bind mode - "*+o*" op:yonlendir
proc op:yonlendir {nick uhost hand chan mc kimdir} {
global opkanal
if {![string match -nocase "#Radyo" $chan]} {return 0}
putquick "sajoin $kimdir $opkanal"
putquick "CHGIDENT $kimdir DJ"
putquick "CHGHOST $kimdir DJ.Site-İsmi.Net"
putquick "CHGNAME $kimdir 4,1\[ 0Site-İsmi.Net DJ4 \]"
}
bind time - "* * * * *" time:optara
proc time:optara {min hour day month year} {
global opkanal botnick
foreach kanallar [channels] {
if {$kanallar == $opkanal} { continue }
foreach opcuk [chanlist $kanallar] {
if {[onchan $opcuk $opkanal]} { continue }
if {[isop $opcuk $kanallar] && $opcuk != $botnick} {
putquick "sajoin $opcuk $opkanal"
}
}
}
}
#DJ Kanalında !var - !yok Kod: Kodu kopyalamak için üzerine çift tıklayın!
bind pub - !var var
bind pub - !yok yok
proc var {n u h c a} {
set kanal [lindex $a 0]
if {![string match -nocase "#DJ" $c]} {return 0}
putserv "PRIVMSG #Radyo :İsteğiniz Arşivimizde Mevcut. Kısa Süre İçinde İsteginiz yayınlanacaktır."
}
proc yok {n u h c a} {
set kanal [lindex $a 0]
if {![string match -nocase "#DJ" $c]} {return 0}
putserv "PRIVMSG #Radyo :Üzgünüm, İsteğiniz Arşivimizde Bulunmamaktadır. Başka Bir İstekte Bulunabilirsiniz."
}
#DJ Kanalında !sifre Komutu Kod: Kodu kopyalamak için üzerine çift tıklayın!
bind pub - !sifre sifre
proc sifre {nick uhand host chan text} {
if {![string match -nocase "#DJ" $chan]} {return 0}
putquick "privmsg $chan :4» Sunucu DJ Panel Şifreleri"
putquick "privmsg $chan :4»2 IP: IP adresiniz"
putquick "privmsg $chan :4»2 Port: Portunuz"
putquick "privmsg $chan :4»2 Şifre: Şifreniz"
putquick "privmsg $chan :4»2 Maximum Dinleyici: 520"
}
#DJ Kanalında DJ'lerin Reklam Atması için Kod: Kodu kopyalamak için üzerine çift tıklayın!
bind pub - !Reklam reklam
proc reklam {nick uhand host chan text} {
if {![string match -nocase "#DJ" $chan]} {return 0}
putquick "PRIVMSG $*site-adi.com 4,4 0,1 Radyomuzu Winamp'tan Dinlemek için 4,1»0 4,1Radyo Linki"
}
Radyoyu dinleyen kullanıcılara voice - Kapatanları devoice Kod: Kodu kopyalamak için üzerine çift tıklayın!
#############################################
# Radyo ip'sini yazınız..
set radyoip "IPADRESINIZ"
# Radyo portunu yazınız..
set rport "RADYOPORT"
# Radyo şifresini yazınız..
set rsifre "RADYOSIFRE"
# Radyo kanalını yazınız.. Büyük küçük harfe dikkat ediniz.
# Örnek #Radyo ile #radyo farklıdır ;)
set rkanal "#Radyo"
###############################################################
###############################################################
### PROCS.......................................................
###############################################################
###############################################################
bind time - "* * * * *" yenidinleyici
proc yenidinleyici {min hour day month year} {
global radyoip rsifre rport
if {[catch {set sock [socket $radyoip $rport] } sockerror]} {
putlog "error: $sockerror"
return 0
} else {
puts $sock "GET /admin.cgi?pass=$rsifre&mode=viewxml&page=0 HTTP/1.0"
puts $sock "User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:0.9.9)"
puts $sock "Host: $radyoip"
puts $sock "Connection: close"
puts $sock ""
flush $sock
while {[eof $sock] != 1} {
set bl [gets $sock]
if { [string first "standalone" $bl] != -1 } {
set voicevr [string range $bl [shrink + 11 "<LISTENERS>" 0 $bl] [shrink - 1 "</LISTENERS>" 0 $bl]]
}
}
close $sock
}
set voicevr [temiz $voicevr]
set deger 0
set ::rawcount 0
set ipler ""
bind raw - 352 voysver
foreach i $voicevr {
if {[regexp {^[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}$} [lindex $voicevr $deger]]} {
incr ::rawcount
lappend ipler "[lindex $voicevr $deger] "
}
incr deger
}
set ydeger 0
foreach j $ipler {
putquick "who +i [lindex $ipler $ydeger]"
incr ydeger
}
}
proc shrink { calc number string start bl} { return [expr [string first "$string" $bl $start] $calc $number] }
proc voysver {from keyword arg} {
global rkanal
if {![isvoice [lindex $arg 5] $rkanal]} {
putquick "mode $rkanal +v [lindex $arg 5]"
}
}
bind raw - 315 countdusur
proc countdusur {from keyword arg} {
set ::rawcount [expr $::rawcount - 1]
if {$::rawcount == "0"} {
unbind raw - 352 voysver
}
}
proc temiz {veri} {
regsub -all \< $veri " " veri
regsub -all \/ $veri " " veri
regsub -all \> $veri " " veri
return $veri
}
putlog "radyo-yama.tcl By SaW"