Тема: Нужен скрипт для вывода тегов из IceCast на сайт

Нужен скрипт для вывода названия текущего трека на сайт.

Re: Нужен скрипт для вывода тегов из IceCast на сайт

Shoutcast? Icecast?

Radio-Tochka.com:
- создание интернет радио станций
- различные модули (плееры, виджеты, скрипты) и полностью готовые сайты для радио
- мобильные приложения для прослушивания Вашего радио на смарфонах и планшетах
http://radio-tochka.com

Re: Нужен скрипт для вывода тегов из IceCast на сайт

Radio-Tochka.com пишет:

Shoutcast? Icecast?

IceCast

Re: Нужен скрипт для вывода тегов из IceCast на сайт

Ссылку на поток можете опубликовать? Нужно версию посмотреть.

Radio-Tochka.com:
- создание интернет радио станций
- различные модули (плееры, виджеты, скрипты) и полностью готовые сайты для радио
- мобильные приложения для прослушивания Вашего радио на смарфонах и планшетах
http://radio-tochka.com

Re: Нужен скрипт для вывода тегов из IceCast на сайт

Radio-Tochka.com пишет:

Ссылку на поток можете опубликовать? Нужно версию посмотреть.

http://185.9.146.179:8000/
Сейчас идет тестирование Сервера и ПО

Re: Нужен скрипт для вывода тегов из IceCast на сайт

Кладем в web директорию icecast'a эти два файла:
http://radio-tochka.com/icecast/status-json.xsl
http://radio-tochka.com/icecast/xml2json.xslt

после этого из Javascript можно сделать запрос по адресу http://185.9.146.179:8000/status-json.xsl и получить JSON со статусом трансляции.
Останется сделать вывод этой информации на странице, вот пример скрипта:

<script src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
<script>

var timeout = 5; // интервал обновления информации в секундах

function getStats(){
  $.ajax({
    url: "http://185.9.146.179:8000/status-json.xsl",
    success: function( response ) {
        $('#song-title').text(response.icestats.source.title)
    }
  });
}
getStats();
setInterval(getStats, timeout * 1000);

</script>

<div id="song-title"></div>

Демо (с другим потоком)
http://radio-tochka.com/icecast

Отредактировано Radio-Tochka.com (25-10-2015 00:35:42)

Radio-Tochka.com:
- создание интернет радио станций
- различные модули (плееры, виджеты, скрипты) и полностью готовые сайты для радио
- мобильные приложения для прослушивания Вашего радио на смарфонах и планшетах
http://radio-tochka.com

Re: Нужен скрипт для вывода тегов из IceCast на сайт

Radio-Tochka.com пишет:

Останется сделать вывод этой информации на странице

Все сделал. Но отображается только название трека, исполнителя нет
http://185.9.146.179:8000/test.html

Re: Нужен скрипт для вывода тегов из IceCast на сайт

Если нужна полная строка с исполнителем и названием трэка, то в скрипте заменить это:

$('#song-title').text(response.icestats.source.title)

на

$('#song-title').text(response.icestats.source.yp_currently_playing)
Radio-Tochka.com:
- создание интернет радио станций
- различные модули (плееры, виджеты, скрипты) и полностью готовые сайты для радио
- мобильные приложения для прослушивания Вашего радио на смарфонах и планшетах
http://radio-tochka.com

Re: Нужен скрипт для вывода тегов из IceCast на сайт

Radio-Tochka.com пишет:

Если нужна полная строка с исполнителем и названием трэка, то в скрипте заменить это:

$('#song-title').text(response.icestats.source.title)

на

$('#song-title').text(response.icestats.source.yp_currently_playing)

Спасибо! Возможно, еще понадобится Ваша помощь позднее

Re: Нужен скрипт для вывода тегов из IceCast на сайт

Если Два потока на одном сервере IceCast (mp3 и aacp+), то не выводится информация о треке.
Как в таком случаи быть?

Re: Нужен скрипт для вывода тегов из IceCast на сайт

теперь, когда их два, нужно взять первый из массива:

$('#song-title').text(response.icestats.source[0].yp_currently_playing)
Radio-Tochka.com:
- создание интернет радио станций
- различные модули (плееры, виджеты, скрипты) и полностью готовые сайты для радио
- мобильные приложения для прослушивания Вашего радио на смарфонах и планшетах
http://radio-tochka.com

Re: Нужен скрипт для вывода тегов из IceCast на сайт

СПАСИБО!

Re: Нужен скрипт для вывода тегов из IceCast на сайт

