# Song History aus Shoutcast auslesen



## BioToxiN (27. Juni 2004)

Hi,
also ich wollte ganz simple die song history von shoutcast auslesen
habe hier auch nen tut gefunden und mich mal rangezetzt nur irgentwie gehts nicht 
also 


```
on 1:SOCKOPEN:playlist: {
sockwrite -n $sockname GET /7 HTTP/1.1
sockwrite -n $sockname Host: http://ip:8000/admin.cgi?mode=viewxml&admin=admin?adminpass=password
sockwrite -n $sockname User-Agent: Mozilla
}

on *:SOCKREAD:playlist: {
sockread %temp
if (%got.playlist == $null) {
if ( SONGHISTORY isin %temp) {
set %playlist1 %temp
set -u5 %got.playlist 1
update_playlist
}
}
else { halt }
}

on *:SOCKCLOSE:playlist:{
echo -a Playlist wurden gecheckt
 }

alias update_playlist {
set %playlist $gettok(%playlist1,2,62)
set %playlist $replace(%playlist,&uuml;,ü,&Uuml;,Ü,&ouml;,ö,&Ouml;,Ö,&auml;,ä,&Auml,Ä,&szlig;,ß)
if (%old.playlist != %playlist) { set %old.playlist %playlist | msg #channel Playlist : %old.playlist | unset %playlist | unset %playlist1 | unset %temp } 
else {
unset %playlist1
unset %playlist
unset %temp
unset %got.playlist
}
}
```
hab es genau nach diesem Tut gemacht aber geht irgentwie nicht kommt 
zwar den die meldung "Playlist wurde gecheckt aber es wird nix ausgegeben 
plz helf mir

thx in voraus


achso das
set %playlist $replace(%playlist,&uuml;,ü,&Uuml;,Ü,&ouml;,ö,&Ouml;,Ö,&auml;,ä,&Auml,Ä,&szlig;,ß)
gibt der hier nicht richtig an der wandelt das glecih um


----------



## Helmut Klein (27. Juni 2004)

Du scheinst noch recht wenig Wissen über Sockets bzw. das HTTP-Protokoll zu haben.

Ich nehme an du willst die Seite http://ip:8000/admin.cgi?mode=viewxml&admin=admin?adminpass=password aufrufen, oder?

Dann müsste die ganze Sache nämlich so aussehen.


```
on 1:SOCKOPEN:playlist: {
sockwrite -n $sockname GET /admin.cgi?mode=viewxml&admin=admin?adminpass=password HTTP/1.1
sockwrite -n $sockname Host: $sock($sockname).ip
sockwrite -n $sockname User-Agent: Mozilla
sockwrite -n $sockname $crlf
}
```

und im sockread Event solltest du dir anfangs immer alles ausgeben lassen, damit du siehst was überhaupt kommt.


```
on 1:sockread:playlist:{
sockread %sck.playlist
echo 8 %sck.playlist
}
```


----------

