Новая версия интеграции с СОРМ МФИ Софт согласно докумнетации 2020 года.
Про новую версию
Для чего новая версия?
- За 2 года МФИ обновили структуру СОРМ и добавились новые поля
- Предыдущая версия сложна в установке.
Отличия от старой интеграции
- Полностью переписан скрипт выгрузки и принцип интеграции в cron
- Добавлены файлы заголовков
Что не готово
Всё готово, ожидаем проверку этой версии с ФСБ. К сожалению, процесс не быстрый, вероятно ближе к концу 2020.
Как развернуть
- Скачайте архив с файлами интеграции и распакуйте в нужной директории:
yum install -y wget wget --no-check-certificate https://docs.carbonsoft.ru/download/attachments/186286305/sorm3-mfi_202008.tar.gz tar xzf sorm3-mfi_202008.tar.gz -C /app/asr_billing/cfg/
- Выполните скрипт настройки, он добавит системный атрибут типам документа (паспорт, загранпаспорт и тд), добавит его всем абонентам, настроит планировщик ОС и ротацию файла журнала
/app/asr_billing/cfg/sorm3-mfi/configure.sh
- Исправьте файл /app/asr_billing/cfg/sorm3-mfi/config - укажите там параметры Вашего FTP. Должно быть что-то вроде этого:
scrits_dir="/app/asr_billing/cfg/sorm3-mfi/" sql_dir="/app/asr_billing/cfg/sorm3-mfi/sql_csv" data_dir="/app/asr_billing/var/sorm3_data" ftp_ip=10.90.1.185 ftp_login=carbon ftp_pass=carbon
Что нужно знать о выгрузках, скриптах и тд
Примечания по архитектуре интеграции
- По-умолчанию автоматический делаются выгрузки:
- раз в сутки: abonents abonent_ident abonent_address abonent_service
- раз в час: undefined_payment
- Если хотите изменить частоту или набор выгрузок - поправьте /app/asr_billing/cfg/sorm3-mfi/etc-host/cron.d/sorm3-mfi-upload.sh и перезапустите cron
- Справочники нужно выгружать только при необходимости вручную, передав имена нужных выгрузок. Примерно так:
/app/asr_billing/cfg/sorm3-mfi/upload.sh ip_gateway ip_plan commutators gateways regions supplementary_service
Какие выгрузки формируются
- Данные об абонентах
- ABONENT
- ABONENT_IDENT
- ABONENT_SERVICE
- ABONENT_ADDRESS
- Справочные данные
- COMMUTATORS
- GATEWAYS
- IP_GATEWAY
- IP_PLAN
- SUPPLEMENTARY_SERVICE
- DOC_TYPE
- PAY_TYPE
- UNDEFINED_PAYMENT
Как сделать выгрузку вручную
Скриптом upload.sh, в качестве параметров через пробел перечислите нужные отчёты для выгрузки, например:
/app/asr_billing/cfg/sorm3-mfi/upload.sh gateways
Можете запустить без параметров, скрипт напшиет краткую справку и список отчётов которые можно выполнить:
/app/asr_billing/cfg/sorm3-mfi/upload.sh
2020-08-05 15:48:58 скрипт запущен Укажите какие отчёты надо выгружать. Например: mupload.sh abonents abonent_ident abonent_address abonent_service Справочники и данные об абонентах, которые можно выгрузить этим скриптом: abonent_address abonent_ident abonents abonent_service commutators gateways ip_gateway ip_plan regions supplementary_service undefined_payment
Как запустить настройку
Запустите скрипт configure.sh:
/app/asr_billing/cfg/sorm3-mfi/configure.sh
Если нужно выполнить только какую-то часть, например добавить массово атрибут новым абонентам, укажите это первым агрументом функции, например:
./configure.sh prepare_references ./configure.sh prepare_abonents ./configure.sh install_cron ./configure.sh install_logrotate ./configure.sh prepare_payment_report
- prepare_references - добавит реквизит типа документа
- prepare_abonents - добавит реквизит всем абонентам физлицам у кого его ещё нет
- install_cron - добавить задачу в планировщик и перезапустит его
- install_logrotate - настроит ротацию журнала выгрузки в СОРМ
- prepare_payment_report - сделает выгрузку актуального списка платёжных системы pay_types.csv и настроит SQL ежечасной выгрузки платежей undefined_payment.sql
Отладка
Если выгрузка не прошла, или произошла с какой-либо ошибкой (пустые файлы, или оборванные "на середине"), посмотреть, как проходила выгрузка можно в файле журнала на сервере:
/app/asr_billing/var/log/sorm3_upload.log
Есть три наиболее распространённые причины.
1. Проблема с CRON
Если выгрузка совсем не проходила и данных в журнале нет, возможно есть проблема с планировщиком задач - он может быть выключен, может неправильно сконфигурирован, или самим скриптом /etc/cron.d/sorm3-mfi-upload.sh - возможно на нём не установлены права на выполнение.
- Возможно cron просто выключен, включить можно командой:
/etc/init.d/crond start
- Убедитесть что файл /etc/init.d/cron исполняемый:
chmode a+x /etc/init.d/crond
- Если есть какие-то ошибки в работе, Вы можете найти информацию о них в файле /var/log/cron. К сожалению, отладка крона уже выходит за рамки документации продукта Carbon Billing. Пожалуйста, обратитесь к документации CRON если это Ваш случай.
2. Проблема в формировании выгрузки (в отчётах)
Мы написали краткую статью по отладке отчётов: Отладка отчетов. По ней Вы можете решить такую проблему.
3. Проблема с выгрузкой на FTP
Наша система резервного копирования так же использует FTP-сервера для хранения резервных копий удалённо.
В документаци по отладке выгрузки резервных копий мы описали распространённые причины, почему данные могут не выгружаться: [ALARM Ошибка автоматической резервной копии!]