Usm utm5 UK: различия между версиями
IronBot (обсуждение | вклад) ([IronBot] Create UK localization from RU) |
IronBot (обсуждение | вклад) ([IronBot] Sync UK localization from RU) |
||
| (не показана 1 промежуточная версия этого же участника) | |||
| Строка 24: | Строка 24: | ||
usm_utm5.conf.php-example | usm_utm5.conf.php-example | ||
1. На будь-якому сервері ''(сервер білінгу, userside або окрема машина)'' виділіть окремий довільний каталог для модуля та розмістіть у ньому ці файли. | |||
2. Виділіть окремий каталог для логів роботи модуля та надайте права на запис у цей каталог. | |||
3. Приклад конфігураційного файла usm_utm5.conf.php-example потрібно перейменувати на usm_utm5.conf.php і внести до нього потрібні зміни ''(перелік параметрів наведено нижче)''. | |||
4. Кілька разів (*) запустіть модуль вручну командою: | |||
php usm_utm5.php | php usm_utm5.php | ||
Коли модуль стабільно | Він має відпрацювати без помилок і повернути дані: | ||
usm_utm5 | |||
==================================== | |||
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_utm5.php | */10 * * * * php usm_utm5.php | ||
| Строка 103: | Строка 121: | ||
$confAccountPattern - шаблон номера особового рахунку | $confAccountPattern - шаблон номера особового рахунку | ||
$confImportGateway - імпортувати шлюз абонента | $confImportGateway - імпортувати шлюз абонента | ||
$confImportMask - імпортувати маску абонента в додаткові дані UserSide ''(потрібно вказати id додаткового поля)'' | |||
$confIsRegionAddressSystem - імпортувати області/регіони з адресної системи білінгу ''(тільки якщо $confAddressSrc = 0)'' | |||
$confIsImportServiceLinksAsChild - імпортувати сервісні зв'язки як дочірні записи абонентів ''(тільки для UTM+)'' | |||
$confIsImportWorkPhoneToPhone - імпортувати робочий телефон як "звичайний" телефон | |||
$confImportCustomerUnlimited - імпортувати факт безліміту в додаткові дані UserSide ''(потрібно вказати id додаткового поля)'' | |||
$confImportCustomerVlanId - імпортувати VlanID у додаткові дані UserSide ''(потрібно вказати id додаткового поля)'' | |||
$confImportCustomerTaxNumber - імпортувати податковий номер у додаткові дані UserSide ''(потрібно вказати id додаткового поля)'' | |||
$confIsImportPaidServiceHistory - імпортувати історію оплат за послугами | $confIsImportPaidServiceHistory - імпортувати історію оплат за послугами | ||
$confIsAgreementNumberFromContractNumber - імпортувати номер договору з accounts.contract_number | $confIsAgreementNumberFromContractNumber - імпортувати номер договору з accounts.contract_number | ||
| Строка 112: | Строка 137: | ||
$confAddressRemoveStr2 - рядок N2 для заміни в текстовій адресі | $confAddressRemoveStr2 - рядок N2 для заміни в текстовій адресі | ||
$confAddressRemoveStr3 - рядок N3 для заміни в текстовій адресі | $confAddressRemoveStr3 - рядок N3 для заміни в текстовій адресі | ||
// Якщо під час імпорту зовнішньої IP-адреси потрібно додати абоненту внутрішню IP-адресу, заповніть такі параметри | |||
$confIpGrayNet - яку підмережу IP-адрес вважати зовнішньою, наприклад "172.16.0.0", або "0" - не обробляти | |||
$confIpWhiteNet - яку підмережу IP-адрес додавати, наприклад "10.0.0.0", або "0" - не додавати | |||
// Можна налаштувати додавання додаткових міток абоненту залежно від значення додаткового поля в білінгу | |||
$markMerge[6]['id'] = 1; - [utm5.uaddparams_desc.paramid]['id'] = userside.id | |||
$markMerge[6]['value'] = 'test_string'; - [utm5.uaddparams_desc.paramid]['value'] = Compare String | |||
// Можна налаштувати імпорт додаткових полів із білінгу в додаткові поля абонента ERP "UserSide" ''(за потреби)'' | |||
// Заповнюється масив $additionalDataMerge ''(для userside 3.13 і раніше)'' або масив $additionalCustomerDataMerge ''(для userside 3.14 і пізніше)''. Можна додавати власні поля. Якщо значення коду поля дорівнює нулю, імпорт не виконується | |||
// Імпорт виконується у вже створені додаткові поля. Тобто попередньо це додаткове поле має бути створене в UserSide для картки абонента | |||
$additionalCustomerDataMerge[1] = 1; - [utm5.uaddparams_desc.paramid] = userside.id | |||
$additionalCustomerDataMerge[2] = 2; - [utm5.uaddparams_desc.paramid] = userside.id | |||
Текущая версия от 18:11, 16 сентября 2026
|
Эта функция является одной из возможностью |
usm_utm5 - модуль для організації імпорту даних із білінгової системи UTM5 в ERP "UserSide".
Цей модуль є заміною застарілого модуля us_utm5 - див.: Перехід з us_utm5 на usm_utm5
Мова модуля: PHP
Поточна версія: див. на сторінці: Модулі
Статус модуля: Платний
Додаткову інформацію та перелік імпортованих даних див. на сторінці: UTM5
Інформація щодо встановлення модуля
Переконайтеся, що в системі, де працюватиме модуль, наявна бібліотека php_mysqli
Архів usm_utm5.zip містить файли:
usm_utm5.php usm_utm5.conf.php-example
1. На будь-якому сервері (сервер білінгу, userside або окрема машина) виділіть окремий довільний каталог для модуля та розмістіть у ньому ці файли.
2. Виділіть окремий каталог для логів роботи модуля та надайте права на запис у цей каталог.
3. Приклад конфігураційного файла usm_utm5.conf.php-example потрібно перейменувати на usm_utm5.conf.php і внести до нього потрібні зміни (перелік параметрів наведено нижче).
4. Кілька разів (*) запустіть модуль вручну командою:
php usm_utm5.php
Він має відпрацювати без помилок і повернути дані:
usm_utm5 ==================================== 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_utm5.php
Параметри конфігурації
Налаштування модуля виконується у файлі usm_utm5.conf.php.
Також можна використовувати стандартні параметри з модуля usm_billing.
$usersideUrl - URL до ERP "UserSide" $usersideApiKey - API-ключ ERP "UserSide" $billingId - номер білінгу в ERP "UserSide" $logPath - шлях для запису логів $isSilence - режим тиші $billingDBHost - адреса сервера білінгу $billingDBUser - ім'я користувача для доступу до бази білінгу $billingDBPassword - пароль для доступу до бази білінгу $billingDBName - ім'я бази даних білінгу $billingCodePage - кодування бази білінгу $billingDbProvider - тип СУБД [mysql|postgresql]
$confServiceData - використовувати зв'язки послуг замість зв'язок тарифів $confIsHideShablonsFromTariffList - не включати шаблони в імпорт тарифів $confServiceDataServiceTypeRestrict - імпортувати тарифи/абонентів із вказаним service_type $confRentId - ID поля з абонплатою тарифу $confDontImportTariffWithComment - не імпортувати тарифи з таким коментарем $confMultiplicationTariffFees - коефіцієнт множення абонплати $confIsUseDateConnect - використовувати users.connect_date як дату підключення $confIsCustomerConnectFix - додавати інформацію про підключення абонентів до комутаторів $confIsImportBankInformation - імпортувати банківські реквізити абонента $confDontImportCustomerFromGroupId - не імпортувати абонентів із вказаної групи $confImportCustomerOnlyFromGroupId - імпортувати абонентів тільки з вказаної групи $confImportCustomerExpr - умова імпорту абонентів $confImportCustomerExpr2 - додаткова умова імпорту абонентів $confTrafficRxClass - клас вхідного трафіку $confTrafficTxClass - клас вихідного трафіку $confUseIpMethod - варіант роботи з IP $confIsUseDhcpData - завантажувати DHCP-дані $confDhcpServiceLinkId - ID зв'язку послуги з dhs_sessions_log $confIsHostByteOrder - host byte order у Framed_IP_Address $confIsActiveAllDhcp - використовувати поточну дату для активних DHCP-записів $confDhsSessionLogCondition - умова вибірки з dhs_sessions_log $confIsDhcpLeasesLogUse - завантажувати DHCP-дані з dhcp_leases_log $confIsBlockType1IsPause - вважати block_type #1 паузою $confIsBlockType2IsStop - вважати block_type #2 стопом $confIsUseIdToAgreement - використовувати ID абонента як номер договору $confIsSavePasswordToComment - зберігати пароль абонента в коментарі $confIsImportPaidHistory - імпортувати історію платежів $confVersionFramedIp - тип імпорту Framed_IP_Address $confIsImportHistoryTariff - імпортувати історію зміни тарифів $confCustomerAccountSrc - джерело номера особового рахунку $confImportCustomerUnlimited - імпортувати accounts.unlimited у додаткові дані $confImportCustomerPassport - імпортувати паспортні дані $confIsDontUpdateDateConnect - не імпортувати дату підключення $confIsImportAdditionalServices - імпортувати додаткові послуги $confIsImportSwitchCommutation - імпортувати комутацію абонента до обладнання $confIsImportSwitchTableCommutation - імпортувати комутацію з таблиці комутаторів білінгу $confImportPaidLimit - ліміт кількості платежів за один імпорт $confIsImportLessPhone - імпортувати порожні телефони $confIsSaveVpnPasswordToComment - зберігати VPN-пароль у коментарі $confAddressSrc - джерело адреси абонента $confExprIpImport - умова імпорту IP-адрес $lastPaidIdPlus - початковий лічильник імпорту платежів $confIsSkipCustomerBuilding - не імпортувати номер будинку $confImportPaidDisableMethod - список ігнорованих способів оплати $confIsSkipDhsSessionsLogTraffic - ігнорувати трафік із dhs_sessions_log $confIsImportServiceWithAddressAsAliasCustomer - імпортувати послугу з адресою як дочірній запис абонента $confIsIgnoreHouseBlock - ігнорувати корпус будинку $confAdditionalFieldWithAgreementNumber - додаткове поле білінгу з номером договору $confAdditionalFieldWithAgreementDate - додаткове поле білінгу з датою договору $confImportCustomerAllowedCid - імпортувати User Allowed Cid у додаткові дані $confImportCustomerPassword - імпортувати пароль абонента в додаткові дані $confAccountPattern - шаблон номера особового рахунку $confImportGateway - імпортувати шлюз абонента $confImportMask - імпортувати маску абонента в додаткові дані UserSide (потрібно вказати id додаткового поля) $confIsRegionAddressSystem - імпортувати області/регіони з адресної системи білінгу (тільки якщо $confAddressSrc = 0) $confIsImportServiceLinksAsChild - імпортувати сервісні зв'язки як дочірні записи абонентів (тільки для UTM+) $confIsImportWorkPhoneToPhone - імпортувати робочий телефон як "звичайний" телефон $confImportCustomerUnlimited - імпортувати факт безліміту в додаткові дані UserSide (потрібно вказати id додаткового поля) $confImportCustomerVlanId - імпортувати VlanID у додаткові дані UserSide (потрібно вказати id додаткового поля) $confImportCustomerTaxNumber - імпортувати податковий номер у додаткові дані UserSide (потрібно вказати id додаткового поля) $confIsImportPaidServiceHistory - імпортувати історію оплат за послугами $confIsAgreementNumberFromContractNumber - імпортувати номер договору з accounts.contract_number $confIsAgreementDateFromSignatureDate - імпортувати дату договору з accounts.signature_date $confImportBankName - імпортувати найменування банку $confServiceTypeTv - тип послуг для ТВ-тарифів $confServiceTypePhone - тип послуг для телефонних тарифів $confAddressRemoveStr1 - рядок N1 для заміни в текстовій адресі $confAddressRemoveStr2 - рядок N2 для заміни в текстовій адресі $confAddressRemoveStr3 - рядок N3 для заміни в текстовій адресі // Якщо під час імпорту зовнішньої IP-адреси потрібно додати абоненту внутрішню IP-адресу, заповніть такі параметри $confIpGrayNet - яку підмережу IP-адрес вважати зовнішньою, наприклад "172.16.0.0", або "0" - не обробляти $confIpWhiteNet - яку підмережу IP-адрес додавати, наприклад "10.0.0.0", або "0" - не додавати // Можна налаштувати додавання додаткових міток абоненту залежно від значення додаткового поля в білінгу $markMerge[6]['id'] = 1; - [utm5.uaddparams_desc.paramid]['id'] = userside.id $markMerge[6]['value'] = 'test_string'; - [utm5.uaddparams_desc.paramid]['value'] = Compare String // Можна налаштувати імпорт додаткових полів із білінгу в додаткові поля абонента ERP "UserSide" (за потреби) // Заповнюється масив $additionalDataMerge (для userside 3.13 і раніше) або масив $additionalCustomerDataMerge (для userside 3.14 і пізніше). Можна додавати власні поля. Якщо значення коду поля дорівнює нулю, імпорт не виконується // Імпорт виконується у вже створені додаткові поля. Тобто попередньо це додаткове поле має бути створене в UserSide для картки абонента $additionalCustomerDataMerge[1] = 1; - [utm5.uaddparams_desc.paramid] = userside.id $additionalCustomerDataMerge[2] = 2; - [utm5.uaddparams_desc.paramid] = userside.id