1

Тема: Вапрос:Статистика эфиров

Уважаемые!
Скажатие возможно или не возможно сделать Статистику эфиров тоистить типо так:

DJ                                                             количество "слушателе-минут".        Минут эфира     Слушателей в среднем

Sing-Radio - DJ Talk - 123456789                  14445                                             3705                     19.4939

Если возомжно это  сделать есть какой код или что в этом ?

2

Re: Вапрос:Статистика эфиров

Вы можете организовать это самостоятельно.
Вся необходимая информация содержится на этой странице: http://listen.fmhost.ru/
Ее необходимо оттуда "забирать" с помощью php-скрипта и "собирать" в таблицу.

3

Re: Вапрос:Статистика эфиров

Вкратце организовано это так: Сперва скрипт парсит статы айскаста и записывает в базу статистику: какой ведущий, сколько слушателей, время итд
далее на основании этих данных в базе можно графики рисовать и вести статистику какую Вы указали.

4

Re: Вапрос:Статистика эфиров

Пример скрипта, можно?
Желательно, который на php!

5

Re: Вапрос:Статистика эфиров

Скрипт такой имеется и на форуме. Вопрос есть один по поводу скрипта, можно ли сделать авто обновление по статистике? Буру признателен, если поможите!!

Вот скрипт:

<?php

//СОЗДАЕМ КОНСТАНТЫ
define (NameStation, '/Mount'); //******* НАЗВАНИЕ РАДИО *******
define (RadioOff, 'Радио выключено'); //******* СООБЩЕНИЕ О НЕРАБОТАЮЩЕМ РАДИО *******
//******* ТУТ ИДУТ КОНСТАНТЫ ОТОБРАЖЕНИЯ ИНФОРМАЦИИ: 0 - НЕОТОБРАЖАТЬ, 1 - ОТОБРАЖАТЬ; В КАВЫЧКАХ УКАЗЫВАЕТСЯ НАЗВАНИЕ ПУНКТА *******
define (StreamTitle, 1); define (StreamTitleText, 'Заголовок: ');
define (StreamDescription, 1); define (StreamDescriptionText, 'Описание: ');
define (ContentType, 1); define (ContentTypeText, 'Тип контента: ');
define (Bitrate, 1); define (BitrateText, 'Битрейт: ');
define (CurrentListeners, 1); define (CurrentListenersText, 'Текущие слушатели: ');
define (PeakListeners, 1); define (PeakListenersText, 'Максимально слушателей: ');
define (StreamGenre, 1); define (StreamGenreText, 'Жанр: ');
define (StreamURL, 1); define (StreamURLText, 'Адрес: ');
define (CurrentSong, 1); define (CurrentSongText, 'Сейчас играет: ' );

define (NoStream, 'Нет потока');//******* СООБЩЕНИЕ ЕСЛИ НЕ НАЙДЕН ПУНКТ *******
define (Separator, '<br \>'); //******* РАЗДЕЛИТЕЛЬ МЕЖДУ ПУНКТАМИ *******

//******* ЗАГРУЖАЕМ ФАЙЛ *******
$file = file_get_contents('http://fmhost.ru:8000/statu5.xsl');
//******* ВЫТАСКИВАЕМ ИНФОРМАЦИЮ О РАДИО *******
$start = strpos($file, 'Mount Point : (' . NameStation . ') :') or $start = 0;
$start += strlen('Mount Point : (' . NameStation . ') :');
$file = substr($file, $start);
$file = substr($file, 0, strpos($file, 'Mount Point'));
//******* НАЧИНАЕМ ОТОБРАЖАТЬ НУЖНУЮ ИНФОРМАЦИЮ *******
//******* ЗАГОЛОВОК ПОТОКА *******
if (StreamTitle == 1) {
    if (preg_match('#<td>Stream Title:<\/td><td class=\"streamdata\">(.*)<\/td>#Ui', $file, $m)) {
        $streamtitle = $m[1];
        echo StreamTitleText, $streamtitle, Separator;
    } else echo StreamTitleText, NoStream, Separator;
}

//******* ОПИСАНИЕ ПОТОКА *******
if (StreamDescription == 1) {
    if (preg_match('#<td>Stream Description:<\/td><td class=\"streamdata\">(.*)<\/td>#Ui', $file, $m)) {
        $streamdesc = $m[1];
        echo StreamDescriptionText, $streamdesc, Separator;
    } else echo StreamDescriptionText, NoStream, Separator;
}

//******* ТИП КОНТЕНТА *******
if (ContentType == 1) {
    if (preg_match('#<td>Content Type:<\/td><td class=\"streamdata\">(.*)<\/td>#Ui', $file, $m)) {
        $contenttype = $m[1];
        echo ContentTypeText, $contenttype, Separator;
    } else echo ContentTypeText, NoStream, Separator;
}

//******* БИТРЕЙТ *******
if (Bitrate == 1) {
    if (preg_match('#<td>Bitrate:<\/td><td class=\"streamdata\">(.*)<\/td>#Ui', $file, $m)) {
        $bitrate = $m[1];
        echo BitrateText, $bitrate, Separator;
    } else echo BitrateText, NoStream, Separator;
}

