Для отправки и приема сообщений СМЭВ можно использовать несколько интерфейсов, в том числе файловый интерфейс.
В данной статье будет рассмотрен порядок получения запроса и отправки ответа через интерфейс файлового хранилища Адаптера СМЭВ. Такой режим работы характерен для ИС ответчика.
При работе Адаптера СМЭВ в режиме файлового хранилища обмен сообщениями осуществляется через файловую структуру, создаваемую Адаптером СМЭВ и расположенную в директории /opt/adapter/integration/ для Linux, либо в директории C:\Program Files\SmevAdapter\integration\files для Windows:
№ |
Директория |
Наименование |
Назначение |
Описание |
1 |
Директория ИС УВ |
Мнемоника информационной системы Участника |
Директория предназначена для временного хранения всех файлов сообщений, отправляемых и поступающих из Адаптера СМЭВ |
Корневая директория файловой структуры, используемой при файловом обмене |
2 |
Директория входящих сообщений |
in |
Директория является входящей очередью сообщений и предназначена для временного хранения файлов входящих сообщений одной информационной системы Участника, поступивших из Адаптера СМЭВ |
Директория входящих сообщений содержит неограниченное множество текстовых файлов, содержащих сообщения: - запросов, поступивших из СМЭВ; - ответов на запросы, поступивших из СМЭВ; - Бизнес ошибок обработки сообщений в адаптере, либо поступивших из СМЭВ; - Статусных сообщений, поступивших из СМЭВ. Адаптер в процессе записи в папку «in» блокирует записываемый файл, чтобы информационная система Участника не могла начать чтение либо изменение данного файла до завершения его записи. |
3 |
Директория исходящих сообщений |
out |
Директория является исходящей очередью сообщений и предназначена для временного хранения файлов исходящих сообщений одной информационной системы Участника, отправляемых в Адаптер СМЭВ |
Директория исходящих сообщений содержит неограниченное множество текстовых файлов, содержащих сообщения: - запросов, отправляемых в СМЭВ; - ответов на запросы, отправляемых в СМЭВ. Информационной системе Участника в процессе записи в папку «out» необходимо блокировать записываемый файл для того, чтобы Адаптер СМЭВ не смог начать чтение либо удаление данного файла одновременно с его записью. |
Как включить и настроить способ использования ИС «Файловое хранилище»
Для включения способа использования «Файловое хранилище» перейдите на страницу «Информационные системы» и выберите из выпадающего списка «1.2. Способ использования» значение «Файловое хранилище»:
Если у вас нет достаточных оснований для размещения директорий в другом месте, оставьте предложенные по умолчанию пути к директориям без изменения.
При этом в директории Адаптера СМЭВ будет создано дерево директорий:
В Windows созданное дерево директорий будет выглядеть так:
Как получить запрос
Сообщения СМЭВ с запросами будут приняты Адаптером СМЭВ из СМЭВ и помещены в директорию «in». В Linux директория «in» с входящими сообщениями выглядит так:
В Windows вы увидите аналогичную картину:
Каждый из XML-файлов в директории входящих сообщений представляет собой запрос ИС инициатора на получение сведений по ВС, который можно открыть, обработать, направив ответ.
Как сформировать XML-конверт сообщения
XML-конверт «ClientMessage.xml» выглядит так:
Для формирования значения тега «clientId» вы можете воспользоваться любым из онлайн генераторов UUID. Например, вот этим.
Как отправить сообщение
Скопируйте файл «ClientMessage.xml» в директорию исходящих сообщений. Для Linux это будет директория /opt/adapter/integration/files/MNEMONIC/out/, для Windows директория C:\Program Files\SmevAdapter\integration\files\MNEMONIC\out.
Через некоторое время Адаптер СМЭВ проверит директорию исходящих сообщений, обнаружит и обработает файл «ClientMessage.xml», после чего отправит сообщение в СМЭВ. При этом Адаптер СМЭВ удалит исходный файл сообщения и поместит файл отправленного исходящего сообщения в директорию «sent». Для Linux это выглядит так:
Для Windows директория «sent» с отправленным файлом сообщения выглядит так:
Сообщение успешно отправлено.
ЛК УВ предоставляет возможность просмотра информации о сеансах обмена в СМЭВ.Информация о сеансе обмена включает в частности:
- СМЭВ-идентификатор инициирующего запроса;
- СМЭВ-идентификатор направленного ответа;
- продолжительность обработки на стороне ИС ответчика.