Документация по модулю IPTV и принадлежащим к нему страницам перенесена в Confluence http://abills.net.ua:8090/display/AB/IPTV

Iptv

Модуль Iptv предназначен для организации платных телевизионных трансляций.

  • ОТТ
  • Multicast
  • Unicast
  • Catv

Модуль Iptv обеспечивает автоматическую блокировку/разблокировку доступа клиентов к платным телевизионным трансляциям. С этой целью на сетевых коммутаторах, к которым непосредственно подключены клиенты, устанавливаются фильтры IGMP-сообщений.

Возможности

Схема работы

При работе с внешними сервисами модуль поддерживает следующие функции (не все провайдеры ОТТ поддерживают полный спектр функций, так что в некоторых системах не все функции будут работать)

add добавить абонента/подписку
info информация о абоненте/подписке на стороне провайдера ОТТ
change изминение абонента/подписки
del удаление абонента/подписки
negdeposit действия при негативном депозите
channels работа с каналами, индивидуальные каналы на абаонента
parent_control родительский контроль
screen_id работа с дополнительными экранами
send_message отправка сообщений абоненту
hangup Презегрузка/устройства

Поддерживаемые системы

Как работает

Предоставление услуги абоненту осуществляется при наличии средств на счету (положительном депозите) и статусе услуги «активно», также система учитывает дату активации и окончания услуги и статус основного аккаунта абонента.

Установка

Заведение таблиц

# mysql -D abills < /usr/abills/db/Iptv.sql

подключение модуля
abills/libexec/config.pl

@MODULES = (
            'Iptv'
            );

Настройка

abills/libexec/config.pl

$conf{IPTV_ALLOW_GIDS}='1,23,56'; Разрешить использование сервиса только определённым группам пользователей.
$conf{IPTV_CLOSE_PERIOD}=1; Снимать месячную абон. плату только после установки флага период закрыт.
Флаг устанавливается в меню / System configuration/ Television/ Closed Period/ (Закрытие финансового периода)
$conf{IPTV_USER_CHG_TP}=1; Изменение тарифного плана на следующий учётный период
$conf{IPTV_USER_CHG_CHANNELS}=1; Выбор каналов из интерфейса пользователя. Администратор может назначать дневную и месячную цену за просмотр каналов.
$conf{IPTV_USER_EXT_CMD}='iptv_access_ctl.pl LOGIN=%LOGIN%'; Внешняя программа которая выполняется при добавлении и изменении данных по сервису для пользователя
Программе передаются следующие данные:
%LOGIN%
%TP_ID%
%CID%
%STATUS%
$conf{IPTV_CMD_DEBUG}=1; Выводить внешнюю команду перед обработкой. Используется для отладки команд

Интерфейс диллера

Используя модуль Multidoms в системе есть возможность создать отдельного пользователя-диллера.

Принцип работы

Диллер может подключать новых абонентов, также у него есть возможности:

  • Изменять тариф.
  • Изменять статус.
  • Пополнять счет.

Диллер пополняет счет пользователям за счет своего кредита у провайдера за минусом диллерского процента. Например диллерский процент составляет 10%. Диллер пополняет счет абоненту на 100 единиц. Со счета диллера списывается 90 единиц.

Настройка

$conf{RESELER_SERVICES} = "Iptv";

Начало работы диллера

  1. Создать домен.
  2. Создать администратора домена.
  3. Создать первого пользователя в этом домене (этот пользователь в дальнейшем будет диллером).
  4. Установить пользователю диллерский процент (Клиент-Информация-Диллеры).

Теперь созданный пользователь может заходить в кабинет реселлера и начинать добавлять новых пользователей.

Работа с системой

Управление

Пользователи

Отчёты

Кабинет абонента

Отображение m3u в кабинете абонента

Включение $conf{IPTV_CLIENT_M3U}=1;

M3u LIST

Дополнительно

Ошибки кабинета абонента

800 Не активизирована услуга Услуга телевидение не активирована
801 Абонент не найден Ошибка работы программы
802 Не включена возможность изменять тарифный план Включите опцию $conf{IPTV_USER_CHG_TP}
803 Не разрешено изменять тарифный план. Для разерешения внесите тарифный план в группу и разрешие изминение ТП в группе
804 Не правильна дата изминния ТП
805 ДРугая ошибка обратисьесь к администратору
806 ДРугая ошибка обратисьесь к администратору
842 Недостаточно средств для перехода на данный ТП Нужно пополнить счет абонента или открыть кредит