Flussonic Watcher v2

Skip to end of metadata
Go to start of metadata

Как работает интеграция

Интеграция делалась на максимальное упрощение работы для инженера и абонента: помогите абоненту освоиться с Флюссоником, покажите как пользоваться приложением, проконсультируйте по тарифам и услугам, дайте абоненту самостоятельно их выбрать при подключении. Дальнейшее управление происходит полностью через личный кабинет оператора связи.

По шагам бизнес-процесс подключения абонента к телевидению следующий:

  1. Получите заявку от абонента на видеонаблюдение
    • Добавьте ему учётную запись Flussonic в биллинге
    • Биллинг сразу создаст на Watcher организацию и пользователя для абонента
    • Назначьте инженера
  2. Отправьте инженера на подключение
  3. В течение 5 минут биллинг заберёт параметры новых камер из Watcher, и подключит пользователю услуги в системе
  4. Если абонент захочет сменить тариф видеонаблюдения, он сделает это в личном кабинете оператора связи, вместе с прочими услугами.

Какими параметрами камеры управляет биллинг

Пресет и "Глубина DVR"

Это связанные параметры - глубина DVR всегда определяется через пресет.

В настройках услуг в биллинге, пресеты определяются парамтером preset_id, например:

preset_id=1

Лимит DVR в днях для записи по движению и "Получать события"

Этот параметр определяется отдельно. Его нельзя задавать в пресете. В Watcher предустановлено 16 возможных вариантов этого параметра

В настройках услуг в биллинге, лимит DVR в днях определяются параметром dvr_lock_days, например:

dvr_lock_days=7

Опция камеры "Получать события" должна быть включена, чтобы работало сохранения записи по движению, поэтому если задать параметры лимита DVR, то опция "Получать события" будет включена автоматически.

PTZ

PTZ определяет возможность удалённого управлять камерой. Вы можете включить взимать за это дополнительную плату, но можете и предоставлять эту опцию бесплатно.

В настройках услуг в биллинге, PTZ определяются параметром onvif_ptz, нужно создать только услугу для включения PTZ:

onvif_ptz=True

Если PTZ на камере выключено, биллинг считает это параметром "по-умолчанию", создавать для этого отдельной услуги не нужно.
Требуется создать отдельную услугу для включения опции с параметром motion_detector_enabled.

motion_detector_enabled=True

Если на камере включено dvr_lock_days, но выключено motion_detector_enabled, то биллинг подключает услугу motion_detector_enabled и включает motion_detector_enabled на камере.
Для опций onvif_ptz и motion_detector_enabled есть значение по умолчанию, если соответствующих услуг у абонента нет, то на камере для опции будет выставлено False.

Опция "Получать событие"

Опция "Получать событие" позволяет сохранять в ЛК Flussonic в разделе "События" фрагменты записи, полученные при срабаотывании датчика движения в камере.

Состояние (включена/выключена)

Камера будет включена пока оплачены услуги. Если абонента заблокировать, его камеры будут выключены биллингом.

Что будет если поменять эти параметры прямо в Watcher?

В течение пяти минут пройдёт синхронизация и параметры камеры вернутся к тем, что указаны в биллинге.

Например, если абонент заблокирован по балансу, но зайдёт в Watcher и включит камеру - биллинг её выключит.

Если изменит пресет - то вернётся тот пресет, что настроен услугами в биллинге.

Настройка Flussonic

Создайте пресеты

В меню "Пресеты камер" добавьте "тарифы" телевидения:
В каждом тарифе укажите:

  1. Глубина DVR: этот параметр нужно задать.
  2. Лимит DVR в днях...: этот параметр всегда должен быть "не задано"
  3. Доступен во всех организациях: включите

Название задайте каждому пресету любое, удобное Вам.
Опции "Лимит DVR в ГБ" и "Настраиваемый" не определяются интеграцией, укажите любые. Рекомендуется оставить как на скриншоте.

Настройте пользователя для управления камерами

Добавьте пользователя, например service или support - это будет служебная учетная запись, от имени него биллинг будет управлять параметрами камер.

Настройте пользователю "разрешения" как на скриншоте, он должен быть включен и являться администратором.

Авторизуйтесь от созданного пользователя в интерфейсе Watcher и зайдите в настройки профиля

Сгенерируйте ключ API, если его ещё нет, или скопируйте существующий. Он понадобится при настройке интеграции со стороны биллинга.

