ОсновноеRadiotalkПользовательское
Технологии вещания, софт, скрипты
3   •   Посмотреть все темы

Нужен информер, который показывает трек и кол-во слушате icecast радио

 

49
aleksanders @aleksanders
Доброго времени суток.
Подскажите пожалуйста скрипт, который показывает кол-во слушателей и название трека. У меня стоит Icecast...
Желательно чтобы был под DLE, но можно и отдельный. Просто хочу его в блок поставить на сайт.
Я здесь копался и один нашел, но он показывает только первый поток в списке. Мне нужно, чтобы указать конкретный поток. А то он чужой показывает, а не мой (((
Заранее благодарен!

6245
Тарас @tarasian666
плохо искали
**********

49
aleksanders @aleksanders
Взял создал файл radio.php и туда скинул это:

<?PHP
$file_name='http://радио:8000/status2.xsl?mount=/z2';
$r=fopen($file_name,'r');
$text=fread($r,1000);
fclose($r);
$mass=explode(",", $text);
$current=$mass [16];
$listens=$mass [14];
$description=$mass [13];
$cm=explode(" - ", $current);


echo "<br>
артист ".$cm[1]."<br>
трек ".$cm[2]."<br>
Слушают ".$listens."<br>
<br>
";
?>

Скинул его на хостинг!
Открыл и вот что показывает: **********
Тут картинка!!!

Получается, что не отображает ничего!!!

6245
Тарас @tarasian666
лучше дайте ссылку на скрипт и на поток

49
aleksanders @aleksanders
**********

а это на радио neoradio.ath.cx, но он у вас наверное не откроется, т.к. он работает только по внутреннему (Беларусь), внешки у него вроде нету! сайт должен открыться!

6245
Тарас @tarasian666
сайт где размещен?

49
aleksanders @aleksanders
В смысле где? В какой стране или что?

6245
Тарас @tarasian666
хостинг сайта в какой стране

49
aleksanders @aleksanders
БЕЛАРУСЬ

6245
Тарас @tarasian666
ну незнаю как у вас там с доступами..
может быть что на хостинге не разрешена функция fopen

49
aleksanders @aleksanders
а что-нить другое придумать можно? Я ставил какой-то другой. Он показывает кол-во слушателей и трек, но он показывает только первый потом, а я по счёту 4 вроде! :( Что можно придумать а? Плизззз!!

Добавлено спустя 1 минуту 6 секунд:
Добавлено спустя 57 секунд:
Если что-то надо, я могу скрины сделать и показыть, если у вас не открывает!

6245
Тарас @tarasian666
какой скрипт использовали?

49
aleksanders @aleksanders
<?php
$ip='neoradio.ath.cx';
$port='8000';
$fp = fsockopen("$ip", $port, &$errno, &$errstr, 5);
if(!$fp) {
$success=2;
echo'<table align=left>
<tr>
<td colspan="2">
<img src="/statimage/offline.gif" width="44" height="44">
<b><font face="Arial" size="2" color="#FF0000">'.$ice2_station.' выключен</b></td>
</tr>
</table>';
}

if($success!=2){
fputs($fp,"GET /status2.xsl HTTP/1.0\r\nUser-Agent: Icecast2 XSL Parser (Mozilla Compatible)\r\n\r\n");
while(!feof($fp)) {
$page .= fgets($fp, 1000);
}
fclose($fp);
$page = ereg_replace(".*<pre>", "", $page);
$page = ereg_replace("</pre>.*", ",", $page);
$numbers = explode(",",$page);
$mount = $numbers[0];
$connections = $numbers[1];
$stream_n = $numbers[2];

$listeners = $numbers[3];
$desc = $numbers[4];
$cur_song = $numbers[5];
$str_url = $numbers[6];
$client_info = $numbers[7];
$test1 = $numbers[8];
$test2 = $numbers[9];
$test3 = $numbers[10];
$mount = $numbers[11];
$connections = $numbers[12];
$station =$numbers[13];
$listeners = $numbers[14];
$description = $numbers[15];
$cur_song = $numbers[16];
$www_url = $numbers[17];
echo'
<table align=center>
<tr><td><img src="/statimage/icecast.gif" width="22" height="22">&nbsp <font size="5">Radiostation LIVE</td></tr>
<tr><td align=left><img src="/statimage/listeners.gif" width="22" height="18">&nbsp <font size="4">Слушателей: '.$listeners.'</b></td></tr>
<tr><td align=left><img src="/statimage/tunes.gif" width="21" height="21"><font size="4">Текущая песня: '.$cur_song.'</td></tr>
<tr><td align=left><img src="/statimage/play.gif" width="15" height="15">
<a href="http://neoradio.ath.cx:'.$port.''.$mount.'.m3u" target="_blank"><font size="4", color=blue><b>Слушать радио (click)</font></a></b></td></tr>

</table>';
}


?>

6245
Тарас @tarasian666
fputs($fp,"GET /status2.xsl HTTP/1.0\r\nUser-Agent: Icecast2 XSL Parser (Mozilla Compatible)\r\n\r\n");
заменить на fputs($fp,"GET /status2.xsl?mount=/ваш маунт HTTP/1.0\r\nUser-Agent: Icecast2 XSL Parser (Mozilla Compatible)\r\n\r\n");

49
aleksanders @aleksanders
ох спасибо большое. Всё заработало! А можно как-нить сделать, чтобы когда отключено, то и писала отключено? А там в строчках просто пустата и всё!!!

6245
Тарас @tarasian666
Показать текст

49
aleksanders @aleksanders
сейчас всё пропала вообще! Просто белый лист и всё!

6245
Тарас @tarasian666
вы изменили код или просто поставили то что я последнее написал?

49
aleksanders @aleksanders
скопировал ваше это посленее и вставил там где начинается
$cur_song = $numbers[16];
$www_url = $numbers[17];

6245
Тарас @tarasian666
и должно закончиться в таком виде типа
Показать текст