Example of two-way message transfer process
An example of business processes that describes where an Initiator and Responder workflow ID would be appropriate is when a pharmacy sends a flu vaccination message to a GP.
The Pharmacy is the initiator of the conversation and therefore has the initiator Workflow ID EXAMPLE_FLU_VAC. The GP then responds with a message to let the pharmacy know it has received and processed the message. That is, updated the patient’s medical record with the vaccination details. Therefore the GP practice has the Responder Workflow ID EXAMPLE_FLU_VAC_ACK.
The ‘ACK’ refers to an acknowledgement which is the general term used for this type of messaging. This is a business ACK which is different to the mailbox acknowledging the download to MESH which simply indicates it has successfully downloaded the message.
In almost all cases a mailbox has either an initiator, or a responder workflow ID for a given Workflow Group but not both.
Being set as an Initiator of a Workflow Group means that a mailbox may Send messages with any of the WorkflowID's in that group's Initiator list. It also means that the mailbox can Receive messages with any of the WorkflowID's in the group's Responder list.
Conversely, being set as a Responder of a Workflow Group means that a mailbox may Send messages with any of the WorkflowID's in that group's Responder list. It also means that the mailbox can Receive messages with any of the WorkflowID's in the group's Initiator list.
Workflow group: EXAMPLE FLU VAC
Initiator worfkflow: EXAMPLE_FLU_VAC
Responder workflow: EXAMPLE_FLU_VAC_ACK
This is summarised as:
Mailbox |
Workflow group initiator or responder |
Workflow group |
Direction |
Allowed |
Pharmacy |
Initiator |
EXAMPLE_FLU_VAC |
Send |
Yes |
Pharmacy |
Initiator |
EXAMPLE_FLU_VAC |
Receive |
No |
Pharmacy |
Initiator |
EXAMPLE_FLU_VAC_ACK |
Send |
No |
Pharmacy |
Initiator |
EXAMPLE_FLU_VAC_ACK |
Receive |
Yes |
GP |
Responder |
EXAMPLE_FLU_VAC |
Send |
No |
GP |
Responder |
EXAMPLE_FLU_VAC |
Receive |
Yes |
GP |
Responder |
EXAMPLE_FLU_VAC_ACK |
Send |
Yes |
GP |
Responder |
EXAMPLE_FLU_VAC_ACK |
Receive |
No |