Настройте интеграцию с биллингом

  1. Запишите системный "Ключ API" - он используется как резервный при интеграции, если настройка служебного пользователя или доступа к камерам будет нарушена.
  2. В области "Главная страница" укажите путь к обработчику auth_flussonic.php на биллинге, на него мы ожидаем запросы авторизации, например:
    https://169.254.14.43:2443/auth_flussonic.php

    169.254.14.43 замените на IP биллинга

  3. В области "Уведомления о событиях" в поле "Внешний URL уведомлений о событиях" укажите путь до обработчика integration_flussonic_v2.php, на него мы получаем информацию о появившихся в сети камерах, например:
    https://169.254.14.43:2443/integration_flussonic_v2.php

    169.254.14.43 так же замените на IP биллинга
    Поле "Внешний URL фильтра событий" оставить незаполненным.

Настройка Billing

Настройте NAS

Добавьте NAS со схемой Flussonic и версией 2

IP-адрес укажите любой - его заполнить обязательно только чтобы создался NAS.

Каталог OSS заполнится автоматически.

На вкладке "Управление", инициализируйте схему, откройте закладку "Настройка", файл main.ini и заполните данные доступа к Watcher:

  • watcher_url - путь к Flussonic в Вашей сети
  • watcher_api_system_key - системный ключ из общих настроек пользователя, он нужен как резервный
  • watcher_api_key - ключ API из профиля служебного пользователя
  • watchet_api_user - логин этого пользователя

Пример main.ini
tmplt=tmplt/main.cfg.tmplt
enabled="1"
watcher_url=https://watcher.provider.ru
watcher_api_system_key=50od9t83-f80o-39i8-okd0-d9k3kd8i0ov
watcher_api_key=p29kbk54gj3eszy2mrdpnw36a
watcher_api_user=service

Настройте услуги

В биллинге может быть только одна услуга с уникальным значением в поле "Строка с дополнительными параметрами по активации". Например: preset_id=1; dvr_lock_days=1; onvif_ptz=True Если в биллинге будет две услуги с одинаковым значением в поле "Строка с дополнительными параметрами по активации", услуга не будет подключаться абонентам.
Что нельзя настраивать с услугами Flussonic
  1. Делать их включёнными в тариф: интеграция оперирует только услугами, и не сможет удалить услугу включенную в тариф, если, абонент захочет поменять условия обслуживания по видеонаблюдению
    Если у абонента видеонаблюдение основной или единственный сервис - создайте тариф "заглушку", с единственной услугутой типо "Стандартная" без стоимости. На вкладке "Дополнительно" включите опцию "Не отображать абоненту".
  2. Включать опцию Для услуги необходима привязка к учетной записи: эта опция была сделана для других интеграций (например, выдача белого IPv4) и в услугах Flussonic будет вызывать ошибку.
  3. Строка с дополнительными параметрами по активации и Строка с дополнительными параметрами по деактивации должны быть уникальны среди услуг! То есть, нельзя сделать две услуги с "preset_id=2", "dvr_lock_days=None" и так далее.
Вкладка "Основные" Вкладка "Дополнительно" Вкладка "Личный кабинет"
  • Тип: обязательно "Стандартный"
  • Цена: укажите размер абонентской платы за период
  • Метод списания: любой с периодическим списанием

  • Строка с доп. параметрами: ID пресетов и доп. услуг
  • NAS: укажите NAS Flussonic
Настройте возможность включения и отключения услуги
из личного кабинета

Услуги для пресетов, примеры

Название услуги Стоимость Строка с дополнительными
параметрами по активации
Строка с дополнительными
параметрами по деактивации
Тип услуги Метод списания Тип списания
Flussonic: тариф Default (служебный, для сотрудников) 0 preset_id=1 preset_id=1 Стандартный Ежемесячно Предоплата
Flussonic: тариф без хранения, онлайн 100 preset_id=2 preset_id=2 Стандартный Ежемесячно Предоплата
Flussonic: тариф Базовый 200 preset_id=3 preset_id=3 Стандартный Ежемесячно Предоплата
Flussonic: тариф Удобный 500 preset_id=4 preset_id=4 Стандартный Ежемесячно Предоплата

Услуга лимита DVR для записи по движению, примеры

Лимит DVR в днях для записей по движению - количество дней, в течение которых необходимо хранить записи событий движения. Этот лимит устанавливается в дополнение к глубине архива.

В отличие от пресетов, список для выбора глубины лимита записи по движению предустановлен в Watcher. Вы можете создать услуги именно с указанными параметрами по активации и деактивации, выбрав собственные параметры списания и указав своё название.