//******* КОЛИЧЕСТВО СЛУШАТЕЛЕЙ *******
if (CurrentListeners == 1) {
    if (preg_match('#<td>Current Listeners:<\/td><td class=\"streamdata\">(.*)<\/td>#Ui', $file, $m)) {
        $currentlisteners = $m[1];
        echo CurrentListenersText, $currentlisteners, Separator;
    } else echo CurrentListenersText, NoStream, Separator;
}

//******* МАКСИМАЛЬНОЕ КОЛ-ВО СЛУШАТЕЛЕЙ *******
if (PeakListeners == 1) {
    if (preg_match('#<td>Peak Listeners:<\/td><td class=\"streamdata\">(.*)<\/td>#Ui', $file, $m)) {
        $peaklisteners = $m[1];
        echo PeakListenersText, $peaklisteners, Separator;
    } else echo PeakListenersText, NoStream, Separator;
}

//******* ЖАНР ПОТОКА *******
if (StreamGenre == 1) {
    if (preg_match('#<td>Stream Genre:<\/td><td class=\"streamdata\">(.*)<\/td>#Ui', $file, $m)) {
        $streamgenre = $m[1];
        echo StreamGenreText, $streamgenre, Separator;
    } else echo StreamGenreText, NoStream, Separator;
}

//******* АДРЕС *******
if (StreamURL == 1) {
    if (preg_match('#<td>Stream URL:<\/td><td class=\"streamdata\">(.*)<\/td>#Ui', $file, $m)) {
        $streamurl = $m[1];
        echo StreamURLText, $streamurl, Separator;
    } else echo StreamURLText, NoStream, Separator;
}

//******* ИСПОЛНИТЕЛЬ *******
if (CurrentSong == 1) {
    if (preg_match('#<td>Current Song:<\/td><td class=\"streamdata\">(.*)<\/td>#Ui', $file, $m)) {
        $currentsong = $m[1];
        echo CurrentSongText, $currentsong, Separator;
    } else echo CurrentSongText, NoStream, Separator;
}
?>

Добавлено спустя     4 минуты   42 секунды:
Может это оно и есть, но только не знаю как привязать:

<head>
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<META HTTP-EQUIV="REFRESH" CONTENT="30;URL=.....php">
<link rel=stylesheet href="" type="text/css">
<title></title>
</head>

6

Re: Вапрос:Статистика эфиров

Можете использовать это, но тогда любая страница будет обновляться на ту, которую Вы укажите.
Привязывается это не к скрипту, а в самое начало, после тега <html>.

7

Re: Вапрос:Статистика эфиров

Благодарю, но я сделал отдельнйс критп с данными и вывел и привязал скрипт к чату!!! Думаю получится!!!

8

Re: Вапрос:Статистика эфиров

вообщем так, кому надо чтобы обновлялась статистика автоматически:

<?php

//СОЗДАЕМ КОНСТАНТЫ
define (NameStation, '/Mount'); //******* НАЗВАНИЕ РАДИО *******
define (RadioOff, 'Радио выключено'); //******* СООБЩЕНИЕ О НЕРАБОТАЮЩЕМ РАДИО *******
//******* ТУТ ИДУТ КОНСТАНТЫ ОТОБРАЖЕНИЯ ИНФОРМАЦИИ: 0 - НЕОТОБРАЖАТЬ, 1 - ОТОБРАЖАТЬ; В КАВЫЧКАХ УКАЗЫВАЕТСЯ НАЗВАНИЕ ПУНКТА *******
define (StreamTitle, 1); define (StreamTitleText, 'Заголовок: ');
define (StreamDescription, 1); define (StreamDescriptionText, 'Описание: ');
define (ContentType, 1); define (ContentTypeText, 'Тип контента: ');
define (Bitrate, 1); define (BitrateText, 'Битрейт: ');
define (CurrentListeners, 1); define (CurrentListenersText, 'Текущие слушатели: ');
define (PeakListeners, 1); define (PeakListenersText, 'Максимально слушателей: ');
define (StreamGenre, 1); define (StreamGenreText, 'Жанр: ');
define (StreamURL, 1); define (StreamURLText, 'Адрес: ');
define (CurrentSong, 1); define (CurrentSongText, 'Сейчас играет: ' );

define (NoStream, 'Нет потока');//******* СООБЩЕНИЕ ЕСЛИ НЕ НАЙДЕН ПУНКТ *******
define (Separator, '<br \>'); //******* РАЗДЕЛИТЕЛЬ МЕЖДУ ПУНКТАМИ *******

