Usm abills
|
Эта функция является одной из возможностью |
usm_abills - модуль для организации импорта данных из биллинговой системы ABillS в ERP "UserSide"
Данный модуль является заменой устаревшему модулю us_abills - См.: Переход с us abills на usm abills
Язык модуля: PHP
Текущая версия: см. на странице: Модули
Статус модуля: Платный
Дополнительную информацию и перечень импортируемых данных см. на странице: ABillS
Информация по установке модуля
Убедитесь, что в системе где будет работать модуль присутствует библиотека php_mysqli
Архив usm_abills.zip содержит файлы
usm_abills.php usm_abills.conf.php-example
1. На любом сервере (без разницы - сервер биллинга, userside или третья машина) выделить отдельный (произвольный) каталог для модуля и поместить в него эти файлы
2. Выделить отдельный каталог для логов работы модуля. Дайте права на запись в этот каталог.
3. Пример файла конфигурации usm_abills.conf.php-example следует переименовать в usm_abills.conf.php и внести в нём требуемые изменения (перечень параметров указан ниже)
4. Запустите несколько раз (*) вручную модуль командой
php usm_abills.php
Он должен отработать без ошибок и вернуть данные:
usm_abills ==================================== 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_abills.php
Параметры конфигурации
Настройка модуля осуществляется в файле usm_abills.conf.php
Также можно использовать стандартные параметры из модуля usm_billing
$usersideUrl - URL к ERP "UserSide"
$usersideApiKey - API-ключ ERP "UserSide" (Указывается в файле "userside3/main/config/config.php")
$billingId - Номер биллинга в ERP "UserSide" ("Настройка - Биллинги")
$logPath - Путь для записи логов
$isSilence - Флаг "Режим тишины" (скрыть вывод информационных сообщений от модуля в консоль)
$billingDBHost - адрес сервера биллинга
$billingDBPort - порт mysql-подключения к базе биллинга
$billingDBUser - имя пользователя для доступа к базе биллинга
$billingDBPassword - пароль для доступа к базе биллинга
$billingDBName - имя базы данных биллинга
$confAdrDistrictMode - (1 - добавлять к названию улицы название района (только при $zadress = 1), 2 - то переносить название района в название города, 3 - использовать название города из districts.city)
$confDateConnectSrc - откуда брать дату подключения абонента к сети (1 - users.registration, 2 - dv/internet_log.start)
$confUserImportExpr - факультативное условие для импорта абонентов
$confAddFieldPhone - users_pi. - название поля в таблице users_pi с номером телефона (по-умолчанию: phone)
$confAddFieldCellPhone - users_pi. - название поля в таблице users_pi с номером мобильного телефона
$confAddFieldEntrance - users_pi. - название поля в таблице users_pi с номером подъезда
$confAddFieldFloor - users_pi. - название поля в таблице users_pi с номером этажа
$confIsSavePasswordToComment - флаг - сохранять пароль абонента в заметки
$confIsCidIp - флаг - поле dv/internet_log.CID содержит IP-адрес абонента
$confIsIpAdrOnlyFromDhcpHosts - флаг - импортировать IP-адрес только из dhcphosts_hosts
$confIsIpAdrSkipFromDhcpHosts - флаг - не импортировать IP-адреса из dhcphosts_hosts
$confUserStateSrc - источник для состояния абонента в биллинге (если пусто - то dm.disable (либо u.disable))
$confWorkState2 - состояние "Не активизирован" преобразовывать в [0|1|2] (0 - Стоп, 1 - Пауза, 2 - Активен) (по-умолчанию: 0)
$confWorkState5 - состояние "Слишком маленький депозит" преобразовывать в [0|1|2] (0 - Стоп, 1 - Пауза, 2 - Активен) (по-умолчанию: 1)
$confIsHideDvLogData - флаг - не импортировать данные из таблицы dv/internet_log
$confIsHideIpAdrFromDvCalls - флаг - не импортировать IP-адрес из таблицы dv/internet_calls
$confIsHideCidFromDvMain - флаг - не импортировать CID из таблицы "dv/internet_main"
$confUserAccountSrc - источник лицевого счета абонента [uid|bill_id] (по-умолчанию: uid)
$confIsImportTags - флаг - импортировать абонентские метки (tags)
$confAddressSrc - источник информации об адресе абонента [builds|users_pi] (по-умолчанию: builds)
$confIsImportMsg - флаг - импортировать ли сообщения абонентов
$confPasswordSecretKey - "Secret Key" для расшифровки паролей абонентов (/usr/abills/libexec/config.pl - $conf{secretkey})
$confIsImportPasswordToUsPassword - флаг - импортировать ли пароль абонента в абонентский пароль UserSide
$confIsImportOnlyUsedAddress - флаг - импортировать только используемые адреса
$confIsPrimaryDvModule - флаг - использовать только информацию модуля DV
$confImportCustomerTaxNumber - импортировать налоговый номер абонента в доп.поля абонента (указать ID доп.поля)
$confTaxNumberField - имя поля с налоговым номером из таблицы "users"
$confImportCustomerPassport - импортировать паспорт абонента в доп.поля абонента (указать ID доп.поля)
$confPassportField - имя поля с паспортом из таблицы "users"
$confImportCustomerNasIp - импортировать NAS IP-адрес абонента в доп.поля абонента (указать ID доп.поля)
$confImportCustomerNasPort - импортировать NAS порт абонента в доп.поля абонента (указать ID доп.поля)
$confImportCustomerNasName - импортировать NAS имя абонента в доп.поля абонента (указать ID доп.поля)
$confImportCustomerNasVlan - импортировать NAS Vlan абонента в доп.поля абонента (указать ID доп.поля)
$confImportCustomerGroup - импортировать группу абонента в доп.поля абонента (указать ID доп.поля)
$confContactTypeIdPhone - Type Id таблицы user_contacts для импорта телефонного номера (по-умолчанию: 1)
$confContactTypeIdCellPhone - Type Id таблицы user_contacts для импорта номера мобильного телефона (по-умолчанию: 2)
Запуск в Docker-окружении
Если Вы используете USERSIDE в Docker-окружении, то вам наверняка будет интересно запускать в отдельных Docker-контейнерах и внешние модули usm.
Мы предоставляем docker-окружение для запуска модуля usm_abills (окружение не содержит файлов модуля - их необходимо загрузить из личного кабинета самостоятельно).
Загрузить docker-окружение можно по ссылке: https://github.com/userside/usm_abills-docker-env/releases