2.7.Организация очередей статусов 2.7.1Получение уведомления из очереди статусов Очереди статусов в СМЭВ закреплены за отправителями сообщений. В очередь статусов попадают уведомления, включающие сведения об ошибках асинхронной обработки сообщения. При использовании схем версии 1.1* основным механизмом доставки статусных сообщений об ошибках асинхронной обработки становятся системные ответы СМЭВ, получаемые методом getResponse. Статусная очередь в этом случае становится источником вспомогательной информации, например для получения сообщений об ошибках push-нотификаций. При получении уведомления из очереди статусов ИС отправителя, получатель выберет первое уведомление, имеющееся в очереди статусов данной ИС отправителя. Для получения уведомления из очереди статусов ИС отправителя необходимо вызвать метод getStatus. Перечень возможных ошибок, уведомления о которых могут содержаться в очереди статусов ИС отправителя сообщения, приведены в таблице ниже (Таблица ).
Таблица – Перечень возможных ошибок, уведомления о которых могут содержаться в очереди статусов ИС отправителя сообщения
№
| Наименование ошибки
| Причины возникновения
| 1
| Ошибка проверки ftp файлов вложения. Файлы повреждены либо данные о файлах, переданные в сообщении, некорректные.
| Не равен суммарный размер файлов вложения сообщения, находящегося в области долговременного хранения ФХ, суммарному размеру файлов вложения сообщения, находившегося в директории для записи ФХ.
Не равны хэши файлов вложения сообщения находящихся в области долговременного хранения ФХ, хэшам файлов вложения сообщения, находившихся в директории для записи ФХ.
| 2
| Сертификат ЭП-ОВ не действительный. Верификация в ГУЦ не пройдена: код ошибки=?
| ИС ГУЦ в ответ на запрос вернул результат о том, что сертификат ЭП-ОВ не действительный.
| 3
| Ошибка асинхронного процессинга СМЭВ. Данные сообщения некорректные либо отсутствуют.
| Некорректные данные о сообщении в БД сообщений, находящихся в очереди асинхронной обработки.
Отсутствует обратный адрес для сообщения, находящегося в очереди асинхронных процессов.
Отсутствует запись о сообщений в БД сообщений, находящихся в очереди асинхронной обработки.
В записи о сообщении в БД сообщений, находящихся в очереди асинхронной обработки, присутствуют противоречивые данные.
| В случае отсутствия уведомлений в очереди статусов получатель получит пустое уведомление.
2.7.2Структура сообщения с запросом уведомления из очереди статусов Структура сообщения, соответствующая передаче в СМЭВ запроса от ИС отправителя на получение уведомления из очереди статусов, приведена на рисунке ниже (Рисунок ).
Рисунок – Структура сообщения с запросом уведомления, которое ИС отправителя сообщения передает в СМЭВ
СМЭВ-конверт с запросом сведений (//GetStatusRequest), направляемый ИС отправителя в СМЭВ для получения уведомления из очереди статусов, включает элементы:
блок даты и времени отправки сообщения (//Timestamp), который включает сведения о дате и времени отправки сообщения для получения уведомления из очереди статусов;
электронная подпись органа власти (ЭП-ОВ) (//CallerInformationSystemSignature).
2.7.3Структура сообщения с уведомлением из очереди статусов Структура сообщения, соответствующая передаче из СМЭВ уведомления ИС отправителя из очереди статусов, приведена на рисунке ниже (Рисунок )14.
Рисунок – Структура сообщения с уведомлением, которое ИС отправителя сообщения получает из СМЭВ
СМЭВ-конверт со сведениями (//GetStatusResponse), получаемый ИС отправителя из СМЭВ, включающий уведомление из очереди статусов, включает элементы:
блок данных СМЭВ-конверта AsyncProcessingStatusData. Содержащий в себе элемент AsyncProcessingStatus;
электронная подпись СМЭВ (далее - ЭП-СМЭВ), (//SMEVSignature).
Блок данных СМЭВ-конверта //AsyncProcessingStatus содержит элементы:
UUID сообщения //OriginalMessageId, сформированный отправителем сообщения;
Категория статуса //StatusCategory;
Уведомление об описании статуса сообщения //StatusDetails, содержащий описание статуса сообщения;
Элемент типа SmevFault, содержащий в себе элемент Code, определяющий код ошибки и элемент Description, содержащий описание ошибки.
|