//******* ЗАГРУЖАЕМ ФАЙЛ *******
$file = file_get_contents('http://fmhost.ru:8000/statu5.xsl');
//******* ВЫТАСКИВАЕМ ИНФОРМАЦИЮ О РАДИО *******
$start = strpos($file, 'Mount Point : (' . NameStation . ') :') or $start = 0;
$start += strlen('Mount Point : (' . NameStation . ') :');
$file = substr($file, $start);
$file = substr($file, 0, strpos($file, 'Mount Point'));
//******* НАЧИНАЕМ ОТОБРАЖАТЬ НУЖНУЮ ИНФОРМАЦИЮ *******
echo'
<html>
<head>
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html_entity_decode($content,0,"cp1251")">
<META HTTP-EQUIV="REFRESH" CONTENT="30">
<link rel=stylesheet href="" type="text/css">
<title>'.$file.'</title>
</head>
</html>';
//******* ЗАГОЛОВОК ПОТОКА *******
if (StreamTitle == 1) {
    if (preg_match('#<td>Stream Title:<\/td><td class=\"streamdata\">(.*)<\/td>#Ui', $file, $m)) {
        $streamtitle = $m[1];
        echo StreamTitleText, $streamtitle, Separator;
    } else echo StreamTitleText, NoStream, Separator;
}

//******* ОПИСАНИЕ ПОТОКА *******
if (StreamDescription == 1) {
    if (preg_match('#<td>Stream Description:<\/td><td class=\"streamdata\">(.*)<\/td>#Ui', $file, $m)) {
        $streamdesc = $m[1];
        echo StreamDescriptionText, $streamdesc, Separator;
    } else echo StreamDescriptionText, NoStream, Separator;
}

//******* ТИП КОНТЕНТА *******
if (ContentType == 1) {
    if (preg_match('#<td>Content Type:<\/td><td class=\"streamdata\">(.*)<\/td>#Ui', $file, $m)) {
        $contenttype = $m[1];
        echo ContentTypeText, $contenttype, Separator;
    } else echo ContentTypeText, NoStream, Separator;
}

//******* БИТРЕЙТ *******
if (Bitrate == 1) {
    if (preg_match('#<td>Bitrate:<\/td><td class=\"streamdata\">(.*)<\/td>#Ui', $file, $m)) {
        $bitrate = $m[1];
        echo BitrateText, $bitrate, Separator;
    } else echo BitrateText, NoStream, Separator;
}

//******* КОЛИЧЕСТВО СЛУШАТЕЛЕЙ *******
if (CurrentListeners == 1) {
    if (preg_match('#<td>Current Listeners:<\/td><td class=\"streamdata\">(.*)<\/td>#Ui', $file, $m)) {
        $currentlisteners = $m[1];
        echo CurrentListenersText, $currentlisteners, Separator;
    } else echo CurrentListenersText, NoStream, Separator;
}

//******* МАКСИМАЛЬНОЕ КОЛ-ВО СЛУШАТЕЛЕЙ *******
if (PeakListeners == 1) {
    if (preg_match('#<td>Peak Listeners:<\/td><td class=\"streamdata\">(.*)<\/td>#Ui', $file, $m)) {
        $peaklisteners = $m[1];
        echo PeakListenersText, $peaklisteners, Separator;
    } else echo PeakListenersText, NoStream, Separator;
}

//******* ЖАНР ПОТОКА *******
if (StreamGenre == 1) {
    if (preg_match('#<td>Stream Genre:<\/td><td class=\"streamdata\">(.*)<\/td>#Ui', $file, $m)) {
        $streamgenre = $m[1];
        echo StreamGenreText, $streamgenre, Separator;
    } else echo StreamGenreText, NoStream, Separator;
}

//******* АДРЕС *******
if (StreamURL == 1) {
    if (preg_match('#<td>Stream URL:<\/td><td class=\"streamdata\">(.*)<\/td>#Ui', $file, $m)) {
        $streamurl = $m[1];
        echo StreamURLText, $streamurl, Separator;
    } else echo StreamURLText, NoStream, Separator;
}

//******* ИСПОЛНИТЕЛЬ *******
if (CurrentSong == 1) {
    if (preg_match('#<td>Current Song:<\/td><td class=\"streamdata\">(.*)<\/td>#Ui', $file, $m)) {
        $currentsong = $m[1];
        echo CurrentSongText, $currentsong, Separator;
    } else echo CurrentSongText, NoStream, Separator;
}
?>

9

Re: Вапрос:Статистика эфиров

А под html есть что нибудь подобное?

Первая сумская интернет радиостанция "LIVE" - http://www.radiolive.sumy.ua

10

Re: Вапрос:Статистика эфиров

Это нереально. JavaScript только если, и то такие скрипты пишутся собственноручно.

11

Re: Вапрос:Статистика эфиров

Чё-то у меня не получаеться http://s52.radikal.ru/i135/1107/93/ba1b0d984f60.png

Отредактировано Адиль (15-07-2011 19:27:39)

12

Re: Вапрос:Статистика эфиров

Неактуальный топик давно уже.
Используйте наши виджеты.

13

Re: Вапрос:Статистика эфиров

Не подскажите как в SAM подключить статистику для FM-Host? Что не пробовал, постоянно ошибку выдает!

14

Re: Вапрос:Статистика эфиров

Можно подключить только в том случает, когда есть админский пароль.

В здоровом теле - здоровый дух!