Интеграция с 24hTV (24часаТВ)

Skip to end of metadata
Go to start of metadata

Заведение оборудования

Время выполнения инструкции: до 5 минут

Для настройки IPTV нужно:

Шаг 1. Создать сервер IPTV  в разделе оборудования, вкладка IPTV

IP-адрес - любой, например 1.1.1.1
IP важен только для Stalker


Примечание: Стандартная схема OSS зависит от IPTV портала. В данном случае схема выбрана для TITV!

Шаг 2. На вкладке Дополнительно ставим опцию "Передавать пароль в скрипт событий"

Шаг 3. Переходим в управление  и нажимаем Сохранить где указан каталог управления. Затем В "шаг 1 Инициализация" выполняем все кнопки последовательно

Шаг 4. Переходим на вкладку Настройка и обновляем список файлов

Шаг 5. В main.ini прописываем данные для вашего IPTV

24hTV

Настройка NAS-сервера

В файле main.ini необходимо указать token, выданный 24hTV.

tmplt=tmplt/main.cfg.tmplt
enabled="1"
url=https://api.24h.tv/v2/
token=

После этого обязательно нужно нажать кнопку "Сохранить" сразу под полем, в которое вносились изменения.

Интеграция за 48 часов с 24часаТВ

Реализован обработчик для обратных запросов - со стороны 24часаТВ к биллингу.
Он доступен по следующим адресам:

  • Для HTTP
    http://169.254.14.44:1444/integration_iptv24htv.php/
  • Для HTTPS
    https://169.254.14.43:1443/integration_iptv24htv.php/
    https://169.254.14.43:1443/integration_iptv24htv.php/

Порты могут быть изменены по статье "Основные настройки платежных систем". Рекомендуется использовать "Защищенный внешний порт платежных систем, без необходимости передачи сертификата"

  • Адреса 169.254.14.44 и 169.254.14.43 в примере необходимо заменить на внешний адрес биллинга, по которому он доступен из сети интернет. Если биллинг не имеет белого адреса, используемые порты требуется перенаправить на маршрутизаторе
  • При регистрации из приложения, учетная запись в биллинге создаётся при смене тарифа или подключении первого дополнительного пакета

Как настроить

  1. Путь к обработчику передайте специалистам 24часаТВ, обратите внимание на необходимость указания внешнего адреса биллинга, а так же перенаправления используемого порта в случае если биллинг находится за NAT
  2. Запросите у 24часаТВ IP-адреса с которых они планируют обращаться в биллинг и добавьте в список разрешенных по статье "Настройка сети для платежных систем"

Запрос AUTH

При запросе AUTH, учётная запись в биллинге не создаётся; если нашли абонента по номеру телефона, возвращаем его ID.
Потом, когда абонент подключит первый пакет ТВ, учётная запись будет создана автоматический.

Запрос PACKET

В сервисе 24часаТВ бывают два вида пакетов: базовые (основной) и дополнительные. Каждый базовый пакет имеет свой набор дополнительных пакетов для подключения (могут быть базовые пакеты и без дополнительных).
При переключении базовых пакетов, может возникнуть ситуация когда был подключен дополнительный пакет, и он входит в состав нового базового пакета. В таком случае мы отключаем дополнительный пакет автоматический.

Например, если у абонента был тариф "Базовый" и подключена дополнительная услуга "Амедиатека", при смене на тариф "Максимальный", доп. услуга отключится автоматически, так как она входит в состав более дорого тарифа.

При успешномвыполнении запроса, в ответе сервису возвращается параметр "status=1"

Запрос CONT

При успешномвыполнении запроса, в ответе сервису возвращаются параметры "status=1" и "id=ID подключенного пакета в биллинге"

Отладка

Отладить передачу данных со стороны сервиса телевидения к биллингу Вы можете по следующим файлам журналов:

/app/asr_fiscal/var/log/httpd/error_log 
/app/asr_fiscal/var/log/rest_api_v2.log 
/app/asr_fiscal/var/log/IntegrationIptv24htv.log
/app/asr_billing/var/log/django/api_v2.log 

Из биллинга к сервису по этому логу:

/app/asr_billing/var/log/nas_event_daemon/iptv24tv.log
/app/asr_billing/var/log/nas_event_daemon/24hTV_1.1.1.1.log
/app/asr_billing/var/log/oss.log
1.1.1.1 - это IP с которым NAS добавлен в биллинг.

Как делать отладку?

Анализируйте сообщения лога, обычно они довольнно говорящие и описывают совершаемое действие, например "Создаю учетную запись" или "Подключаю пакет телевидения".
Если возникает ошибка, как правило в тексте сообщения будет что-то вроде "ERROR" или "CRITICAL" и само сообщение ошибки.
Поняв текст сообщения об ошибке можно сделать вывод, следует ли обратиться к документаци, техподдержке Carbon Soft или техподдержке сервиса.

События происходящие с абонентом удобно смотреть в реальном времени.
  1. Запустите монитор логов, например:
    tail -f /app/asr_billing/var/log/nas_event_daemon/iptv24tv.log /app/asr_fiscal/var/log/httpd/error_log
  2. Сделайте какие=либо действия с абонентом - создайте учетную запись, подключите пакет ТВ и тд
  3. Посмотрите что происходит и не возникает ли ошибка
  4. По тексту ошибки попробуйте понять что случилось

