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

Скрипты для SHOUTcast

 

2605
Александр @AlexIT
lazarev смотри первую страницу этой темы, погугли, скриптов для шауткаста в инете море.

0
11
zil @zil
Вот код скрипта:
  1. <?php html_entity_decode($content,0,"cp1251")>
  2. // Shoutcast Server Stats
  3. // Parses shoutcasts xml to make an effective stats thing for any website
  4. // ©2004-2005 Daniel Brown **********
  5. // Please refer to the readme file for use.
  6. // Add-On MAXLISTNERS insead of the / 10 MAXLISTENERS which was set, and the BITRATE add-on.
  7. // Online and Offline graphics, and add-on code.
  8. // Better HTML Script.
  9. // Do Not Try To Edit This Only Unless You Know What You're Doing!!!!!!!
  10. include('config_radio.php');
  11. $scfp = fsockopen("$scip", $scport, &$errno, &$errstr, 30);
  12. if(!$scfp) {
  13. $scsuccs=1;
  14. echo''.$scdef.' is Offline';
  15. }
  16. if($scsuccs!=1){
  17. fputs($scfp,"GET /admin.cgi?pass=$scpass&mode=viewxml HTTP/1.0\r\nUser-Agent: SHOUTcast Song Status (Mozilla Compatible)\r\n\r\n");
  18. while(!feof($scfp)) {
  19. $page .= fgets($scfp, 1000);
  20. }
  21. ######################################################################################################################
  22. /////////////////////////part 1 \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
  23. //define xml elements
  24. $loop = array("STREAMSTATUS", "BITRATE", "SERVERTITLE", "CURRENTLISTENERS", "MAXLISTENERS", "BITRATE", "RADIO",);
  25. $y=0;
  26. while($loop[$y]!=''){
  27. $pageed = ereg_replace(".*<$loop[$y]>", "", $page);
  28. $scphp = strtolower($loop[$y]);
  29. $$scphp = ereg_replace("</$loop[$y]>.*", "", $pageed);
  30. if($loop[$y]==SERVERGENRE || $loop[$y]==SERVERTITLE || $loop[$y]==SONGTITLE || $loop[$y]==SERVERTITLE)
  31. $$scphp = urldecode($$scphp);
  32. // uncomment the next line to see all variables
  33. //echo'$'.$scphp.' = '.$$scphp.'<br>';
  34. $y++;
  35. }
  36. //end intro xml elements
  37. ######################################################################################################################
  38. ######################################################################################################################
  39. /////////////////////////part 2\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
  40. //get song info and history
  41. $pageed = ereg_replace(".*<SONGHISTORY>", "", $page);
  42. $pageed = ereg_replace("<SONGHISTORY>.*", "", $pageed);
  43. $songatime = explode("<SONG>", $pageed);
  44. $r=1;
  45. while($songatime[$r]!=""){
  46. $t=$r-1;
  47. $playedat[$t] = ereg_replace(".*<PLAYEDAT>", "", $songatime[$r]);
  48. $playedat[$t] = ereg_replace("</PLAYEDAT>.*", "", $playedat[$t]);
  49. $song[$t] = ereg_replace(".*<TITLE>", "", $songatime[$r]);
  50. $song[$t] = ereg_replace("</TITLE>.*", "", $song[$t]);
  51. $song[$t] = urldecode($song[$t]);
  52. $dj[$t] = ereg_replace(".*<SERVERTITLE>", "", $page);
  53. $dj[$t] = ereg_replace("</SERVERTITLE>.*", "", $pageed);
  54. $r++;
  55. }
  56. //end song info
  57. fclose($scfp);
  58. }
  59. //display stats
  60. if($streamstatus == "1"){
  61. //you may edit the html below, make sure to keep variable intact
  62. echo'
  63. <html>
  64. <head>
  65. <meta http-equiv="content-type" content="text/html; charset="windows-1251" />
  66. <link rel=stylesheet href="" type="text/css">
  67. <title>'.$scdef.'</title>
  68. </head>
  69. <body text="" bgcolor="">
  70. <p align="center"><center>
  71. <img src="http://www.r-radio.org/images/radio-online.gif"><br>
  72. <b>За вертушкой:</b> '.$servertitle.'<br>
  73. <b>Сейчас играет:</b> '.$song[0].'<br>
  74. <b>Качество:</b> '.$bitrate.'kbps<br>
  75. <b>Нас слушают:</b> '.$currentlisteners.'<br>
  76. <b>Слушать:</b> <a href=http://89.108.83.167:8000/listen.pls><img src=/images/winamp.gif border=0></a> <a href=mms://89.108.83.167:8000/><img src=/images/wmp.gif border=0></a> <a href="http://www.r-radio.org/radio.htm" target="blank"><img src=/images/open.gif border=0></a></p>
  77. </body>
  78. </html>';
  79. }
  80. if($streamstatus == "0")
  81. {
  82. //you may edit the html below, make sure to keep variable intact
  83. echo'
  84. <html>
  85. <head>
  86. <meta http-equiv="content-type" content="text/html; charset="windows-1251" />
  87. <link rel=stylesheet href="" type="text/css">
  88. <title>Radio Server Is Offline</title>
  89. </head>
  90. <body text="" bgcolor="">
  91. <center>
  92. <img src="http://www.r-radio.org/images/radio-offline.gif">
  93. </body>
  94. </html>';
  95. }
  96. ?>

