Usm lanbilling: различия между версиями

Материал из WiKi - UserSide
Нет описания правки
Нет описания правки
 
(не показано 17 промежуточных версий 1 участника)
Строка 1: Строка 1:
[[Usm_lanbilling_EN|en]] | [[Usm_lanbilling|ru]]
{{activ}}
{{activ}}


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


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


'''Язык модуля:''' PHP
'''Язык модуля:''' PHP
Строка 11: Строка 13:
'''Статус модуля:''' [http://userside.ua/price.php Платный]
'''Статус модуля:''' [http://userside.ua/price.php Платный]


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


== Информация по установке модуля ==
== Информация по установке модуля ==
'''Убедитесь, что в системе где будет работать модуль присутствует библиотека php_mysqli'''


Архив usm_lanbilling.zip содержит файлы
Архив usm_lanbilling.zip содержит файлы
Строка 20: Строка 24:
  usm_lanbilling.conf.php-example
  usm_lanbilling.conf.php-example


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


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


Настройка модуля осуществляется в файле '''usm_lanbilling.conf.php'''
Настройка модуля осуществляется в файле '''usm_lanbilling.conf.php'''
Также можно использовать стандартные параметры из модуля [[usm_billing#Параметры конфигурации|usm_billing]]


  $usersideUrl        - URL к ERP "UserSide"
  $usersideUrl        - URL к ERP "UserSide"
  $usersideApiKey      - API-ключ ERP "UserSide" ''(Указывается в файле "userside/main/config/config.php")''
  $usersideApiKey      - [[UserSide API Key|API-ключ ERP "UserSide"]]
  $billingId          - Номер биллинга в ERP "UserSide" ''("Настройка - Биллинги")''
  $billingId          - Номер биллинга в ERP "UserSide" ''("Настройка - Биллинги")''
  $logPath            - Путь для записи логов
  $logPath            - Путь для записи логов
Строка 62: Строка 68:
  $billingCodePage    - кодировка базы данных биллинга
  $billingCodePage    - кодировка базы данных биллинга
   
   
  $confModuleInetNumber  - номер модуля inet
  $confTariffImportList          - типы импортируемых услуг ''(по-умолчанию 0,1,2,5) (tarifs.type - тип тарифа: 0-кабельный агент, 1-RADIUS по объему, 2-RADIUS по времени, 3-Классическая телефония, 4-VoIP, 5-Периодические и разовые услуги)''
  $confModuleDialupNumber - номер модуля dialup
$confAdrImportSrc              - источник импорта адресов ''(0 - из accounts_addr, 1 - из vgroups_addr, 2 - из обоих источников)''
  $confModuleIpnNumber    - номер модуля ipn
  $confImportOnlyVgroupsId      - импортировать только с определенным vgroups.id ''(рекомендуется не менять)''
  $confCollectorType            - тип коллектора ''(варианты "user", "rad")''
$confCollectorId              - код коллектора трафика - используется для таблиц биллинга - usernnnyyyymmdd или radnnnyyyymmdd
$confIsSkipUpdateAgreementDate - флаг - не обновлять дату заключения договора
   
   
  $confAddFieldAgreementNumber - id дополнительного поля с номером договора в таблице contract_parameter_type_1
  $confIsSkipCustomerWithClosedAgreement - флаг - не импортировать абонентов с закрытыми договорами
  $confImportAgreementDateClose - id дополнительного поля ERP "UserSide" (tbl_conf_basedopdata.CODE) для импорта даты окончания договора
$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 ''(если пустое значение, значит эти учетные данные использоваться не будут)''
   
   
  $confBillingState0 - статус в биллинге "0 - подключен"
  $confStat3DBHost    - адрес сервера статистики
  $confBillingState1 - статус в биллинге "1 - на отключении"
  $confStat3DBUser    - имя пользователя для доступа к базе статистики
  $confBillingState2 - статус в биллинге "2 - отключен"
  $confStat3DBPassword - пароль для доступа к базе статистики
  $confBillingState3 - статус в биллинге "3 - закрыт"
  $confStat3DBName    - имя базы данных статистики
  $confBillingState4 - статус в биллинге "4 - приостановлен"
  $confCollector3Type  - тип коллектора ''(варианты "user", "rad")''
  $confBillingState5 - статус в биллинге "5 - на подключении"
  $confCollector3Id    - код коллектора трафика - используется для таблиц биллинга - usernnnyyyymmdd или radnnnyyyymmdd

Текущая версия от 12:55, 26 октября 2023

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