Можно ли сделать чтобы название трека сохранялось и соответственно переписывалось в случаи изменения в .txt файл, а оттуда он будет выводиться в плеер на сайте. Способ брать из текстового файла у меня есть, мне нужно чтобы из скрипта сохранялось в этот файл

14

Re: Нужен скрипт для вывода тегов из IceCast на сайт

Установил  icecast 2.4.2.
Использую скрипт от Radio-Tochka.com:

<script src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
<script>
var timeout = 5; // интервал обновления информации в секундах
function getStats(){
    $.ajax({
        url:"http://188.166.110.220:8000/status-json.xsl",
        success:function(response){
            $('#song-title').text(response.icestats.source.title)
        }
    });
}
getStats();
setInterval(getStats, timeout * 1000);
</script>

<div id="song-title"></div>

Ничего не кажет.. в то же время файл "http://188.166.110.220:8000/status-json.xsl" доступен через браузер.
Пробовал использовать Ваш файл "http://185.9.146.179:8000/status-json.xsl" - все работает: вытаскиваю все данные, какие хочу, то есть с принципом работы немного разобрался.
При использовании файла со своего сервера  - ничего не отображает. Пробовал обратиться и к text(response.icestats.source.artist) , и к text(response.icestats.source.server_url) - ни в какую..

Файлы
/icecast/status-json.xsl
/icecast/xml2json.xslt
на месте, содержание стандартно, ничего не менял.


Есть разница в поведении между моим и Вашим status-json.xs: при обращении через браузер у мой status-json.xs открывается прямо в браузере, а у Вас браузер сохраняет файл с именем "file-".
Хотя подозреваю, что в данном случае дело в content-type вашего файла, и роли не играет.


Как вывести название трека? Что я делаю не так?

Отредактировано yakoff (05-11-2015 00:38:46)

15

Re: Нужен скрипт для вывода тегов из IceCast на сайт

Уважаемые форумчане! ну помогите, брутфорс кодинг положительных результатов не дает.

16

Re: Нужен скрипт для вывода тегов из IceCast на сайт

Добрый день! Сделал вывод названия треков по вашему скрипту и все отлично работает. Но есть один вопрос, почему в логах icecast с каждого IP идет от 5 до 20 запросов в минуту? В коде я указал, чтобы обновление было раз в 60 сек. Вот пример лога:

77.79.136.153 - - [23/Aug/2018:09:21:02 +0300] "GET /status-json.xsl HTTP/1.1" 200 4807 "ссылка" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36" 0
77.79.136.153 - - [23/Aug/2018:09:21:02 +0300] "GET /status-json.xsl HTTP/1.1" 200 4807 "ссылка" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36" 0
77.79.136.153 - - [23/Aug/2018:09:21:02 +0300] "GET /status-json.xsl HTTP/1.1" 200 4807 "ссылка" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36" 0
77.79.136.153 - - [23/Aug/2018:09:21:02 +0300] "GET /status-json.xsl HTTP/1.1" 200 4807 "ссылка" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36" 0
77.79.136.153 - - [23/Aug/2018:09:21:02 +0300] "GET /status-json.xsl HTTP/1.1" 200 4807 "ссылка" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36" 0
77.79.136.153 - - [23/Aug/2018:09:21:02 +0300] "GET /status-json.xsl HTTP/1.1" 200 4807 "ссылка" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36" 0
77.79.136.153 - - [23/Aug/2018:09:21:02 +0300] "GET /status-json.xsl HTTP/1.1" 200 4807 "ссылка" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36" 0
77.79.136.153 - - [23/Aug/2018:09:21:02 +0300] "GET /status-json.xsl HTTP/1.1" 200 4807 "ссылка" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36" 0
77.79.136.153 - - [23/Aug/2018:09:21:02 +0300] "GET /status-json.xsl HTTP/1.1" 200 4807 "ссылка" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36" 0
77.79.136.153 - - [23/Aug/2018:09:21:02 +0300] "GET /status-json.xsl HTTP/1.1" 200 4807 "ссылка" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36" 0
77.79.136.153 - - [23/Aug/2018:09:21:02 +0300] "GET /status-json.xsl HTTP/1.1" 200 4807 "ссылка" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36" 0
77.79.136.153 - - [23/Aug/2018:09:21:02 +0300] "GET /status-json.xsl HTTP/1.1" 200 4807 "ссылка" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36" 0
77.79.136.153 - - [23/Aug/2018:09:21:02 +0300] "GET /status-json.xsl HTTP/1.1" 200 4807 "ссылка" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36" 0

17

Re: Нужен скрипт для вывода тегов из IceCast на сайт

И еще вопрос. Всё это проработало чуть меньше суток, и в итоге айскаст нагрузил проц на 100%. От чего это вдруг?