... COUNT 13 {code} Если необходимо несколько таких услуг, то абоненту нужно заранее создать учётную запись IPTV любым способом, тогда обратная интеграция не будет пытаться подключить услугу создания учётной записи. h4. Как проверить, что "Интеграция за 48 часов" работает? Самый надёжный способ - попробуйте управлять подписками через приложения для мобильного телефона или приставки. Если такой возможности нет, можно отправить какой-либо запрос к платформе 24часаТВ с помощью CURL. Например, такой запрос должен подключить подписку в ID=6 учётной записи ID=70142, это внутренний ID в системе 24часаТВ. {code}curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' -d '[{ "packet_id": 6, "renew": true }]' 'https://api.24h.tv/v2/users/70142/subscriptions?token=gf809gu890fsjiogjkosf89u90u890gfsjkjkgfs' | jq .{code} {note}В примере URL - *api.24h.tv*, а токен *gf809gu890fsjiogjkosf89u90u890gfsjkjkgfs*. Это примеры, для Ваших запросов возьмите URL и токен те, что указали в *main.ini*{note} {note}Команда *jq* может быть не установлена на Вашем сервере. Установите её командой {code}yum install -y jq{code}{note} 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} {code:title=grep "Пользователь с этим телефоном уже существует" /app/asr_billing/var/log/nas_event_daemon/24hTV_*.log} ValueError: Ошибка запроса к 24h.tv! message={'phone': [ErrorDetail(string='Пользователь с этим телефоном уже существует.', code='invalid')], 'email': [ErrorDetail(string='Пользователь с таким адресом электронной почты уже существует.', code='invalid')]}; {code} Возможна ситуация, когда абонент зарегистрировался в ОТТ и его надо перенести в провайдера в ручном режиме. ОТТ - это абоненты не принадлежащие провайдерам, например - купившие подписку у 24ТВ напрямую. После обращения к провайдеру, биллинг пытается создать учётную запись по телефону зарегистрированному в 24ТВ - это вызывает ошибку. Провайдеру надо обратиться в техническую поддержку 24ТВ и попросить перенести этого абонента в ручную. После исправления ситуации на сервисе, удалите в биллинге услугу создания учетной записи и учетную запись. Подключите услугу заново. h4. Подключаю услуги на приставке или в приложении - ничего не происходит # Посмотрите в [администраторской панели 24h.tv|https://24h.tv/admin/utils_externals_logs_list/] логи отправленных команд к биллингу. Если там не отражены запросы на подключение услуги или регистрацию - обратитесь в поддержуц 24h,tv # Если запросы есть и сервис отправлял команды на биллинг, их можно посмотреть в логе */app/asr_fiscal/var/log/IntegrationIptv24htv.log*, если там пусто - возможно адресов сервиса нет [в списке разрешенных|CarbonBilling:Настройка сети для платежных систем]. В любом случае, нужно проверить доходят ли запросы до биллинга: {code}tcpdump -nni any port 1444 or port 1443 or port 2443{code} Запустите мониторинг трафика по портам платежных систем в биллинге и попробуйте переключить услуги в приложении или на приставке, убедитесь что 24h.tv отправил запросы к биллингу по их администраторской панели и посмотрите будет ли это в снифере. Если запросы есть, но логи пусты, еще раз проверьте корректно ли указаны адреса в списке разрешенных. {info}На время теста в список разрешенных адресов можно добавить 0.0.0.0/0, то есть разрешить обращения со всех адресов, тем самым исключить возможные сетевые проблемы{info} h4. Ошибка "Метод "create user account" не разрешен." {code:title=/app/asr_billing//var/log/oss.log} 2020-05-22 19:12:35,796 - worker - iptv24tv_sync - ERROR - Произошла ошибка: Ошибка запроса к 24h.tv! message=Метод "create user account" не разрешен.; detail=Метод "create user account" не разрешен. ValueError: Ошибка запроса к 24h.tv! message=Метод "create user account" не разрешен.; detail=Метод "create user account" не разрешен. {code} В случае фиксирования ошибки в логе /app/asr_billing//var/log/oss.log, необходимо проверить, указан ли в настройках NAS, в файле main.ini, идентификатор balance_source_id. h4. Ошибка "Billing have many packets with id=6" {code} 2021-08-11 08:26:01 Request="/integration_iptv24htv.php/packet?user_id=1384&trf_id=6" from IP=1.1.1.1 2021-08-11 08:26:01 Input={"user_id":"1234","trf_id":"6"} 2021-08-11 08:26:01 Method=packet 2021-08-11 08:26:01 WARNING Billing have many services for package! packet_id=6 2021-08-11 08:26:01 Response={"status":-3,"errmsg":"Billing have many packets with id=6"} {code} Эту ошибку можно увидеть в логе "Интеграции за 48 часов" /app/asr_fiscal/var/log/integrations/IntegrationIptv24htv.log и в панели управления 24часаТВ, в разделе "Внешние логи" (http://ISP_SITE.platform24.tv/admin/utils_externals_logs_list/) Она просходит, если в биллинге есть есть несколько услуг с одинаковым ID пакета для 24часаТВ. В услуге этот параметр задаётся в поле "*Строка с дополнительными параметрами по активации*" Для решения проблемы, оставьте только одну такую услугу. h4. Ошибка "Произошла ошибка: Ошибка запроса к 24h.tv! message=Не найдено.; detail=Не найдено." {code:title=Пример №1} 2021-09-23 10:13:10,154 - worker - commands - INFO - Проверяем подписку на портале id=6440xxxxxx, packet_id=18, renew=True, end_at=2021-09-30T23:00:00Z, 2021-09-23 10:13:10,161 - worker - v1 - INFO - Request type: GET, request url: https://api.24h.tv/v2/packets/18?token=86c3ee7xxxxxxxxxxx, request data: null, request headers: {} 2021-09-23 10:13:10,233 - worker - iptv24tv_sync - ERROR - Произошла ошибка: Ошибка запроса к 24h.tv! message=Не найдено.; detail=Не найдено. Traceback (most recent call last): .......... File "/mnt/var/oss/core/24TV/lib/iptv24tv_package/commands.py", line 404, in get_portal_packet_info return self.send_request(url=url.format(packet_id=packet_id), method='GET', expected_codes=[200]) File "/mnt/var/oss/core/24TV/lib/iptv24tv_package/commands.py", line 54, in send_request result['error']['message'], result['detail'])) ValueError: Ошибка запроса к 24h.tv! message=Не найдено.; detail=Не найдено. {code} --- {code:title=Пример №2} 2021-11-01 09:36:08,235 - worker - commands - INFO - Найден в биллинге ABONENT_ID=2764, USER_ID=8413 2021-11-01 09:36:08,243 - worker - commands - INFO - Найден пользователь на портале по portal_id=200xxx id=200xxx, provider_uid=2764, username=5e763a4c-bf74-4a72-xxx-xxxxxxx, phone=792xxxxxx, email=None 2021-11-01 09:36:08,244 - worker - commands - INFO - Активируем услугу пользователя 2764: 190 2021-11-01 09:36:08,270 - worker - v1 - INFO - Request type: GET, request url: https://api.24h.tv/v2/packets/190?token=b4e76a6bcxxxxxx2, request data: null, request headers: {} 2021-11-01 09:36:08,385 - worker - iptv24tv_sync - ERROR - Произошла ошибка: Ошибка запроса к 24h.tv! message=Не найдено.; detail=Не найдено. {code} Причина возникновения ошибки - это отсутствие соответствующего пакета каналов на портале IPTV. Такая ситуация может возникнуть, когда сервис сделал пакет архивным или отключил его. В таком случае, если абонент продолжает пользоваться услугой архивного пакета, то эту услуг необходимо скорректировать, убрав из настроек привязку к NAS IPTV и подключить ее заново, но дальнейший контроль за ее отключением или приостановкой ложится на администратора биллинга. ||Изначально ||После корректировки|| | !NAS_before.png|border=0,width=400! | !NAS_after.png|border=0,width=400! | h4. Ошибка "field user_id is unsupported" {code:title=grep 'field user_id is unsupported' -B3 /app/asr_fiscal/var/log/integrations/IntegrationIptv24htv.log} 2021-10-04 01:30:54 Request="/integration_iptv24htv.php/auth?ip=10.0.10.121&phone=79121111111&mbr_id=222222" from IP=10.90.1.185 2021-10-04 01:30:54 Input={"ip":"10.0.10.121","phone":"79121111111","mbr_id":"222222"} 2021-10-04 01:30:54 Method=auth 2021-10-04 01:30:54 Response={"status":-3,"err":-9,"errmsg":"field user_id is unsupported"} {code} Ошибка произошла потому, что в биллинге нет действующего абонента с IP 10.0.10.121 (IP указывается в [учётной записи|CarbonBilling:Учетная запись. Создание и изменение.]) или номером SMS-оповещений 79121111111 (номер указывается [в карточке абонента|CarbonBilling:Создание абонента. Заведение абонента. Работа с абонентами. Редактирование абонентов#fill_sms_email_fields]), а поиск абонента по "user_id" пока не реализован. h4. Ошибка "Not found services for create IPTV user" в логах /app/asr_fiscal/var/log/integrations/IntegrationIptv24htv.log Ошибка происходит из - за того, что в биллинг не заведена услуга *Создание учетной записи IPTV*,в которой есть опция *Создавать учетную запись* и выбран NAS *24htv* Чтобы решить проблему, заведите в биллинге абонента с номером телефона или IP, по которым он должен авторизоваться. {info}Запрос *auth* только связывает абонентов 24часаТВ и биллинга, создавать их он не может: абоненты уже должны быть заведены в обеих системах с тем реквизитом, по которому Вы хотите его авторизовать, IP или номер SMS.{info} {include:CarbonBilling:Настройка услуг IPTV}
|