Ошибка "User with this phone already exists"

grep "User with this phone already exists" /app/asr_billing/var/log/nas_event_daemon/24hTV_*.log
ValueError: Ошибка запроса к 24h.tv! message={'phone': [ErrorDetail(string='User with this phone already exists.', code='invalid')]

Пользователь ранее регистрировался с этим номером телефона на сервисе 24часаТВ. Обратитесь в поддержку сервиса, попросите удалить абонента с других договоров.

После исправления ситуации на сервисе, удалите в биллинге услугу создания учетной записи и учетную запись. Подключите услугу заново.

Подключаю услуги на приставке или в приложении - ничего не происходит

  1. Посмотрите в администраторской панели 24h.tv логи отправленных команд к биллингу. Если там не отражены запросы на подключение услуги или регистрацию - обратитесь в поддержуц 24h,tv
  2. Если запросы есть и сервис отправлял команды на биллинг, их можно посмотреть в логе /app/asr_fiscal/var/log/IntegrationIptv24htv.log, если там пусто - возможно адресов сервиса нет в списке разрешенных. В любом случае, нужно проверить доходят ли запросы до биллинга:
    tcpdump -nni any port 1444 or port 1443 or port 2443

    Запустите мониторинг трафика по портам платежных систем в биллинге и попробуйте переключить услуги в приложении или на приставке, убедитесь что 24h.tv отправил запросы к биллингу по их администраторской панели и посмотрите будет ли это в снифере.
    Если запросы есть, но логи пусты, еще раз проверьте корректно ли указаны адреса в списке разрешенных.

    На время теста в список разрешенных адресов можно добавить 0.0.0.0/0, то есть разрешить обращения со всех адресов, тем самым исключить возможные сетевые проблемы

Создание услуг IPTV

Время выполнения инструкции: от 5 минут, 1-2 минуты на каждую услугу, 1-2 минуты на создание шаблона сообщения

Для подключения сервиса IPTV абоненту, рекомендуется подключить как минимум две услуги:

  • Первая: создание учетной записи
  • Вторая: подключение пакетов телевидения

Услуг, подключающих пакеты ТВ может быть несколько.

Если не делать отдельную услугу, создающую учетную запись IPTV, она все равно будет создана синхронизатором в течение 10 минут после подключения услуги с пакетом ТВ

Добавление услуги, подключающей пакеты телевидения

Создайте услугу с типом "IP телевидение" по статье документации "Услуги". Настройте в ней следующие опции:

  1. Вкладка "Основные". Опции:
    • Вид сервиса: IPTV;
    • Название: любое, соответствующее пакету TV выбранного оператора



  2. Вкладка "Дополнительно". Опции:
    • Строка с дополнительными параметрами по активации/деактивации: ID пакета телевидения, список пакетов уточните у оператора IPTV



  3. Вкладка "Личный кабинет". Опции:
    • Разрешить заказ через веб-интерфейс и Разрешить отключать через ЛК: параметры, позволяющие абоненту самостоятельно управлять подключением пакетов телевидения



Добавление услуги, создающей учетную запись на портале телевидения

Создайте услугу с типом "IP телевидение" по статье документации "Услуги". Настройте в ней следующие опции:

  1. Вкладка "Основные". Опции:
    • Вид сервиса: IPTV;
    • Название: любое,  например "Учетная запись IPTV"
    • Бесплатный пакет IPTV: необходимая опция для работы услуги создания учетной записи:
      • в схеме LifeStream услуги с этой опцией не синхронизируются как пакеты IPTV
      • в схеме MEGOGO услуги с опцией не отображаются как возможные для заказа на промо-странице



  2. Вкладка "Дополнительно".
    • Строка с дополнительными параметрами по активации/деактивации: оставьте пустыми;
    • NAS: выберите NAS соответствующего IPTV сервиса
    • Создавать учетную запись при подключении: включите;
    • Количество учетных записей: в зависимости от специфики работы Вашего IPTV, минимум одна;
    • Использовать цифровой пароль при создании учетной записи: включении этой опции не обязательно, но может быть полезно для сервисов настраиваемых на ТВ-приставках


  3. Вкладка "Личный кабинет". Опции:
    • Разрешить заказ через веб-интерфейс: включите, чтобы абонент сам мог создать себе учетную запись;
    • Разрешить отключать через ЛК: отключите, чтобы  абонент случайно не создал себе множество учетных записей



Отправка сообщения абоненту о создании учетной записи

Создайте шаблон с типом сообщения "Создание учетной записи из услуги" по статье "Система отправки сообщений" как показано на изображении ниже:

Для передачи логина и пароля новой учетной записи, используйте переменные user_login и user_psw. Например:
Реквизиты учетной записи: логин %(user_login)s, пароль %(user_psw)s. Используйте их для идентификации в портале IPTV

В настройках шаблона сообщений должна быть отключена опция "Использовать шаблонизатор django"
Введите метки, чтобы добавить к этой странице:
Please wait 
Ищите метку? просто начните печатать.