Eggdrop soll erstellte Datei auf einen externen Http server hochladen

MilesBenson

Grünschnabel
Hi,

habe in meinem Eggdrop die shoutcast.tcl eingebaut und würde gerne vom Eggdrop erstellte Dateien auf einen exterenen Webspace legen lassen. (brauch ich um die von einem Flash-Objekt auslesen zu lassen).

Hier mal der bisherige Code (bot funktioniert einwandfrei, weiss eben nur nicht wie ich das mit dem server einbauen könnte)

Code:
proc setdj {nickname djnickname } {
if {$djnickname == "" } { set djnickname $nickname }
global streamip streamport streampass
putlog "shoutcast: new dj: $djnickname ($nickname)"
set temp [open "dj.php" w+]
puts $temp $djnickname
close $temp
set temp [open "djnick.php" w+]
puts $temp $nickname
close $temp
putserv "privmsg $nickname :your are now dj of this 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 "<STREAMSTATUS>" 0 $bl] [shrink - 1 "</STREAMSTATUS>" 0 $bl]]
}}
if { $streamstatus == "1" } { poststuff privmsg "Moderator: $djnickname" } else {
putserv "privmsg $nickname :this has not been announced because the radio is currentlfy offline." }
}}

Das ganze bezieht sich auf die "dj.php".

Ich hoffe es kann jemand helfen,

Miles.
 
Umsetzbar ist das sicherlich,
warum nicht einfach bei cronjob das File uppen? (Wäre das absolut einfachste)

Oder per Trigger -> tcl ein bash script starten, des es per "scp" upped.

Mit puts socket etc
kenn ich mich nicht aus.

MfG JM
 
Hmm über die Idee mit cronjob hab ich noch garnicht nachgedacht, schonmal vielen dank für den Denkanstoß. Werde es direkt mal versuchen.

Miles.
 
Zurück