Название услуги Стоимость Строка с дополнительными
параметрами по активации
Строка с дополнительными
параметрами по деактивации
Тип услуги Метод списания Тип списания
Flussonic: лимит DVR записи по движению не задано 0 dvr_lock_days=None dvr_lock_days=None Стандартный Ежемесячно Предоплата
Flussonic: лимит DVR записи по движению 1 день 30 dvr_lock_days=1 dvr_lock_days=1 Стандартный Ежемесячно Предоплата
Flussonic: лимит DVR записи по движению 2 дня 50 dvr_lock_days=2 dvr_lock_days=2 Стандартный Ежемесячно Предоплата
Flussonic: лимит DVR записи по движению 3 дня 70 dvr_lock_days=3 dvr_lock_days=3 Стандартный Ежемесячно Предоплата
Flussonic: лимит DVR записи по движению 4 дня 90 dvr_lock_days=4 dvr_lock_days=4 Стандартный Ежемесячно Предоплата
Flussonic: лимит DVR записи по движению 5 дней 100 dvr_lock_days=5 dvr_lock_days=5 Стандартный Ежемесячно Предоплата
Flussonic: лимит DVR записи по движению 6 дней 115 dvr_lock_days=6 dvr_lock_days=6 Стандартный Ежемесячно Предоплата
Flussonic: лимит DVR записи по движению 1 неделя 130 dvr_lock_days=7 dvr_lock_days=7 Стандартный Ежемесячно Предоплата
Flussonic: лимит DVR записи по движению 10 дней 140 dvr_lock_days=10 dvr_lock_days=10 Стандартный Ежемесячно Предоплата
Flussonic: лимит DVR записи по движению 2 недели 180 dvr_lock_days=14 dvr_lock_days=14 Стандартный Ежемесячно Предоплата
Flussonic: лимит DVR записи по движению 1 месяц 360 dvr_lock_days=30 dvr_lock_days=30 Стандартный Ежемесячно Предоплата
Flussonic: лимит DVR записи по движению 40 дней 480 dvr_lock_days=40 dvr_lock_days=40 Стандартный Ежемесячно Предоплата
Flussonic: лимит DVR записи по движению 2 месяца 720 dvr_lock_days=60 dvr_lock_days=60 Стандартный Ежемесячно Предоплата
Flussonic: лимит DVR записи по движению 3 месяца 900 dvr_lock_days=90 dvr_lock_days=90 Стандартный Ежемесячно Предоплата
Flussonic: лимит DVR записи по движению полгода 1620 dvr_lock_days=180 dvr_lock_days=180 Стандартный Ежемесячно Предоплата
Flussonic: лимит DVR записи по движению год 2555 dvr_lock_days=365 dvr_lock_days=365 Стандартный Ежемесячно Предоплата

Услуга удалённого управления камерой (PTZ), пример

Включение PTZ позволит абоненту удалённо управлять положением камеры (должно поддерживаться моделью камеры)

Название услуги Стоимость Строка с дополнительными
параметрами по активации
Строка с дополнительными
параметрами по деактивации
Тип услуги Метод списания Тип списания
Flussonic: PTZ 50 onvif_ptz=True onvif_ptz=True Стандартный Ежемесячно Предоплата

Подключение Watcher абоненту

Добавьте учётную запись, привязанную к NAS со схемой Flussonic

Добавьте учётную запись, привязанную к NAS со схемой Flussonic версии 2.

Биллинг сразу создаст на Watcher организацию и пользователя для абонента

Остальные поля не важны, в том числе тип авторизации. "Внешний ИД" заполнится автоматически после создания пользователя на Flussonic.

Отправьте инженера подключить абоненту камеру

Установите камеру и авторизуйтесь в Watcher с учётной записью ранее созданной для абонента.
Добавьте абоненту камеры через мобильное приложение (Android или iPhone).
При добавлении камеры, укажите настройки, какие захочет абонент

Камеру можно настроить в вручную в интерфейсе Watcher, например если в ней нет агента Watcher, но к ней есть прямой доступ по белому IP-адресу.

Биллинг синхронизирует выбранные настройки

Биллинг автоматически подключит абоненту услуги по каждой добавленной камере

Каждая подключенная услуга привязывается к камере из справочника оборудорвания (тоже синхронизируются биллингом автоматически)

Камеры абонента появятся в справочнике "Оборудование"

URL потока вещания - это прямая ссылка на видеопоток с камеры, её можно открыть в браузере.

Отладка

Журнал синхронизации

Лог синхронизации всегда по одному пути

tail -f /app/asr_billing/var/log/nas_event_daemon/flussonic.log

Лог отправленных команд по учетным записям абонентов тоже в папке nas_event_daemon, название состоит из наименования NAS и его IP, например:

tail -f /app/asr_billing/var/log/nas_event_daemon/Flussonic_v2_1.1.1.8.log

Команды диагностики учётной записи

Схемой предусмотрена диагностика учётной записи - эта информация будет полезна инженерам и разработчикам при обращении абонента в техподдержку.

Информация для оператора биллинга Сырые данные для разработчика

Отчёт со списком всех абонентов

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

Не проходит авторизация на auth_flussonic.php, как проверить?

  1. В первую очередь Flussonic пытается авторизовать абонента по своей внутренней базе, если это не удалось - он обращается к внешнему бекенду, то есть к биллингу.
    Проблема может возникнуть, если бекенд авторизации не настроен. Выше в статье описано, как его настроить.
  2. Если бекенд настроен и он точно ссылается на биллинг, проверьте , что запросы доходят до биллинга.
    Запустите снифер трафика по портам авторизации:
    tcpdump -nni any port 1444 or port 1443 or port 2443
    На эти же порты обращаются платёжные системы и внутренний трафик биллинга из подсети 169.254.0.0/16.
    В выводе ищите обращения именно от Флюссоника: с его IP-адресов
  3. Трафик должен идти в обе стороны.
    • Например, это значит что связь есть:

      11:06:41.214954 IP 10.90.1.185.46672 > 10.90.185.127.1444: Flags [S], seq 1054804449, win 64240, options [mss 1460,sackOK,TS val 4209885119 ecr 0,nop,wscale 7], length 0
      11:06:41.214960 IP 10.90.1.185.46672 > 10.90.185.127.1444: Flags [S], seq 1054804449, win 64240, options [mss 1460,sackOK,TS val 4209885119 ecr 0,nop,wscale 7], length 0
      11:06:41.214992 IP 10.90.185.127.1444 > 10.90.1.185.46672: Flags [S.], seq 2675606213, ack 1054804450, win 14480, options [mss 1460,sackOK,TS val 569656279 ecr 4209885119,nop,wscale 7], length 0
      11:06:41.214994 IP 10.90.185.127.1444 > 10.90.1.185.46672: Flags [S.], seq 2675606213, ack 1054804450, win 14480, options [mss 1460,sackOK,TS val 569656279 ecr 4209885119,nop,wscale 7], length 0

    • А это - то что связи нет.
      Flussonic с IP 10.90.1.185 отправляет запросы биллингу на IP 10.90.185.127, но биллинг не отвечает.
      Добавьте IP Flussonic в список разрешенных.

      11:02:08.871798 IP 10.90.1.185.46306 > 10.90.185.127.1444: Flags [S], seq 2241838185, win 64240, options [mss 1460,sackOK,TS val 4209612782 ecr 0,nop,wscale 7], length 0
      11:02:09.877933 IP 10.90.1.185.46306 > 10.90.185.127.1444: Flags [S], seq 2241838185, win 64240, options [mss 1460,sackOK,TS val 4209613787 ecr 0,nop,wscale 7], length 0

  4. Когда убедились, что запросы точно идут к биллингу и проходят фаервол, проверьте есть ли они в логе веб-сервера:
    tail -f /app/asr_fiscal/var/log/httpd/access_log

    Должно быть что-то вроде этого:

    10.90.1.185 - - [30/Jul/2021:11:18:21 +0500] "HEAD /auth_flussonic.php?login=BILL0000015&password=w08tr6 HTTP/1.1" 200 - "-" "curl/7.74.0"
    10.90.1.185 - - [30/Jul/2021:11:18:24 +0500] "HEAD /auth_flussonic.php?login=121414&password=664731 HTTP/1.1" 403 - "-" "curl/7.74.0"

    Первая строка говорит об успешной авторизации, это видно по коду ответа HTTP 200.
    Вторая строка говорит об ошибке авторизации, это можно понять по коду ответа HTTP 403: скорей всего логин или пароль неверные, или учётная запись в биллинге заблокирована.
    И то же самое - в логе бекенда авторизации:

    tail -f /app/asr_fiscal/var/log/integrations/AuthFlussonic.log
    2021-07-30 11:18:21 Auth attempt, Login: BILL0000015 - SUCCESS
    2021-07-30 11:18:24 Auth attempt, Login: 121414 - FAILED
  5. Если записи в логе есть, авторизация не проходит, но Вы точно уверены что логин и пароль учётной записи правильные, попробуйте окончательно в этом убедиться, выполнив запросы с CURL:
    • Подключитесь к Flussonic по SSH и выполните такой запрос:
      Поменяйте в запросе IP Вашего биллинга, логин и пароль - от тестируемой учётной записи
      curl -k -I 'http://10.90.185.127:1444/auth_flussonic.php?login=121414&password=664731'

      Вывод будет примерно таким:

      HTTP/1.1 403 Forbidden
      Date: Thu, 01 Jul 2021 08:16:26 GMT
      Server: Apache/2.2.15 (CentOS)
      X-Powered-By: PHP/7.3.21
      Vary: Accept-Encoding,User-Agent
      Cache-Control: max-age=60, private, must-revalidate
      Content-Type: text/html; charset=UTF-8

      Потом подключитесь к биллингу по SSH и выполните API запрос авторизации:

      Поменяйте в запросе логин и пароль - укажите от тестируемой учётной записи
      curl -d 'method1=objects.filter&arg1={"login":"121414","gen_pwd":"664731"}&fields=["pk","login"]' http://169.254.80.82:8082/rest_api/v2/Users/ -D -

      Вывод будет примерно таким:

      HTTP/1.1 200 OK
      Server: nginx/1.0.15
      Date: Thu, 01 Jul 2021 08:14:44 GMT
      Content-Type: application/json
      Transfer-Encoding: chunked
      Connection: keep-alive
      Vary: Cookie
      
      {"call": "/rest_api/v2/Users/", "result": [{"pk": 1424, "model": "Users", "fields": {"pk": 1424, "login": "121414"}}]}
    • Вывод с консоли, вместе с запросами, скопируйте в файл передайте нам через запрос на портале HelpDesk.