Всёравно не пашет =(

0
2605
Александр @AlexIT
  1. <?php
  2. html_entity_decode($content,0,"cp1251")
  3. ...

$content=..

Так чтоли попробуй..

0
11
zil @zil
AlexIT пишет:

  1. <?php
  2. html_entity_decode($content,0,"cp1251")
  3. ...

$content=..

Так чтоли попробуй..

Сделал вот так:

  1. <?php
  2. html_entity_decode($content=0, "cp1251")

И пишет вот это - Parse error: syntax error, unexpected T_INCLUDE in /home/torpedo/public_html/r-radio/radio_stats.php on line 15

15 строчка - include('config_radio.php');

Отредактировано zil - 28.05.2007
0
11
zil @zil
ап

0
140
GOD @GOD
Извеняйте за оффтоп

lacoste чё ты тут забыл????

0
11
zil @zil
включи мозг =)))

0
12
Rainbow_Demon @Rainbow_Demon
Да, включить мозг не мешало бы.

$content = html_entity_decode($content, 0, "cp1251");

P.S. Вообще-то функция должна возвращать значение, это по-моему даже в школе учат.

0
11
Serz @Serz
Kak zdelatj chtobi mozno bilo naprimer na sajte postavlju playlist, chtobi ljudi zakazivali pesjni i chtob pokazivala kakaja pesjnja zvuchit schas v efire i kakaja pesjnja dleduschaja.Kakoj dlja etogo nuzen skript? i kak ego postavitj na sajt?Raskazite pozalusta podrobnee.

0
1400
Pheoru @Pheoru
Почитай внимательно тему, все освещалось.

0
2605
Александр @AlexIT
Serz, для заказов с сайта samPHP - идет в комплекте с SAM Broadcaster, для остального есть скрипты - см. первую страницу данного топа.

0
4
foma @foma
Rainbow_Demon пишет:

Для тех кто столкнется с проблемами кодировки: SHOUTcast отдает поумолчанию в windows-1252, в конфигах вроде бы поменять это нельзя. Если использовать вэб-интерфейс сервера то боротся с этим не возможно, если использовать скрипты для получения контента, нужно использовать такую функцию html_entity_decode($content,0,"cp1251") чтоб получать названия трэков в нормальной кодировке.

все равно русские буквы не правильно отображаются. отображает только несколько букв "я"

0
162
arseny @arseny
Эй а ты через что вещаешь? Случайно не через Shoutcast DSP plugin?

0
1400
Pheoru @Pheoru
Для "ShoutCast DSP Plugin" есть специальный патч.

0
2605
Александр @AlexIT
И лежит он на саундкодере, ссылка есть в моей подписи.

0
20
Anton @Anton
Приветик.
мне нужна помощь..
у меня почему то всегда при установке скриптов выскакивает что сервер офлайн.. хотя он онлайн.. и меня могут слышать с других компов...
и к тому же если я захожу на svoy.ip:80 то там тоже все ок.. и люди тоже видят ту страничку..

кто знает почему? может я в скрипте что то не так делаю?
и еще ********** тоже меня видит..
я просто щас делаю сайт для своего будущего радио.. вот..

заранее благодарен.

0
162
arseny @arseny
какой конкретно скрипт используешь? Если радио нормально вещает, и его можно слушать, значит скрипт неправильно работает, или настроен неправильно (ip:port) в самом скрипте. Покажи в общем сам скрипт и ссылку дай на свой поток.

0
2605
Александр @AlexIT
В некоторых скриптах необходимо указывать пароль к админке.

0
20
Anton @Anton
пароль от админки, это тот где написано adminpass в настройках, да?
и еще у меня к вам вопрос как входить в админку.. какой надо указывать логин.. хехе а то у меня никогда не получается.. :(

вот ссылка: **********
а скрипт Full SHOUTcast Server Stats, самый первый в этой теме.. хихи

$host = "84.109.13.243";
$port = "80";
$password = "мой_пароль";

так вот пароль я пробывал ставить и adminpass и пароль которым ващаю из винампа.. вот..

0
162
arseny @arseny
login: admin

0





Согласие на обработку данных на нашем сайте

Продолжая просматривать страницу, вы соглашаетесь с использованием файлов «Cookie» и с Политикой конфиденциальности «Privacy».
Наверху или внизу страницы вы можете изменить валюту и язык по умолчанию. Английская версия сайта ещё находится в доработке и доступна не полностью.