Протоколы Internet


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


/p>

4.6.1. Операции инициализации

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

o

Процедуру запроса (смотри раздел 9.2.1)

o

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

o

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

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

Обработка входных сообщений для роли покупателя происхотит также как и для IOTP-сервера (смотри раздел 4.5.2) за исключением проверки ошибок в последовательности блоков (для IOTP-сервера смотри раздел 4.5.2.4).

Описание обработки входных сообщений для сервера IOTP включает соображения многопроцессности и многозадачности. Для роли покупателя – в частности при работе на изолированной рабочей системе использование много процессности оставляется на усмотрение разработчика.

4.6.2.1. Поиск ошибки в последовательности блоков

Последовательность обработки блоков для роли покупателя та же, что и для IOTP-сервера (смотри раздел 4.5.2.4) за исключением того, что роль покупателя подставляется вместо роли сервера IOTP:

о

Блоки Error и Cancel,

o

Блоки отклика и информационного запроса,

o

Блоки запросов аутентификации, отклика и состояния.

Для других блоков роль покупателя может получать уведомление об ошибках в порядке прихода блоков и может зависеть от типа блоков. Блоки, где важна последовательность проверки перечислены ниже:

o

Блок TPO проверяется следующим образом:

 

- если входное сообщение содержит блок запроса аутентификации и блок отклика на предложение, то это серьезная (Hard) ошибка, в противном случае,

 

- если входное сообщение содержит блок запроса аутентификации и статуса аутентификации, то это серьезная (Hard) ошибка, в противном случае,

 

- если входное сообщение содержит блок запроса аутентификации и транзакция IOTP распознана системой покупателя, то это серьезная (Hard) ошибка, в противном случае,

 

- если входное сообщение содержит блок состояния аутентификации и транзакция IOTP распознана системой покупателя, то это серьезная (Hard) ошибка, в противном случае,

 

- если входное сообщение содержит блок состояния аутентификации, а блок состояния аутентификации послан до сообщения-отклика аутентификации, то это серьезная (Hard) ошибка,

 

- если входное сообщение содержит блок отклика на предложение и транзакция IOTP распознана системой покупателя, то это серьезная (Hard) ошибка, в противном случае,

o

Блок отклика предложения проверяется следующим образом:

 

- если блок отклика на предложение является частью брэнд-независимого обмена предложения (смотри раздел 9.1.2.2), тогда никакой проверки последовательности не нужно, так как это первое сообщение, в противном случае,

 

- если блок отклика на предложение не является частью транзакции IOTP, которая распознана покупателем, то это серьезная (Hard) ошибка, в противном случае,

 

- если блок отклика на предложение не относится к транзакции, где в последнем сообщении послан блок выбора TPO, то это серьезная (Hard) ошибка.

o

Блок платежного обмена проверяется следующим образом:

 

- если блок платежного обмена не относится к транзакции IOTP, которая распознана системой покупателя, то это серьезная (Hard) ошибка, в противном случае,

 

- если платежный обмен не относится к транзакции IOTP, где только что послан блок платежного запроса или платежного обмена, то это серьезная (Hard) ошибка.

o

Блок платежного отклика проверяется следующим образом:

 

- если блок платежного отклика не относится к транзакции IOTP, которая распознана системой Покупателя, то это серьезная (Hard) ошибка, в противном случае,

 

- если блок платежного отклика не относится к транзакции IOTP, где только что послан блок платежного обмена или блок платежного запроса, то это серьезная (Hard) ошибка.

o

Блок отклика доставки проверяется следующим образом:

 

- если блок отклика доставки не относится к транзакции IOTP, которая распознана системой Покупателя, то это серьезная (Hard) ошибка, в противном случае,

 

- если блок отклика доставки не относится к транзакции IOTP, где только что послан блок запроса платежа или платежного обмена, то это серьезная (Hard) ошибка.

<


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