FAQ

Что будет если абонент поменяет параметры камеры прямо на Watcher?

В течение пяти минут пройдёт синхронизация и параметры камеры вернутся к тем, что указаны в биллинге.

Например, если абонент заблокирован по балансу, но зайдёт в Watcher и включит камеру - биллинг её выключит.

Если изменит пресет - то вернётся тот пресет, что настроен услугами в биллинге.

Что будет, если удалить камеру на Watcher?

Синхронизатор автоматически отключит в биллинге услуги по этой камере в течение 5 минут - этим управляет синхронизация.

Если удалить камеру на Watcher, и добавить вновь, что будет в справочнике оборудования?

Старая камера останется, добавится новая. Услуги абонента будут только по новой камере.

Это связано с тем, что биллинг не имеет представления о камере как физическом объекте, потому что Watcher не всегда отражает серийный номер камеры. Поэтому в качестве "серийного номера" в биллинге мы записываем наименование камеры, указанное в Watcher - оно всегда уникально для новой камеры, и изменится если её удалить и снова добавить тому же или другому абоненту.

Как заново синхронизировать камеру?

Вы можете вручную удалить услуги по этой камере в течение 5 минут между синхронизациями и поменять параметры камеры на Watcher. Тогда биллинг подгрузит услуги по параметрам камеры, указанным в Watcher - для него это будет новая камера.

Если это сделает абонент заблокированный по балансу?

Новые услуги подключатся, но сразу будут заблокированы и камера всё равно выключится.

Как заменить тариф камеры в администраторской панели?

По статье Изменение условий обслуживания. Привязку оборудования биллинг сохранит в новой услуге.

Если удалить учётную запись в биллинге, что будет с ней на Вотчере?

Организация и учётная запись останутся на Watcher, Вы можете удалить их вручную.

Не работает синхронизация в биллинге с Flussonic?

В случае, если все настройки указаны корректно, при выполнении диагностики в биллинге удается получить информацию о настройках камер из flussonic, а синхронизация корректно не отрабатывает, требуется выполнить перезапуск службы oss и повторно проверить состояние службы в логах.
Перезапуск службы oss

chroot /app/asr_billing/  service oss restart
Фрагмент лога /app/asr_billing/var/log/nas_event_daemon/flussonic.log при работе синхронизации
2021-06-15 19:31:29,770 - worker - flussonic_sync - DEBUG - compare_cameras_in_organization return
2021-06-15 19:31:29,771 - worker - flussonic_sync - DEBUG - compare_cameras user_processed_cameras_names=[u'test-cam0143']
2021-06-15 19:31:29,781 - worker - flussonic_sync - DEBUG - compare_cameras return
2021-06-15 19:31:29,782 - worker - flussonic_sync - INFO - Завершена синхронизация Flussonic
2021-06-15 19:31:29,782 - worker - flussonic_sync - INFO - Ждем 5 минут

Как дать пользователю доступ к камерам в нескольких организациях?

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

Введите метки, чтобы добавить к этой странице:
Please wait 
Ищите метку? просто начните печатать.