Процесс отправки делится на два этапа. Перед непосредственной отправкой сообщения субъекту-получателю передаются значения параметров. Процесс передачи пытается передать сообщение целевому субъекту и положить сообщение в его Input Pool. В соответствии с описанной конфигурацией и статусом Input Pool сообщение либо сразу оставляется там, либо отправивший его субъект блокируется до тех пор, пока пересылка не станет возможной.
В примере «Заявки па КЗ» сотрудник передает заполненное заявление сообщением «Послать запрос на КЗ начальнику» в Input Pool начальника. В состоянии отправки может быть разослано несколько альтернативных сообщений.
Следующий пример показывает состояние отправки, в котором сообщение Ml посылается субъекту S1 или же сообщение М2 передается S2, и таким образом, обозначается как альтернативная отправка (рис 5.3). При этом все равно, какое сообщение будет отправлено в первую очередь. Если процесс отправки успешен, то выполняется изменение состояния. Если же сообщение не может быть сохранено в Input Pool целевого субъекта, то процесс отправки автоматически прерывается, и осуществляются попытки отправки другого сообщения.
Отправляющий субъект будет заблокирован только в том случае, если у него нет других сообщений.
Рис. 5.3. Пример отправки альтернативных сообщений:
М1 и М2 — различные сообщения С помощью введения приоритетов можно повлиять на порядок отправки. Так, в примере может быть определено, что сообщение Ml для S1 имеет более высокий приоритет, чем сообщение М2 для S2. Согласно этим данным отправляющий субъект сначала пробует отправить сообщение Ml для.
S1 и затем только при неудаче сообщение М2 для S2. Если и сообщение М2 не может быть передано субъекту S2, то попытки отправки начинаются заново. Блокировка субъектов при попытках передачи может временно контролироваться с помощью установки тайм-аута. В примере на рис. 5.4 показан «тайм-аут 24 часа» — дополнительный переход состояния, если получится так, что в течение 24 часов не удастся отправить ни одно из двух сообщений. Если для тайм-аута указывается нулевое значение, то процесс сразу же следует по пути тайм-аута, при условии что альтернативная отправка сообщения полностью не удается.
Рис. 5.4. Пересылка при наличии тайм-аута.