СОРМ Январь, версия 2020 (архивная)

Ключ
Эта строка удалена.
Это слово было удалено. Это слово было добавлено.
Эта строка добавлена.

Изменения (24)

просмотр истории страницы
Новая версия интеграции с СОРМ МФИ Софт согласно докумнетации документации 2020 года.

{toc}

h2. Про новую версию

h3. Для чего новая версия?

* За 2 года МФИ обновили структуру СОРМ и добавились новые поля
* Предыдущая версия сложна в установке.

h3. Отличия от старой интеграции

# Полностью переписан скрипт выгрузки и принцип интеграции в cron
# Добавлены файлы заголовков

h3. Что не готово

Всё готово, ожидаем проверку этой версии с ФСБ. К сожалению, процесс не быстрый, вероятно ближе к концу 2020.

h2. Как развернуть

{code}
yum install -y wget
wget --no-check-certificate https://docs.carbonsoft.ru/download/attachments/186286305/sorm3-mfi_202008.tar.gz https://docs.carbonsoft.ru/download/attachments/186286305/sorm3-mfi_20210831.tar.gz
tar xzf sorm3-mfi_202008.tar.gz -C /app/asr_billing/cfg/
mkdir /app/asr_billing/cfg/sorm3-mfi
tar xzf sorm3-mfi_20210831.tar.gz -C /app/asr_billing/cfg/sorm3-mfi/
{code}
# Выполните скрипт настройки, он добавит системный атрибут типам документа (паспорт, загранпаспорт и тд), добавит его всем абонентам, настроит планировщик ОС и ротацию файла журнала
{code}/app/asr_billing/cfg/sorm3-mfi/configure.sh{code}
# Исправьте файл */app/asr_billing/cfg/sorm3-mfi/config* - укажите там параметры Вашего FTP. Должно быть что-то вроде этого:
# Исправьте файл */app/asr_billing/cfg/sorm3-mfi/config.ini* - укажите там параметры Вашего FTP. Секция FTP в конфигурационном файле должна выглядеть приблизительно так:
{code}
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]
# Данные подключения к FTP
ftp_ip=10.90.1.185
ftp_login=carbon
{code:title=Команда}/app/asr_billing/cfg/sorm3-mfi/upload.sh{code}
{code:title=Вывод}
2020-08-05 15:48:58 скрипт запущен
2021-08-11 12:17:58 скрипт запущен

Укажите какие отчёты надо выгружать. Например:

mupload.sh abonents abonent_ident abonent_address abonent_service

Справочники и данные об абонентах, которые можно выгрузить этим скриптом:

abonent
abonent_address
abonent_ident
abonents
abonent_service
commutators
supplementary_service
undefined_payment
doc_type
pay_type


Ещё скрипт можно запустить с дебагом, тогда файлы будут созданы, но без выгрузки на FTP. Например:

upload.sh abonent --debug
{code}


Запустите скрипт configure.sh:
{code}/app/asr_billing/cfg/sorm3-mfi/configure.sh{code}
{code}/app/asr_billing/cfg/sorm3-mfi/configure.sh all{code}

Если нужно выполнить только какую-то часть, например добавить массово атрибут новым абонентам, укажите это первым агрументом функции, например:
{code}
./configure.sh prepare_references
./configure.sh prepare_abonents
./configure.sh install_cron
./configure.sh install_logrotate
./configure.sh prepare_payment_report
{code}

* prepare_references - добавит реквизит типа документа
* prepare_abonents - добавит реквизит всем абонентам физлицам у кого его ещё нет
* install_cron - добавить задачу в планировщик и перезапустит его
* install_logrotate - настроит ротацию журнала выгрузки в СОРМ
* prepare_payment_report - сделает выгрузку актуального списка платёжных системы *pay_types.csv* и настроит SQL ежечасной выгрузки платежей *undefined_payment.sql*
Если запустить скрипт без парамеров, он выведет справку
{code}
Укажите, что нужно настроить:

prepare_references - создать реквизит с типами документов, удостоверяющих личность
prepare_abonents - добавить всем абонентам реквизит с типом документа Паспорт гражданина РФ
make_doc_type - сформировать справочник с типами документов для выгрузки на СОРМ
install_cron - настроить CRON
install_logrotate - настроить logrotate
prepare_payment_report - выгрузить справочник используемых платёжных систем и подготовить sql для выгрузки платежей
all - всё вышеперечисленное


Например:

configure.sh all
{code}

h2. Отладка

* Убедитесть что файл /etc/init.d/cron исполняемый:
{code}chmode a+x /etc/init.d/crond{code}
* Проверьте, чтобы скрипт имел следующие права
{code} [root@carbontesst]# ll /app/asr_billing/cfg/sorm3-mfi/etc-host/cron.d/sorm3-mfi-upload
-rw-r--r-- 1 root root /app/asr_billing/cfg/sorm3-mfi/etc-host/cron.d/sorm3-mfi-upload{code} Выставить данные права можно с помощью команды
{code}chmod 644 /app/asr_billing/cfg/sorm3-mfi/etc-host/cron.d/sorm3-mfi-upload{code}
* Если есть какие-то ошибки в работе, Вы можете найти информацию о них в файле */var/log/cron*. К сожалению, отладка крона уже выходит за рамки документации продукта Carbon Billing. Пожалуйста, обратитесь к документации CRON если это Ваш случай.


В документаци по отладке выгрузки резервных копий мы описали распространённые причины, почему данные могут не выгружаться: [ALARM Ошибка автоматической резервной копии!|https://docs.carbonsoft.ru/pages/viewpage.action?pageId=51019784#Системамониторинга-ALARMОшибкаавтоматическойрезервнойкопии\!]

h3. 4. Можно формировать выгрузки, но не выгружать на FTP, чтобы их отлаживать?

Можно, для этого добавьте флаг *--debug* скрипту upload.sh, например:
{code}/app/asr_billing/cfg/sorm3-mfi/upload.sh regions ip_plan --debug{code}
Если справочники в биллинге заполнены и по структуре запросов есть подходящие данные для выгрузки, то в выводе скрипт напишет пути к файлам:
{code}
...
2021-08-11 12:03:01 Пукть к файлу: /app/asr_billing/var/sorm3_data/done//REGIONS_20210811_1203.csv
...
2021-08-11 12:03:01 Пукть к файлу: /app/asr_billing/var/sorm3_data/done//IP_PLAN_20210811_1203.csv
{code}
Если в биллинге не заведены данные, которы можно выгрузить, то скрипт напишет что файлы сырой выгрузки пусты, например:
{code}
2021-08-11 12:02:49 Файл /app/asr_billing/var/sorm3_data/gateways.csv_raw пуст
2021-08-11 12:02:49 Файл /app/asr_billing/var/sorm3_data/undefined_payment.csv_raw пуст
{code}
Отладить это Вы можете по статье [CarbonBilling:Отладка отчетов]