Nowplaying PHP script voor SHOUTcast v2 (auto refresh)

We krijgen regelmatig vragen van mensen die op zoek zijn naar een Now Playing script voor SHOUTcast v2. Hieronder vind je de code die werkt met PHP 7.2 en SHOUTcast v2 Het script werkt zowel voor de oudere SHOUTcast versie 2.5 als met de nieuwe 2.6. Het toont de huidige titel en artiest op je website.
Kopieer de PHP code hieronder en sla deze op als b.v. now-playing.php
Voorbeeld: https://live-streams.nl/test/now-playing.php

<body style='background-color:#1D1F26;color:Orange'>
<script>

<!--

/*
Auto Refresh Page with Time script
*/

//enter refresh time in "minutes:seconds" Minutes should range from 0 to inifinity. Seconds should range from 0 to 59
var limit="0:30"

if (document.images){
var parselimit=limit.split(":")
parselimit=parselimit[0]*60+parselimit[1]*1
}
function beginrefresh(){
if (!document.images)
return
if (parselimit==1)
window.location.reload()
else{ 
parselimit-=1
curmin=Math.floor(parselimit/60)
cursec=parselimit%60
if (curmin!=0)
curtime=curmin+" minutes and "+cursec+" seconds left until page refresh!"
else
curtime=cursec+"Station naam"
window.status=curtime
setTimeout("beginrefresh()",1000)
}
}

window.onload=beginrefresh
//-->
</script>

<link href="npstyle.css" rel="stylesheet" type="text/css" />
<center><p class="np"><?

//pas server.adres aan naar jou shoutcast server
//pas poort aan naar jou poort
$fp = fsockopen("82.94.166.122", "8180", $errno, $errstr, 30);

//Kijken of er een connectie gemaakt kan worden ( of de server dus ONLINE is )
if(!$fp) {
    $connect=0;
}

//als die dat is dan haalt die 7.html binnen van de shoutcast server
if($connect != "0"){
fputs($fp,"GET /7.html HTTP/1.0\r\nUser-Agent: XML Getter (Mozilla Compatible)\r\n\r\n");
while(!feof($fp)) {
//de var $page krijgt als waarde de inhoud van 7.html van de shoutcast server
  $page = fgets($fp, 1000);
}

//Verbinding kan worden verbroken die hebben we niet meer nodig
fclose($fp);



//Het geen wat over blijft uit elkaar raveleen
$numbers = explode(",",$page);

//kijken of de Winamp plugin aan het "streamen" is
$streaming=$numbers[1];

//Als die dat is geef $song de waarde van de song uit $page ( 7.html )
if($streaming == "1"){
   $song = $numbers[6];
}

//Als die niet streamd dan geef $status de waarde nostream
if($streaming != "1"){
$status = "nostream";
}
}
//Als er in het begin geen connectie is gemaakt geef dan een text weer...
if($connect == "0"){
echo "Onze Server is op dit moment niet online<br>
Sorry voor het ongemak.";
}

else {
//Als er geen uitzending is geef dan ook melding weer
if($status == nostream){
echo "Op dit moment geen uitzending!";
}

//als alles goed is geef dan de song weer
else {
echo " $song";
}
}
?></p></center></body>

Comments are closed.