Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # shoutcast.tcl v1.03 by domsen <domsen@domsen.org> (c)2oo5
- #
- # comments? bugs? ideas? requests? money? beer?
- # plz mail me or visit my homepage @ www.domsen.org
- # visit #newsticker@ircnet
- #
- #
- ###############################################################
- # shoutcast.tcl v1.03 by Chino <chino@canal-ayuda.org> (c)2oo6
- # "TCL con Permiso, Editado y Traducido con credito a domsen."
- #
- # Favor no tocar nada de lo que no entiendas de haber
- # algún problema no es responsabilidad mia ni de domsen
- #
- # Colores usados: Negro Azul Rojo Marrón y Fucsia
- #
- # Para cualquier ayuda me encuentra en:
- # < #Ayuda #Trujilo #Ayuda-Eggdrop > <eu.Undernet.oRG>
- #
- # No quitar los creditos dados a:
- #
- # - domsen
- # - Chino
- # - #Ayuda-Eggdrop
- #
- ###############################################################
- # Saludos:
- # A Spinetta que aportó mucho con la traducción.
- #
- ###############################################################
- # Configuracion ##################################################
- set radiochans "#tcls #lapaz"
- set adminchans "#tcls"
- set streamip "radioirc.sytes.net"
- set streamport "8000"
- set streampass "Radiopass"
- set scstatstrigger "!estado"
- set scstreamtrigger "!enlace"
- set scplayingtrigger "!tocando"
- set sclistenertrigger "!oyentes"
- set scdjtrigger "!dj"
- set scsetdjtrigger ".serdj"
- set scunsetdjtrigger ".noserdj"
- set scwishtrigger "!pedidos"
- set scgreettrigger "!saludos"
- set sclastsongstrigger "!ultimas"
- set schelptrigger "!radio"
- set alertadmin ""
- set doalertadmin "1"
- set announce "1"
- set urltopic "0"
- set ctodjc "1"
- set tellsongs "1"
- set tellusers "1"
- set tellbitrate "1"
- set advertise "1"
- set advertiseonlyifonline "1"
- set offlinetext "La Radio Esta 4APAGADA !!!"
- set offlinetopic ""
- set onlinetext "1Radio IRC 6TRANSMITIENDO a 4 /bitrate/ kbits 1Sitonizanos en -> 12http://$streamip:$streamport/listen.pls"
- set onlinetopic ""
- set streamtext "Sintoniza Radio IRC en www.Sonidomegga.com"
- set advertisetext "Radio IRC 4TRANSMITIENDO ---> 2 http://$streamip:$streamport/listen.pls - ... Para Ver Comandos de la Radio Teclea 2!radio "
- # end of config #####################
- bind pub - $scstatstrigger pub_scstat
- bind msg - $scstatstrigger msg_scstat
- bind pub - $scplayingtrigger pub_playing
- bind msg - $scplayingtrigger msg_playing
- bind pub - $scdjtrigger pub_dj
- bind msg - $scdjtrigger msg_dj
- bind pub D $scsetdjtrigger pub_setdj
- bind msg D $scsetdjtrigger msg_setdj
- bind pub D $scunsetdjtrigger pub_unsetdj
- bind msg D $scunsetdjtrigger msg_unsetdj
- bind pub - $scwishtrigger pub_wish
- bind msg - $scwishtrigger msg_wish
- bind pub - $scgreettrigger pub_greet
- bind msg - $scgreettrigger msg_greet
- bind pub - $scstreamtrigger pub_stream
- bind msg - $scstreamtrigger msg_stream
- bind pub - $sclastsongstrigger pub_lastsongs
- bind msg - $sclastsongstrigger msg_lastsongs
- bind pub - $sclistenertrigger pub_listener
- bind msg - $sclistenertrigger msg_listener
- bind pub - $schelptrigger pub_help
- bind msg - $schelptrigger msg_help
- bind time - "* * * * *" envivo
- bind time - "?0 * * * *" advertise
- bind nick f * djnickchange
- set dj ""
- set surl ""
- set bitrate ""
- set stitle ""
- if {[file exists dj]} {
- set temp [open "dj" r]
- set dj [gets $temp]
- close $temp
- }
- proc shrink { calc number string start bl} { return [expr [string first "$string" $bl $start] $calc $number] }
- proc status { } {
- global streamip streamport streampass
- if {[catch {set sock [socket $streamip $streamport] } sockerror]} {
- putlog "error: $sockerror"
- return 0 } else {
- puts $sock "GET /admin.cgi?pass=$streampass&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: $streamip"
- puts $sock "Connection: close"
- puts $sock ""
- flush $sock
- while {[eof $sock] != 1} {
- set bl [gets $sock]
- if { [string first "standalone" $bl] != -1 } {
- set streamstatus [string range $bl [shrink + 14 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- }}
- close $sock
- }
- if { $streamstatus == "1" } { return 1 } else { return 0 }
- }
- proc poststuff { mode text } {
- global radiochans dj
- set curlist "0"
- set curhigh "0"
- set surl ""
- set cursong ""
- set sgenre ""
- set bitrate "0"
- set stitle ""
- set temp [open "envivo" r]
- while {[eof $temp] != 1} {
- set zeile [gets $temp]
- if {[string first "curlist:" $zeile] != -1 } { set curlist $zeile }
- if {[string first "curhigh:" $zeile] != -1 } { set curhigh $zeile }
- if {[string first "cursong:" $zeile] != -1 } { set cursong [lrange $zeile 1 [llength $zeile]]] }
- if {[string first "sgenre:" $zeile] != -1 } { set sgenre [lrange $zeile 1 [llength $zeile]]}
- if {[string first "serverurl:" $zeile] != -1 } { set surl [lindex $zeile 1] }
- if {[string first "bitrate:" $zeile] != -1 } { set bitrate [lindex $zeile 1] }
- if {[string first "stitle:" $zeile] != -1 } { set stitle [lindex $zeile 1] }
- }
- close $temp
- regsub -all "/stitle/" $text "$stitle" text
- regsub -all "/curlist/" $text "$curlist" text
- regsub -all "/curhigh/" $text "$curhigh" text
- regsub -all "/cursong/" $text "$cursong" text
- regsub -all "/sgenre/" $text "$sgenre" text
- regsub -all "/surl/" $text "$surl" text
- regsub -all "/bitrate/" $text "$bitrate" text
- regsub -all "/dj/" $text "$dj" text
- foreach chan [channels] {
- if {$radiochans == "" } { putserv "$mode $chan :$text" }
- if {$radiochans != "" } {
- if {([lsearch -exact [string tolower $radiochans] [string tolower $chan]] != -1)} {putserv "$mode $chan :$text"}
- }}}
- proc schelp { target } {
- global scstatstrigger scstreamtrigger scplayingtrigger scdjtrigger sclastsongstrigger scwishtrigger scgreettrigger sclistenertrigger
- putserv "notice $target :1Los Comandos Que Puede Usar Son:"
- putserv "notice $target :4$scstatstrigger1: Ver el Estado - 4$scstreamtrigger1: Ver Nuestro Link - 4$scplayingtrigger1: Ver el SONG que esta actualmente Sonando - 4$scdjtrigger1: Ver Nuestro Actual DJ de la Radio - 4$sclastsongstrigger1: Ver Las 10 ULTIMAS Song sonadas en radio - 4$scwishtrigger1: Mandar pedidos Musicales Ej: $scwishtrigger <tus_songs> - 4$scgreettrigger1: Mandar Tus Mensaje de Saludos Ej: $scgreettrigger <tus_saludos> 4$sclistenertrigger1: Ver N° Actual de Oyentes "
- putserv "notice $target :1Radio IRC ->> 5http://radioirc.sytes.net:8000/listen.pls51 - domsen & Chino"
- }
- proc pub_help {nick uhost hand chan arg} {
- global radiochans
- if {$radiochans == "" } { schelp $nick }
- if {$radiochans != "" } {
- if {([lsearch -exact [string tolower $radiochans] [string tolower $chan]] != -1) || ($radiochans == "")} { schelp $nick}
- }}
- proc advertise { nick uhost hand chan arg } {
- global advertisetext advertise advertiseonlyifonline
- if {$advertise == "1" && $advertiseonlyifonline == "0"} { poststuff privmsg "$advertisetext" }
- if {$advertise == "1" && $advertiseonlyifonline == "1" && [status] == 1} { poststuff privmsg "$advertisetext" }
- }
- proc setdj {nickname djnickname } {
- if {$djnickname == "" } { set djnickname $nickname }
- global streamip streamport streampass dj
- putlog "shoutcast: Nuevo Dj: $djnickname ($nickname)"
- set temp [open "dj" w+]
- puts $temp $djnickname
- close $temp
- set temp [open "djnick" w+]
- puts $temp $nickname
- close $temp
- if { [status] == "1" } { poststuff privmsg "$djnickname Es Ahora Nuestro DJ."
- if { $::ctodjc == "1" } {
- set temp [open "envivo" r]
- while {[eof $temp] != 1} {
- set zeile [gets $temp]
- if {[string first "envivo:" $zeile] != -1 } { set oldenvivo $zeile }
- if {[string first "curlist:" $zeile] != -1 } { set oldcurlist $zeile }
- if {[string first "curhigh:" $zeile] != -1 } { set oldcurhigh $zeile }
- if {[string first "cursong:" $zeile] != -1 } { set oldsong $zeile }
- if {[string first "bitrate:" $zeile] != -1 } { set oldbitrate $zeile }
- }
- close $temp
- }
- } else {
- putserv "privmsg $nickname :Comando invalido por tener el servidor OFF Line" }
- }
- proc msg_setdj { nick uhost hand arg } { setdj $nick $arg }
- proc pub_setdj { nick uhost hand chan arg } { global adminchans; if {([lsearch -exact [string tolower $adminchans] [string tolower $chan]] != -1) || ($adminchans == "")} { setdj $nick $arg }}
- proc unsetdj { nick } {
- global dj
- set dj ""
- file delete dj
- putserv "notice $nick :Dj Borrado .. Puede Entrar otro Dj Poniendo el Comando .setdj Nickname"
- }
- proc msg_unsetdj { nick uhost hand arg } { unsetdj $nick }
- proc pub_unsetdj { nick uhost hand chan arg } { global adminchans; if {([lsearch -exact [string tolower $adminchans] [string tolower $chan]] != -1) || ($adminchans == "")} { unsetdj $nick }}
- proc listener { target } {
- global streamip streamport streampass
- putlog "Radio: $target Pedido De Conteo de Oyentes"
- if {[catch {set sock [socket $streamip $streamport] } sockerror]} {
- putlog "error: $sockerror"
- return 0 } else {
- puts $sock "GET /admin.cgi?pass=$streampass&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: $streamip"
- puts $sock "Connection: close"
- puts $sock ""
- flush $sock
- while {[eof $sock] != 1} {
- set bl [gets $sock]
- if { [string first "standalone" $bl] != -1 } {
- set repl [string range $bl [shrink + 19 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- set curhigh [string range $bl [shrink + 15 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- set maxl [string range $bl [shrink + 14 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- set avgtime [string range $bl [shrink + 13 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- }}
- close $sock
- putserv "notice $target :Actualmente hay $repl Oyente(s), La Radio Tiene Capacidad para $maxl Oyentes, el número máximo de Oyentes Hasta Ahora es de $curhigh Oyentes, el promedio de escucha es a $avgtime"
- }}
- proc msg_listener { nick uhost hand arg } { listener $nick }
- proc pub_listener { nick uhost hand chan arg } { global radiochans; if {([lsearch -exact [string tolower $radiochans] [string tolower $chan]] != -1) || ($radiochans == "")} { listener $nick }}
- proc wish { nick arg } {
- if {$arg == ""} { putserv "notice $nick :"; return 0}
- if { [status] == "1" } {
- set temp [open "djnick" r]
- set djnick [gets $temp]
- close $temp
- putserv "privmsg $djnick :PEDIDO MUSICAL: $arg de Parte de $nick"
- } else {
- putserv "notice $nick :" }
- }
- proc msg_wish { nick uhost hand arg } { wish $nick $arg }
- proc pub_wish { nick uhost hand chan arg } { global radiochans; if {([lsearch -exact [string tolower $radiochans] [string tolower $chan]] != -1) || ($radiochans == "")} { wish $nick $arg }}
- proc sclastsongs { target } {
- global streamip streamport streampass
- putlog "Radio: $target Pedidos las Song ultimas"
- if {[catch {set sock [socket $streamip $streamport] } sockerror]} {
- putlog "error: $sockerror"
- return 0 } else {
- puts $sock "GET /admin.cgi?pass=$streampass&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: $streamip"
- puts $sock "Connection: close"
- puts $sock ""
- flush $sock
- while {[eof $sock] != 1} {
- set bl [gets $sock]
- if { [string first "standalone" $bl] != -1 } {
- set songs [string range $bl [string first "<title>" $bl] [expr [string last "</title>" $bl] + 7]]
- regsub -all "<" $songs "<" songs
- regsub -all ">" $songs ">" songs
- regsub -all "&" $songs "+" songs
- regsub -all """ $songs "\"" songs
- regsub -all "'" $songs "'" songs
- regsub -all "ÿ" $songs "" songs
- regsub -all "<title>" $songs "(" songs
- regsub -all "</title>" $songs ")" songs
- regsub -all "" $songs "" songs
- regsub -all "" $songs " - " songs
- regsub -all "" $songs "" songs
- regsub -all "" $songs "" songs
- regsub -all {\d} $songs "" songs
- regsub -all "´" $songs "´" songs
- regsub -all "–" $songs "-" songs
- regsub -all "ö" $songs "ö" songs
- regsub -all "ä" $songs "ä" songs
- regsub -all "ü" $songs "ü" songs
- regsub -all "Ö" $songs "Ö" songs
- regsub -all "Ä" $songs "Ä" songs
- regsub -all "Ü" $songs "Ü" songs
- regsub -all "ß" $songs "ß" songs
- }}
- close $sock
- putserv "notice $target :$songs"
- }}
- proc msg_lastsongs { nick uhost hand arg } { sclastsongs $nick }
- proc pub_lastsongs { nick uhost hand chan arg } { global radiochans; if {([lsearch -exact [string tolower $radiochans] [string tolower $chan]] != -1) || ($radiochans == "")} { sclastsongs $nick }}
- proc scstream { target } {
- global streamip streamport streamtext
- putlog "Radio: Informacion pedida por $target"
- putserv "notice $target :$streamtext"
- }
- proc msg_stream { nick uhost hand arg } { scstream $nick }
- proc pub_stream { nick uhost hand chan arg } { global radiochans; if {([lsearch -exact [string tolower $radiochans] [string tolower $chan]] != -1) || ($radiochans == "")} { scstream $nick }}
- proc scgreet { nick arg } {
- if {$arg == ""} { putserv "notice $nick :"; return 0}
- if { [status] == "1" } {
- set temp [open "djnick" r]
- set djnick [gets $temp]
- close $temp
- putserv "privmsg $djnick :(Saludo) - $nick - $arg"
- } else {
- putserv "notice $nick :" }
- }
- proc msg_greet { nick uhost hand arg } { scgreet $nick $arg }
- proc pub_greet { nick uhost hand chan arg } { global radiochans; if {([lsearch -exact [string tolower $radiochans] [string tolower $chan]] != -1) || ($radiochans == "")} { scgreet $nick $arg }}
- proc djnickchange { oldnick uhost hand chan newnick } {
- set temp [open "djnick" r]
- set djnick [gets $temp]
- close $temp
- if {$oldnick == $djnick} {
- putlog "Radio: Cambia de Nick del Dj $oldnick -> $newnick"
- set temp [open "djnick" w+]
- puts $temp $newnick
- close $temp
- }}
- proc dj { target } {
- global streamip streamport streampass dj
- putlog "Radio: $target pidio la Informacio de Dj"
- if {[status] == 1} {
- if {[file exists dj]} {
- set temp [open "dj" r]
- set dj [gets $temp]
- close $temp
- putserv "notice $target :Le Presento a 4$dj Nuestro(a) DJ de la Radio IRC"
- } else { putserv "notice $target :No hay ningun DJ seteado" }
- } else { putserv "notice $target :La Radio se encuentra OFF Line" }
- }
- proc msg_dj { nick uhost hand arg } { dj $nick"}
- proc pub_dj { nick uhost hand chan arg } { global radiochans; if {([lsearch -exact [string tolower $radiochans] [string tolower $chan]] != -1) || ($radiochans == "")} { dj $nick }}
- proc scstat {target} {
- global streamip streamport streampass
- putlog "Radio: $target Pidio el Estado de la Radio"
- if {[catch {set sock [socket $streamip $streamport] } sockerror]} {
- putlog "error: $sockerror"
- return 0 } else {
- puts $sock "GET /admin.cgi?pass=$streampass&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: $streamip"
- puts $sock "Connection: close"
- puts $sock ""
- flush $sock
- while {[eof $sock] != 1} {
- set bl [gets $sock]
- if { [string first "standalone" $bl] != -1 } {
- set streamstatus [string range $bl [shrink + 14 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- set repl [string range $bl [shrink + 19 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- set curhigh [string range $bl [shrink + 15 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- set currentl [string range $bl [shrink + 18 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- set surl [string range $bl [shrink + 11 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- set maxl [string range $bl [shrink + 14 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- set bitrate [string range $bl [shrink + 9 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- set stitle [string range $bl [shrink + 13 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- set sgenre [string range $bl [shrink + 13 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- if {$sgenre != ""} {set sgenre " ($sgenre)"}
- set avgtime [string range $bl [shrink + 13 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- set irc [string range $bl [shrink + 5 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- set icq [string range $bl [shrink + 5 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- if {$icq == 0} { set icq "N/A" }
- set aim [string range $bl [shrink + 5 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- set webhits [string range $bl [shrink + 9 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- set streamhits [string range $bl [shrink + 12 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- set version [string range $bl [shrink + 9 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- if {$streamstatus == 1} {
- if {[file exists dj]} {
- set temp [open "dj" r]
- set dj [gets $temp]
- close $temp
- } else { set dj "none" }
- putserv "notice $target :Radio IRC ESTA EN LINEA, en shoutcast y Transmitiendo a $bitrate kbps, mas información en $surl"
- } else {
- putserv "notice $target :Radio IRC Actualmente ESTA APAGADA, Mas información en www.SonidoMegga.Com" }
- putserv "notice $target :La Capacidad maxima de oyentes es $maxl, Total de Oyentes En la Radio fue de $curhigh oyentes."
- putserv "notice $target :El tiempo promedio de escucha es de $avgtime segundos, La Radio tiene $webhits webhits y $streamhits streamhits."
- putserv "notice $target :Tu puedes contactarte en el IRC en el canal $irc, Via Internet."
- }}
- close $sock
- }}
- proc msg_scstat { nick uhost hand arg } { scstat $nick}
- proc pub_scstat { nick uhost hand chan arg } { global radiochans; if {([lsearch -exact [string tolower $radiochans] [string tolower $chan]] != -1) || ($radiochans == "")} { scstat $nick }}
- proc playing {target} {
- global streamip streamport streampass dj
- putlog "Radio: $target pidio el titulo de la Song"
- if {[catch {set sock [socket $streamip $streamport] } sockerror]} {
- putlog "error: $sockerror"
- return 0 } else {
- puts $sock "GET /admin.cgi?pass=$streampass&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: $streamip"
- puts $sock "Connection: close"
- puts $sock ""
- flush $sock
- while {[eof $sock] != 1} {
- set bl [gets $sock]
- if { [string first "standalone" $bl] != -1 } {
- set streamstatus [string range $bl [shrink + 14 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- set songtitle [string range $bl [shrink + 11 "set songurl [string range $bl [shrink + 9 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- if {$songurl != ""} { set songurl " ($songurl)"}
- regsub -all "<" $songtitle "<" songtitle
- regsub -all ">" $songtitle ">" songtitle
- regsub -all "&" $songtitle "+" songtitle
- regsub -all """ $songtitle "\"" songtitle
- regsub -all "'" $songtitle "'" songtitle
- regsub -all "ÿ" $songtitle "" songtitle
- regsub -all "´" $songtitle "´" songtitle
- regsub -all "–" $songtitle "-" songtitle
- regsub -all "ö" $songtitle "ö" songtitle
- regsub -all "ä" $songtitle "ä" songtitle
- regsub -all "ü" $songtitle "ü" songtitle
- regsub -all "Ö" $songtitle "Ö" songtitle
- regsub -all "Ä" $songtitle "Ä" songtitle
- regsub -all "Ü" $songtitle "Ü" songtitle
- regsub -all "ß" $songtitle "ß" songtitle
- if {$streamstatus == 1} {
- putserv "notice $target :Radio IRC, Tocando -> $songtitle"
- } else {
- putserv "notice $target :"
- }}}
- close $sock
- }}
- proc msg_playing { nick uhost hand arg } { playing $nick}
- proc pub_playing { nick uhost hand chan arg } { global radiochans; if {([lsearch -exact [string tolower $radiochans] [string tolower $chan]] != -1) || ($radiochans == "")} { playing $nick }}
- proc envivo { nick uhost hand chan arg } {
- global radiochans announce tellusers tellsongs tellbitrate urltopic dj
- global offlinetext offlinetopic onlinetext onlinetopic
- global streamip streampass streamport dj
- global doalertadmin alertadmin
- if {$announce == 1 || $tellsongs == 1 || $tellusers == 1 || $tellbitrate == 1} {
- set envivofile "envivo"
- set oldenvivo "envivo: 0"
- set oldcurlist "curlist: 0"
- set oldcurhigh "curhigh: 0"
- set oldsong "cursong: 0"
- set oldbitrate "bitrate: 0"
- if {[file exists $envivofile]} {
- putlog "Radio: Viendo la Conexion de Radio"
- set temp [open "envivo" r]
- while {[eof $temp] != 1} {
- set zeile [gets $temp]
- if {[string first "envivo:" $zeile] != -1 } { set oldenvivo $zeile }
- if {[string first "curlist:" $zeile] != -1 } { set oldcurlist $zeile }
- if {[string first "curhigh:" $zeile] != -1 } { set oldcurhigh $zeile }
- if {[string first "cursong:" $zeile] != -1 } { set oldsong $zeile }
- if {[string first "bitrate:" $zeile] != -1 } { set oldbitrate $zeile }
- }
- close $temp
- }
- if {[catch {set sock [socket $streamip $streamport] } sockerror]} {
- putlog "error: $sockerror"
- return 0} else {
- puts $sock "GET /admin.cgi?pass=$streampass&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: $streamip"
- puts $sock "Connection: close"
- puts $sock ""
- flush $sock
- while {[eof $sock] != 1} {
- set bl [gets $sock]
- if { [string first "standalone" $bl] != -1 } {
- set streamstatus "envivo: [string range $bl [shrink + 14 "" 0 $bl] [shrink - 1 "" 0 $bl]]"
- set repl "curlist: [string range $bl [shrink + 19 "" 0 $bl] [shrink - 1 "" 0 $bl]]"
- set curhigh "curhigh: [string range $bl [shrink + 15 "" 0 $bl] [shrink - 1 "" 0 $bl]]"
- set currentl [string range $bl [shrink + 18 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- set surl "serverurl: [string range $bl [shrink + 11 "" 0 $bl] [shrink - 1 "" 0 $bl]]"
- set cursong "cursong: [string range $bl [shrink + 11 "<songtitle" 0 $bl] [shrink - 1 "" 0 $bl]]"
- set songurl [string range $bl [shrink + 9 "" 0 $bl] [shrink - 1 "" 0 $bl]]
- set bitrate "bitrate: [string range $bl [shrink + 9 "" 0 $bl] [shrink - 1 "" 0 $bl]]"
- set stitle "stitle: [string range $bl [shrink + 13 "" 0 $bl] [shrink - 1 "" 0 $bl]]"
- set sgenre "sgenre: [string range $bl [shrink + 13 "" 0 $bl] [shrink - 1 "" 0 $bl]]"
- }}
- close $sock
- }
- set temp [open "envivo" w+]
- puts $temp "$streamstatus\n$repl\n$curhigh\n$cursong\n$bitrate\n$stitle\n$sgenre\n$surl"
- close $temp
- if {$announce == 1 } {
- if {$streamstatus == "envivo: 0" && $oldenvivo == "envivo: 1"} {
- poststuff privmsg $offlinetext
- if {$doalertadmin == "1"} { sendnote domsen $alertadmin "" }
- if {$urltopic == 1} { poststuff topic $offlinetopic }
- }
- if {$streamstatus == "envivo: 1" && $oldenvivo == "envivo: 0" } {
- if {$sgenre != ""} {
- set sgenre " ([lrange $sgenre 1 [llength $sgenre]] )"
- }
- poststuff privmsg "$onlinetext"
- if {$urltopic == 1} { poststuff topic "$onlinetopic" }
- }}
- if {($tellusers == 1) && ($streamstatus == "envivo: 1") && ($oldcurhigh != "curhigh: 0") } {
- if {$oldcurhigh != $curhigh} {
- poststuff privmsg "Posibles Oyentes: [lindex $curhigh 1]"
- }
- if {$oldcurlist != $repl} {
- poststuff privmsg ""
- }}
- if {($tellsongs == 1) && ($oldsong != $cursong) && ($streamstatus == "envivo: 1") } {
- if {$songurl != ""} { set songurl " ($songurl)"}
- regsub -all "<" $cursong "<" cursong
- regsub -all ">" $cursong ">" cursong
- regsub -all "&" $cursong "+" cursong
- regsub -all """ $cursong "\"" cursong
- regsub -all "'" $cursong "'" cursong
- regsub -all "ÿ" $cursong "" cursong
- regsub -all "´" $cursong "´" cursong
- regsub -all "–" $cursong "-" cursong
- regsub -all "ö" $cursong "ö" cursong
- regsub -all "ä" $cursong "ä" cursong
- regsub -all "ü" $cursong "ü" cursong
- regsub -all "Ö" $cursong "Ö" cursong
- regsub -all "Ä" $cursong "Ä" cursong
- regsub -all "Ü" $cursong "Ü" cursong
- regsub -all "ß" $cursong "ß" cursong
- putlog $cursong
- poststuff privmsg "1Quieres Escuchar La Radio IRC Haz Doble Click en ->> 12 http://radioirc.sytes.net:8000/listen.pls En Linea 6$dj...La Actual Canción es: 4 [lrange $cursong 1 [llength $cursong]] .. Para Ver Comandos de la Radio Teclea 6!radio "
- }
- if {($tellbitrate == 1) && ($oldbitrate != $bitrate) && ($streamstatus == "envivo: 1") && ($oldbitrate != "bitrate: 0")} {
- poststuff privmsg "Calidad Seteada a [lindex $bitrate 1]kbps"
- }}}
- putlog "-= Cargado: shoutcast.tcl Por *#Ayuda-eggdrop* =-"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement