€
$
₴
₽
EN
RU
Vmeste.EU
Ribbon
Catalog
Files
Forums
Services
Main
Radiotalk
Custom
Технологии вещания, софт, скрипты
6 •
Посмотреть все темы
Скрипты для SHOUTcast
1
...
8
9
10
...
13
6245
Тарас
@tarasian666
05.09.2009
кому нить нужно скрипт для сбора инфы с sc_trans ? ( название текущей,
следующей
песни, инфа о плейлисте и др)
1
NiceSleep
@NiceSleep
28.09.2009
Парни всем привет! Слух помогите кто может написать модуля для CMS 2z на вывод статуса радио и так далее просто с php плохо дружу а все ети модули почему не ставляться
23
ex-
@ex-
22.12.2009
народ есть ли такой скрипт который выводит ипы тех кто слушает радио, очень надо
6245
Тарас
@tarasian666
03.01.2010
ex-
пишет:
народ есть ли такой скрипт который выводит ипы тех кто слушает радио, очень надо
для shoutcast точно есть, для icecast не встречал но думаю есть(да и самому написать возможно) но если есть доступ только к своему маунту то вряд ли получится
243
Владислав
@VladokZzz
11.01.2010
Может найдется доброволец, который создаст список скриптов с кратким описанием по примеру
САМ СКРИПТ - Описание (вывод IP слушателя)
САМ СКРИПТ - Описание (вывод плеера слушателя)
желательно на PHP, а не XML и пр.
Тогда можно было бы, брать просто отдельный кусок вставлять в свой код и получать нужный сервис!
6245
Тарас
@tarasian666
12.01.2010
надо искать скрипт который берет инфу с admin.cgi?mode=viewxml
такой скрипт есть точно, но где не помню
Отредактировано tarasian666 -
12.01.2010
243
Владислав
@VladokZzz
13.01.2010
tarasian666
пишет:
надо искать скрипт который берет инфу с admin.cgi?mode=viewxml
такой скрипт есть точно, но где не помню
Если найдешь, свистни, плз! Отблагодарю чем смогу
10
Роман
@Romankin
28.01.2010
Мои попытки установить winamp.php пока упорно заканчиваются фразой Server is Off-Air, try again later.
Чем же его этот сервер оживить?
Из настроек в этом скрипте только // last10.php?host={91.196.96.71}&port={8000}&n={10} три параметра меняются которые я на свои и заменил.
Но всё равно меня для скрипта нет
Хотя я есть =)
**********
Пользуюсь SHOUTcast_DNAS1.9.8_DSP_1.9.0 если что.
6245
Тарас
@tarasian666
28.01.2010
может на php хостинге запрещены сокеты?
покажите здесь внутренность скрипта ))
Отредактировано tarasian666 -
28.01.2010
104
Alex
@Alex_Neil
01.02.2010
Есть в природе скрипт "ТОП-10" например, или как примерно это можно реализовать по средствам PHP ?
10
Роман
@Romankin
12.02.2010
tarasian666
пишет:
может на php хостинге запрещены сокеты?
покажите здесь внутренность скрипта ))
Речь идет о
SHOUTcast Last 10 Played Stats
скрипт выложен на первой странице.
<?php
// last10.php -- get and display last n tracks...
// URL syntax:
// last10.php?host={XXX.XX.XXX.XX}&port={8000}&n={lastN}
//
// {bracketed} items need to be replaced or they will default as below.
//
// I can return Javascript or HTML only.
//
/* keep warnings from our output */
error_reporting(E_ERROR);
// -- Server Info here -- //
$yourIP = 'YOUR IP GOES HERE';
$yourPORT = 'YOUR PORT GOES HERE';
// -- Tweak Display Here -- //
$bgcolor = '#ffffff'; // Page background color
$tablew = '400'; // Table width
$toprow = '#c0c0c0'; // Top background color
$bottom = '#ffffff'; // Bottom background color
$border = '#000000'; // Border color
$thickness = '2'; // Border thickness
$padding = '4'; // Cell padding
$font = 'Verdana'; // Font
$fontsize = '2'; // Font size
$refresh = '30'; // How often should it refresh? (seconds)
// Return JavaScript or HTML
$jsOutput=FALSE; // TRUE=js | FALSE=HTML
// try to get the target from the url...
$host = $_REQUEST[host];
if (!$host) $host = $yourIP;
$port = $_REQUEST[port];
if (!$port) $port = $yourPORT;
$lf = chr(10); // 0x0A [\n]
// The lastN is configurable at the DNAS with, ShowLastSongs= it defaults to 10 and has a maximum of 20
$t_max = $_REQUEST[n];
if (!t_max || $t_max<1 || $t_max>19) $t_max=10;
//19 is the max here because 20=current_track+19
// Let's get /index.html first... to keep this short, there is no code to handle the dnas being down
// or not running, so the script will display nothing in those cases.
$connect_timeout=5;
$success=0;
$fp1 = fsockopen($host, $port, &$errno, &$errstr, $connect_timeout); //open connection
if(!$fp1) { //if this fails, I'm done....
fclose($fp1);
$success++;
} else {
$request="GET /index.html HTTP/1.1\r\nHost:" . $host . ":" . $port . "\r\nUser-Agent: SHOUTcast DNAS Status [index] * (Mozilla/PHP)\r\nConnection: close\r\n\r\n"; //get index.html
fputs($fp1,$request,strlen($request));
$page='';
while(!feof($fp1)) {
$page .= fread($fp1, 16384);
}
fclose($fp1);
// now I have the entire /index.html in $page -- all I want from here is the current track...
// (hint-hint)
$song00 = ereg_replace("</b></td>.*", "", ereg_replace(".*Current Song: </font></td><td><font class=default><b>", "", $page)); // easy, right <img src="images/smilies/smile.gif" border="0" alt="">
// now let's get /played.html... (this is kinda long)
$fp = fsockopen($host, $port, &$errno, &$errstr, $connect_timeout);
if(!$fp) { //if connection could not be made
fclose($fp);
$success++;
} else {
$request="GET /played.html HTTP/1.1\r\nHost: " . $host . ":" . $port . "\r\nUser-Agent: SHOUTcast DNAS Status [played] * (Mozilla/PHP)\r\n"."Connection: close\r\n\r\n";
fputs($fp,$request,strlen($request));
$page='';
while (!feof($fp)) {
$page .= fread($fp, 16384);
}
fclose($fp); //close connection
$played_html=$page;
if ($played_html) {
$played_html= ereg_replace('<x>','|-|',ereg_replace('</tr>','',ereg_replace('</td><td>','<x>',ereg_replace('<tr><td>','',ereg_replace('</tr>','</tr>' . $lf,ereg_replace('-->','--]',ereg_replace('<!--','[!--',ereg_replace('</table><br><br>.*','',ereg_replace('.*<b>Current Song</b></td></tr>','',$played_html)))))))));
$xxn=strlen($played_html);
$r=2;
$t_count=0;
$reading=0;
$track[0]=$song00;
while ($r<$xxn & $t_count<=$t_max){
$cur=substr($played_html,$r,1);
if ($cur==$lf) $reading=0;
if ($reading==1) $track[$t_count] .= $cur;
if ($cur=="|" & substr($played_html,$r-1,1)=="-" & substr($played_html,$r-2,1)=="|") {
$reading=1;
$t_count++;
}
$r++;
}
}
}
}
// I now have $track[0-N] containg the current plus last N tracks...
// Output time...
if ($success==0) {
if ($jsOutput) { // JavaScript - used as <script src=...></script>
header('Content-type: text/javascript');
} else { // HTML... (iFrames anyone?)
echo '<HTML>
<HEAD><TITLE>TITLE OF YOUR PAGE HERE - Now Playing: ' . $track[0] . '</title>
<meta http-equiv="refresh" content="' . $refresh . ';URL=' . $_SERVER['PHP_SELF'] . '?host=' . $host . '&port=' . $port . '">
</head>
<BODY bgcolor=' . $bgcolor . '>';
}
$r=0;
$output_string='';
//tweak the output string (the table init) here....
$output_string .= '<table width="' . $tablew . '" style="border-collapse: collapse" border="' . $thickness . '" bordercolor="' . $border . '"><tr bgcolor="' . $toprow . '"><td>
<table width="100%" border="0" cellpadding="' . $padding . '"><tr><td>
<font face=' . $font . ' size=' . $fontsize . '>'; //Now playing...
while ($r<=$t_max){
if ($r==0) $output_string .= 'Now Playing:<br> <b>'.str_replace("'", "'",str_replace('"', '"',$track[$r])).'</b></td></tr></table></td></tr><tr><td><table bgcolor=' . $bottom . ' width="100%" border="0" cellpadding="' . $padding . '"><tr><td><br><font face=' . $font . ' size=' . $fontsize . '><i>Before that you heard:</i><br><br>';
else $output_string .= str_replace("'", "'",str_replace('"', '"',$track[$r])) . '<br>';
$r++;
}
// I also want to close the table code now....
$output_string .= '</td></tr></table></td></tr></font></td></tr></table>';
if ($jsOutput) {
echo "document.write('" . $output_string . "');";
} else {
echo $output_string . '</body></html>';
}
} else { // I couldn't connect to the DNAS
if ($jsOutput) echo "document.write('Off Air');";
else echo "<HTML><HEAD><TITLE>Off-Air</title></head>
<BODY bgcolor=" . $bgcolor . "><font face=" . $font . " size=" . $fontsize . ">Server is <b>Off-Air</b>, try again later.</body></html>";
}
?>
Добавлено спустя 1 минуту 53 секунды:
Мои данные.
<?php
// last10.php -- get and display last n tracks...
// URL syntax:
// last10.php?host={91.196.96.71}&port={8000}&n={10}
//
// {bracketed} items need to be replaced or they will default as below.
//
// I can return Javascript or HTML only.
//
/* keep warnings from our output */
error_reporting(E_ERROR);
// -- Server Info here -- //
$yourIP = '91.196.96.71';
$yourPORT = '8000';
// -- Tweak Display Here -- //
6245
Тарас
@tarasian666
12.02.2010
Romankin
пишет:
// last10.php?host={91.196.96.71}&port={8000}&n={10}
заполнять ненадо,
просто пример использования скрипта
**********
2
dmsvoboda
@dmsvoboda
23.02.2010
приветствую всех , я может пишу не в ту тему но не один скрипт у меня почему то не запускается.Хоть ставлю порт и адрес сервера в скриптах показано что сервер оффлайн хоть он и работает . может через хост не проходит переадрисация на узнование статуса. да и к тому же на сервере находится движок DLE он на php и он хорошо работает но если поставить модуль который как и эти скрипты узнают информацию например о игровом сервере, то эфект тот же показывает оффлайн хоть сервер работает.
В чём может быть проблема?
6245
Тарас
@tarasian666
23.02.2010
хостер запретил соккеты или другую функцию которая используется в скрипте
Отредактировано tarasian666 -
23.02.2010
2
dmsvoboda
@dmsvoboda
23.02.2010
т.е единственный выход сменить хостера?
6245
Тарас
@tarasian666
23.02.2010
если дело в запрещенных функциях php то да
8
MWRAZOR
@MWRAZOR
02.03.2010
Есть два вопроса:
1). Можно ли сделать чтобы Full SHOUTcast Server Stats показывал русские символы?
2). Есть ли какой-нибудь информер для шоуткаст онлайн/офлайн чтобы вставить на форуме в подпись?
6245
Тарас
@tarasian666
03.03.2010
1 если получится подружить функцию xml_parse_into_struct с кирилицой
2 если говорите о статусе сервера оффлайн/онлайн то есть
Отредактировано tarasian666 -
03.03.2010
11
madfragger
@madfragger
14.05.2010
Нужен скрипт,для вывод в верхнюю часть сайта,что играет в данный момент на станции,видел на некоторых сайтах это дело бегущей строкой с автообновлением.
6245
Тарас
@tarasian666
14.05.2010
автообновление - <iframe> или скрипт на ajax
бегущая строка - <marquee> или скрипт на javascript