Просмотр Исходного

{toc:maxLevel=3}
{include:CarbonBilling:Настройка IPTV. Общее}

h2. 24hTV

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

В файле *main.ini* необходимо указать token, выданный 24hTV.
{code}
tmplt=tmplt/main.cfg.tmplt
enabled="1"
url=https://api.24h.tv/v2/
token=
{code}

!24hTV.png|border=0,width=400!

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

h3. [Интеграция за 48 часов с 24часаТВ|https://confluence.24h.tv/pages/viewpage.action?pageId=65647]
Реализован обработчик для обратных запросов - со стороны 24часаТВ к биллингу.
Он доступен по следующим адресам:
* Для HTTP
{code}http://169.254.14.44:1444/integration_iptv24htv.php/{code}
* Для HTTPS
{code}https://169.254.14.43:1443/integration_iptv24htv.php/
https://169.254.14.43:1443/integration_iptv24htv.php/{code}

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

{info}* Адреса 169.254.14.44 и 169.254.14.43 в примере необходимо заменить на внешний адрес биллинга, по которому он доступен из сети интернет. Если биллинг не имеет белого адреса, используемые порты требуется [перенаправить на маршрутизаторе|https://ru.wikipedia.org/wiki/NAT]
* При регистрации из приложения, учетная запись в биллинге создаётся при смене тарифа или подключении первого дополнительного пакета{info}

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

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

h3. Отладка
Отладить передачу данных со стороны сервиса телевидения к биллингу Вы можете по следующим файлам журналов:
{code}/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 {code}
Из биллинга к сервису по этому логу:
{code}/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{code}
{note}1.1.1.1 - это IP с которым NAS добавлен в биллинг.{note}

h4. Как делать отладку?
Анализируйте сообщения лога, обычно они довольнно говорящие и описывают совершаемое действие, например "Создаю учетную запись" или "Подключаю пакет телевидения".
Если возникает ошибка, как правило в тексте сообщения будет что-то вроде "ERROR" или "CRITICAL" и само сообщение ошибки.
Поняв текст сообщения об ошибке можно сделать вывод, следует ли обратиться к документаци, техподдержке Carbon Soft или техподдержке сервиса.
{info}События происходящие с абонентом удобно смотреть в реальном времени.
# Запустите монитор логов, например:
{code}tail -f /app/asr_billing/var/log/nas_event_daemon/iptv24tv.log /app/asr_fiscal/var/log/httpd/error_log{code}
# Сделайте какие=либо действия с абонентом - создайте учетную запись, подключите пакет ТВ и тд
# Посмотрите что происходит и не возникает ли ошибка
# По тексту ошибки попробуйте понять что случилось{info}

h4. Ошибка "User with this phone already exists"
{code:title=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')]{code}
Пользователь ранее регистрировался с этим номером телефона на сервисе 24часаТВ. Обратитесь в поддержку сервиса, попросите удалить абонента с других договоров.

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

{include:CarbonBilling:Настройка услуг IPTV}