... {toc:maxlevel=2} h1. Техническая сторона С сервисом сделана двусторонняя интеграция: * Мы шлём запросы в их API управляя доступом к камерам * Сервис отправляет запросы на обработчик биллинга: 1) запросы авторизации абонентов 2) оповещение биллинга о появлении в сети новой камера h2. Настройка NAS Создайте [мастером NAS-сервер|CarbonBilling:Этап 1. Мастер Стандартной схемы NAS] по схеме *Flussonic*, [инициализируйте и заполните конфигурационные файлы|CarbonBilling:Этап 2. Генерация конфигурации и upload на оборудование]. Зайдите в *Управление* -> *Настройка*, нажмите *Обновить* и откройте файл _main.ini_ на редактирование, заполните следующее: * *watcher_url* - ссыла на URL обработчика на стороне Flussonic * *watcher_api_key* - ключ API Flussonic h2. Обратная интеграция Интеграция по протоколу *https* подойдёт, если у вас есть сертификат для домена, на котором расположен биллинг. Обработчики находятся в модуле платежных систем, укажите IP-адреса Flussonic по статье "[CarbonBilling:Настройка сети для платежных систем]", порт лучше использовать [без передачи сертификата|CarbonBilling:Основные настройки платежных систем], по-умолчанию это 2443 . Flussonic не поддерживает самоподписанные сертификаты. При обращении со стороны Flussonic возникает ошибка: {code} 2019-11-01 06:26:47.781 <watcher> [w-o6319r3x|watcher] user.py:561 HTTP auth backend request failed: HTTPSConnectionPool(host='test.ru', port=2443): Max retries exceeded with url: /auth_flussonic.php?login=test&password=test (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate in certificate chain (_ssl.c:1056)'))) {code} Если сервер биллинга и Flussonic находятся в локальной сети, то можно использовать протокол [http|CarbonBilling:Основные настройки платежных систем] по-умолчанию порт 1444 . h2. Настройка на стороне Flussonic На стороне сервиса нужно указать пути до наших обработчиков: * https://169.254.14.43:2443/integration_flussonic.php - на него мы получаем информацию о появившихся в сети камерах * https://169.254.14.43:2443/auth_flussonic.php - к этому мы ожидаем запросы авторизации {note}Замените +169.254.14.43+ на адрес биллинга по которому он доступен с сервера Flussonic.{note} h1. Настройка услуг и камер h2. Добавление камер Заведите камеры по статье "[CarbonBilling:Учет оборудования абонентов]". Обязательно укажите +серийный номер+ URL потока вещания и Ключ авторизации на оборудовании заполнятся когда камеру подключат к сети. h2. Настройка услуг [Добавьте услуги|CarbonBilling:Услуги] для тарификации: * *Основные* -> *Тип* - "Стандартный" * *Дополнительно* -> *NAS* - Flussonic, добавленный ранее * *Дополнительно* -> "*Создавать учетную запись при подключении*" - включите Прочите настройки, такие как методы списания, стоимость - как удобно для тарификации. h1. Подключение абонента # Абонент обратился в абонентский отдел # Добавьте ему услугу, созданную на предыдущем шаге # При подключении услуги укажите камеру в поле "*Аренда оборудования*" # Подключите камеру к сети # Flussonic через _integration_flussonic.php_ уведомляет биллинг что появилась новая камера # Биллинг прописывает в камере "URL потока вещания" и "Ключ авторизации" # Для доступа к сервису дайте абоненту логин и пароль учетной записи созданной услугой. h1. Отладка Лог регистрации новых камер {code}/app/asr_fiscal/var/log/IntegrationFlussonic.log{code} Лог авторизации {code}/app/asr_fiscal/var/log/AuthFlussonic.log{code} Если подключить камеру не указанную ни в одной users_usluga, биллинг напишет в лог, что не найден абонент с такой камерой h2. Логи пусты h3. Убедитесь что кто-то пытается авторизоваться или зарегистрировать камеру в сети В логах отражаются зарегистрированные запросы. Посмотрите логи со стороны сервиса, отсылали они что-то на биллинг или нет. h3. Проверьте настройки со стороны Flussonic Проверьте со стороны Flussonic что интеграция настроена, что указаны обработчики регистрации камер и авторизации абонентов. h3. Если выше все проверили и настроено/отправляется, но логи все равно пустые Запусите снифер пакетов по портам платежных систем: {code}tcpdump --nnei any port 1444 or port 1443 or port 2443{code} Посмотрите доходят ли запросы по сети с IP сервиса. {info}Если запросов слишком много с разных ресурсов, можно ограничить его выбранными хостами и подсетями, например: {code}tcpdump -nnei any 'port 1444 or port 1443 or port 2443' and 'net 0.0.0.0/0 or host 169.254.80.82'{code}{info}
|