Протоколы Internet


Открытый торговый протокол Интернет– IOTP версия 0 - часть 34


/p>

4.5.1. Инициализация транзакций

Роли сервера могут инициировать большое число различных транзакций. В чатности:

o

Транзакцию информационного запроса (смотри раздел 9.2.1);

o

Транзакцию Ping (смотри раздел 9.2.2);

o

Транзакцию аутентификации (смотри раздел 9.1.6);

o

Транзакцию, сопряженную с платежем, такую как:

 

-

Депозит (смотри раздел 9.1.7);

 

-

Покупка (смотри раздел 9.1.8);

 

-

Возврат денег (смотри раздел 9.1.9);

 

-

Отзыв сделки (смотри раздел 9.1.10);

 

-

Обмен ценностями (смотри раздел 9.1.11).

4.5.2. Обработка входных сообщений

Обработка входных сообщений включает в себя:

o

проверку структуры и идентификацию сообщения;

o

выявление и обработку сообщений-дубликатов;

o

обработку недублированных, оригинальных сообщений, которая включает в себя:

-

выявление ошибок, и, если они не обнаружены,

-

обработку сообщений и, если требуется, выработку откликов.

4.5.2.1. Проверка структуры и идентификация сообщений

Крайне важно проверить, что сообщение имее корректную XML-форму и идентификатор транзакции (IotpTransID-атрибут компонента TransId) в сообщении IOTP может быть распознан, так как IotpTransId будет нужен при формировании отклика.

Если входное сообщение сформировано некорректно, тогда генерируется компонент Error с атрибутом Severity равным HardError и код ошибки XmlNotWellFrmd.

Если входное сообщение сформировано правильно, но IotpTransId не может быть идентифицировано, генерируется компонент Error с :

o

атрибутом Severity = HardError и кодом ошибки (ErrorCode) = AttMissing,

o

содержимым PackagedContent, включающим в себя "IotpTransId" потерянного атрибута.

Далее получатель вводит компонент Error в блок ошибки с новым компонентом TransactionId с новым IotpTransId и отправляет его отправителю исходного сообщения.

4.5.2.2. Выявление и обработка дублированных сообщений

Если входное сообщение может быть идентифицировано, как корректное, то проверяется, не получалось ли раньше точно такое же сообщение. Под идентичностью здесь подразумевается, что все блоки, компонентя, элементы, значения атрибутов и элементы содержимого тождественны.




Начало  Назад  Вперед