Skip to end of metadata
Go to start of metadata

Модуль является коммерческим.


Модуль синхронизации данных с UserSide через протокол UserSide usm_billing.

  • Отдает информацию по абонентам и инфраструктуре;

  • Синхронизация абонентов с UserSide в ABillS.


Установка модуля

Скопировать модуль

cp Api.pm /usr/abills/Abills/modules/Userside/

включение

$conf{US_API}=1;

Также желательно завести отдельного администратора для синхронизации и прописать ему API _KEY

Максимальное число отображаемых записей

config.pl
$conf{US_API_MAX_PAGE_ROWS}=10000;

По умолчанию: 10000.


Не синхронизировать трафик

config.pl
$conf{USERSIDE_SKIP_TRAFFIC}=1;


Синхронизация удаленных аккаунтов абонентов

config.pl
$conf{US_API_SYNC_DELETED}=1;

Синхронизация абонентов из заданными тарифными планами. Задавать id тарифных планов (tp_id) через ";"

config.pl
$conf{USERSIDE_EXPORT_TP}= '2;3';

Выгрузка адресов из абонентами на этих адресах

config.pl
$conf{USERSIDE_ADDRESS_WITH_USERS} = 1;


Просмотр информации

http://demo.userside.eu/api.php?key=keyus&cat=module&request=get_city_list
 Userside
    Запрос:
    ?key=apikey&request=get_city_list
    Результат:
    http://demo.userside.eu/api.php?key=keyus&cat=module&request=get_city_list
 Abills
    Запрос:
    ?get_index=us_api&key=1523615231263123&cat=module&request=get_city_list
    (key это Api key администратора)
    Результат:
    https://demo.abills.net.ua:9443/admin/index.cgi?get_index=us_api&key=1523615231263123&cat=module&request=get_city_list


Список функций

  • change_state - изменения состояния (статуса) задания;
  • get_related_task_id - список связанных заданий с текущим заданием (идентификаторы);
  • get_catalog_type - типы заданий;
  • show - информация о задании;
  • get_list - список заданий;
  • watcher_add - добавление наблюдателя;
  • watcher_delete - исключение наблюдателя;
  • comment_add - добавление комментария;
  • add - создание задания;

Импорт и синхронизация оборудования

Перед синхронизацией оборудования добавить линк и API ключ в config.pl

config.pl
$conf{USER_SIDE_LINK} = 'http://demo.userside.eu';
$conf{USER_SIDE_APIKEY} = 'keyus';
$conf{USER_SIDE_CAT} = 'module';

Запуск импорта

/usr/abills/libexec/billd userside_nas_sync

Дополнительные параметры:

DEBUGВыводит информацию о добавленном или обновлённом оборудовании. Пример DEBUG=1
IPСинхронизирует только указанное оборудование по IP. Пример IP=10.200.20.15

Документация USERSIDE API:

список устройств https://wiki.userside.eu/API_-_usm_billing_-_get_device_list
список моделей https://wiki.userside.eu/API_-_usm_billing_-_get_device_model

Тесты

 cd Userside/t
Подсказка по тестированию
perl Api.t -help
Запуск теста (по умолчанию тестируется локальный Api)
perl Api.t 
perl Api.t -local
Ключ -remote=<СЕРВЕР> позволяет тестировать отдаленно
perl Api.t -remote='https://demo.abills.net.ua:9443'
Ключ -debug возможность увидеть схему и данные которые она проверяет
 perl Api.t -debug
Ключ -userside проверяет не изменилась ли схема Json
 perl Api.t -userside
Ключ -request=<НАЗВАНИЕ МЕТОДА> тестирование по отдельной функции
perl Api.t -request=get_user_list
Выбор информации по конкретному абоненту
perl Api.t -request=get_user_list -debug=2 -uid=1489

Ошибки

Если не корректно происходит синхронизация попробуйте скинуть кеш Userside


/oper/?core_section=settings_main&action=diag_flush_redis_cache

  • No labels