Send
01 : <Address> ; В каком порядке и кому будет направлено сообщение
Protocol.Message1 : 1 ; Сообщение
[Param1 : <значение>
...]
[Контроль результата]
[02 : <Address>
Protocol.Message2 : 1
[Param1 : <значение>
...]
[Контроль результата]
...]
Сокращенная форма конструкции используется в случае, когда необходимо отправить сообщение только одному получателю:
Send : <Address>
Protocol.Message1 : 1 ; Сообщение
[Param1 : <значение>
...]
[Контроль результата]
Конструкция Send используется для описания отправки сообщений. Сообщения будут помещены в очередь обработки в порядке следования индексов в списке. Конструкция имеется в полном и сокращенном синтаксисе. Сокращенная форма конструкции используется в случае, когда необходимо отправить сообщение только одному получателю. Контроль результата - опциональная секция Receive, описывающая анализ ответного сообщения и позволяющая задать необходимое решение.
Send
10: <LogManager>
Kernel.LogManager.LogEvent : 1
MachineState : "WaitForCard"
Message : "Произошла ошибка в модуле бесконтакного считывателя
Source : "Uniteller.Service.Logic.CardReader"
20: <Self>
Kernel.TimeOut : 1
Результат:
Будет отправлено два сообщения - одно (LogEvent) модулю с адресом <LogManager>, другое будет отправлено агентом самому себе (TimeOut).
Send : <LogManager>
Kernel.LogManager.LogEvent : 1
MachineState : "Init"
Message : "Начало инициализации контактного считывателя.
Source : "Uniteller.Service.Logic.CardReader"
Send : <Dictionary>
Dictionary.GetValue : 1
Key : "95"
Receive
01 : *
Dictionary.GetValueAnswer : 1
Exists : True
Raise
Kernel.Start : 1
02 : *
Dictionary.GetValueAnswer : 1
Raise
Kernel.Stop : 1