Usm lanbilling

From WiKi - UserSide
Revision as of 12:55, 26 October 2023 by N.Skrypnik (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

en | ru

Эта функция является одной из возможностью
обновления даты активности у объекта

usm_lanbilling - модуль для организации импорта данных из биллинговой системы LANBilling в ERP "UserSide"

Данный модуль является заменой устаревшему модулю us_lanbilling - См.: Переход с us lanbilling на usm lanbilling

Язык модуля: PHP

Текущая версия: см. на странице: Модули

Статус модуля: Платный

Дополнительную информацию и перечень импортируемых данных см. на странице: LANBilling

Информация по установке модуля

Убедитесь, что в системе где будет работать модуль присутствует библиотека php_mysqli

Архив usm_lanbilling.zip содержит файлы

usm_lanbilling.php
usm_lanbilling.conf.php-example

1. На любом сервере (без разницы - сервер биллинга, userside или третья машина) выделить отдельный (произвольный) каталог для модуля и поместить в него эти файлы

2. Выделить отдельный каталог для логов работы модуля. Дайте права на запись в этот каталог.

3. Пример файла конфигурации usm_lanbilling.conf.php-example следует переименовать в usm_lanbilling.conf.php и внести в нём требуемые изменения (перечень параметров указан ниже)

4. Запустите несколько раз (*) вручную модуль командой

php usm_lanbilling.php

Он должен отработать без ошибок и вернуть данные:

usm_lanbilling
====================================
 Start module at 2015-11-22 17:32:03
Finish module at 2015-11-22 17:32:14
====================================

* - При первом запуске - будут предварительно лишь созданы многие объекты. Чем больше объектов импортирует модуль - тем дольше это будет. При втором и последующих запусках сверяются изменённые данные и только они будут обновлены. Второй запуск также будет длиться долго, т.к. после первого запуска новосозданные объекты практические не содержат данных. А вот третий и последующие запуски будут работать гораздо быстрее.

5. Проверьте визуально полноту импортируемых данных в ERP "UserSide"

6. Когда станет понятно, что модуль работает стабильно - добавляем его в системный cron на периодическую работу (укажите нужные пути)

*/10 * * * * php usm_lanbilling.php

Параметры

Настройка модуля осуществляется в файле usm_lanbilling.conf.php

Также можно использовать стандартные параметры из модуля usm_billing

$usersideUrl         - URL к ERP "UserSide"
$usersideApiKey      - API-ключ ERP "UserSide"
$billingId           - Номер биллинга в ERP "UserSide" ("Настройка - Биллинги")
$logPath             - Путь для записи логов
$isSilence           - Флаг "Режим тишины" (скрыть вывод информационных сообщений от модуля в консоль)

$billingDBHost       - адрес сервера биллинга
$billingDBUser       - имя пользователя для доступа к базе биллинга
$billingDBPassword   - пароль для доступа к базе биллинга
$billingDBName       - имя базы данных биллинга
$billingCodePage     - кодировка базы данных биллинга

$confTariffImportList          - типы импортируемых услуг (по-умолчанию 0,1,2,5) (tarifs.type - тип тарифа: 0-кабельный агент, 1-RADIUS по объему, 2-RADIUS по времени, 3-Классическая телефония, 4-VoIP, 5-Периодические и разовые услуги)
$confAdrImportSrc              - источник импорта адресов (0 - из accounts_addr, 1 - из vgroups_addr, 2 - из обоих источников)
$confImportOnlyVgroupsId       - импортировать только с определенным vgroups.id (рекомендуется не менять)
$confCollectorType             - тип коллектора (варианты "user", "rad")
$confCollectorId               - код коллектора трафика - используется для таблиц биллинга - usernnnyyyymmdd или radnnnyyyymmdd
$confIsSkipUpdateAgreementDate - флаг - не обновлять дату заключения договора

$confIsSkipCustomerWithClosedAgreement - флаг - не импортировать абонентов с закрытыми договорами
$confIsOldBillingIp                    - флаг - старый формат IP-адресов
$accountAddString                      - добавочная строка при импорте лицевых счетов
$confAddFieldForPhone                  - дополнительное поле для номера телефона
$confIsSkipLoadIp                      - флаг - не загружать IP-адреса
$confIsAddCityTypeToName               - флаг - добавлять тип нас.пункта к названию нас.пункта
$confIsAddStreetTypeToName             - добавлять тип улицы к наименованию улицы (0 - не добавлять, 1 - добавлять после наименования улицы, 2 - добавлять перед наименованием улицы)
$confIsImportAlias                     - флаг - импортировать дочерние записи
$confParameterTypePhone                - суффикс поля таблицы contract_parameter_type_ с номером телефона
$confImportPassport                    - импортировать паспортные данные в дополнительное поле ... (указать ID доп.поля)
$confIsCityNameInStreetName            - флаг - добавлять название нас.пункта к наименованию улицы
$confIsImportOnlyWithVgroup            - флаг - импортировать абонентов только с наличием vgroup
$confTrafLimitSelection                - минимальное значение для импорта трафика по абоненту (по-умолчанию: 2048)
$confAccountsTable                     - имя таблицы со счетами абонентов (по-умолчанию: accounts)
$confIsDoNotUpdateAddPhone             - флаг - не обновлять значения дополнительных телефонов абонентов
$confIsOnlyAdrSrc1                     - флаг - импортировать адреса только с accounts_addr.type = 1
$accountExprString                     - дополнительная строка с условием импорта абонентов (к таблице account)
$confIsImportCustomerWoTariff          - флаг - импортировать в т.ч. и абонентов без тарифов
$confBillingBlockState0                - ID используемого статуса работы в USERSIDE для состояния блокировки #0 в биллинге (vgroups.blocked) (по-умолчанию: 2 - работает)
$confBillingBlockState1                - ID используемого статуса работы в USERSIDE для состояния блокировки #1 в биллинге (vgroups.blocked) (по-умолчанию: 1 - пауза)
$confBillingBlockState2                - ID используемого статуса работы в USERSIDE для состояния блокировки #2 в биллинге (vgroups.blocked) (по-умолчанию: 1 - пауза)
$confBillingBlockState3                - ID используемого статуса работы в USERSIDE для состояния блокировки #3 в биллинге (vgroups.blocked) (по-умолчанию: 1 - пауза)
$confBillingBlockState4                - ID используемого статуса работы в USERSIDE для состояния блокировки #4 в биллинге (vgroups.blocked) (по-умолчанию: 0 - стоп)
$confBillingBlockState5                - ID используемого статуса работы в USERSIDE для состояния блокировки #1 в биллинге (vgroups.blocked) (по-умолчанию: 1 - пауза)
$confBillingBlockState10               - ID используемого статуса работы в USERSIDE для состояния блокировки #4 в биллинге (vgroups.blocked) (по-умолчанию: 0 - стоп)

Данные доступа к второму коллектору (статистике) LANBilling (если пустое значение, значит эти учетные данные использоваться не будут)

$confStat2DBHost     - адрес сервера статистики
$confStat2DBUser     - имя пользователя для доступа к базе статистики
$confStat2DBPassword - пароль для доступа к базе статистики
$confStat2DBName     - имя базы данных статистики

Данные доступа к третьему коллектору (статистике) LANBilling (если пустое значение, значит эти учетные данные использоваться не будут)

$confStat3DBHost     - адрес сервера статистики
$confStat3DBUser     - имя пользователя для доступа к базе статистики
$confStat3DBPassword - пароль для доступа к базе статистики
$confStat3DBName     - имя базы данных статистики
$confCollector3Type  - тип коллектора (варианты "user", "rad")
$confCollector3Id    - код коллектора трафика - используется для таблиц биллинга - usernnnyyyymmdd или radnnnyyyymmdd