33.4. MLLP Consumer
MLLP Consumer 支持接收 MLLP-framed 消息并发送 HL7 Acknowledgements。MLLP Consumer 可以自动生成 HL7 Acknowledgement (HL7 Application Acknowledgements - AA, AE 和 AR),也可以使用 CamelMllpAcknowledge Exchange 属性指定确认。此外,可通过设置 CamelMllpAcknowledgementType Exchange 属性来控制将生成的确认类型。如果自动确认是禁用并且交换模式为 InOnly,则 MLLP Consumer 可以读取消息而不发送任何 HL7 Acknowledgement。
33.4.1. 消息标头
MLLP Consumer 在 Camel 信息上添加了这些标头:
键 | 描述 |
CamelMllpLocalAddress | 套接字的本地 TCP 地址 |
CamelMllpRemoteAddress | 套接字的本地 TCP 地址 |
CamelMllpSendingApplication | MSH-3 值 |
CamelMllpSendingFacility | MSH-4 值 |
CamelMllpReceivingApplication | MSH-5 值 |
CamelMllpReceivingFacility | MSH-6 值 |
CamelMllpTimestamp | MSH-7 值 |
CamelMllpSecurity | MSH-8 值 |
CamelMllpMessageType | MSH-9 值 |
CamelMllpEventType | MSH-9-1 值 |
CamelMllpTriggerEvent | MSH-9-2 值 |
CamelMllpMessageControlId | MSH-10 值 |
CamelMllpProcessingId | MSH-11 值 |
CamelMllpVersionId | MSH-12 value |
CamelMllpCharset | MSH-18 value |
所有标头都是字符串类型。如果缺少标头值,则其值为 null。
33.4.2. Exchange 属性
MLLP Consumer 生成和状态的 MLLP 消费者类型可由 Camel 交换上的这些属性控制:
键 | 类型 | 描述 |
---|---|---|
CamelMllpAcknowledgement | byte[] | 如果存在,此属性将作为 MLLP Acknowledgement 发送到客户端 |
CamelMllpAcknowledgementString | 字符串 | 如果现在和 CamelMllpAcknowledgement 不存在,此属性将作为 MLLP Acknowledgement 发送到客户端 |
CamelMllpAcknowledgementMsaText | 字符串 | 如果没有 CamelMllpAcknowledgement 或 CamelMllpAcknowledgementString,且 autoAck 为 true,则此属性可用于在生成的 HL7 确认中指定 MSA-3 的内容 |
CamelMllpAcknowledgementType | 字符串 | 如果没有 CamelMllpAcknowledgement 或 CamelMllpAcknowledgementString,且 autoAck 为 true,则此属性可用于指定 HL7 确认类型(如 AA、AE、AR) |
CamelMllpAutoAcknowledge | 布尔值 | 覆盖 autoAck 查询参数 |
CamelMllpCloseConnectionBeforeSend | 布尔值 | 如果为 true,则套接字将在发送数据前关闭 |
CamelMllpResetConnectionBeforeSend | 布尔值 | 如果为 true,则会在发送数据前重置套接字 |
CamelMllpCloseConnectionAfterSend | 布尔值 | 如果为 true,则发送数据后套接字会立即关闭 |
CamelMllpResetConnectionAfterSend | 布尔值 | 如果为 true,则发送任何数据后,套接字将立即重置 |