2016-04-28 81 views
0

我試圖弄清楚是否可以設置Mirth將2 ACK發回給主叫應用程序: A)1當傳輸已發送時,由Mirth發送給主叫方的ACK來自Mirth; B)在信道完成處理消息後,1從Mirth發送給主叫方的ACK。歡樂連接:2路ACK

我知道,歡樂可以被配置的處理之前發送ACK(情況A以上)或處理(情況B以上),但之後,我找不到任何方式同時發送。 有沒有人有這樣做的經驗? 謝謝大家的幫助。

回答

0

歡樂使用單個responseMap來存儲其所有的腳本後處理確認。因此,如果您在接收到消息時將任何內容放入其中,則此Ack將在最後放入相同地圖中的新Ack中覆蓋。只有後者會發送,你已經經歷過,我猜。

如果我是正確的,你試圖實現的是,首先,確認消息是由遠程位置接收的(我們稱之爲系統B),其次,確認消息已成功處理。如果您的客戶端(系統A)能夠向系統B的兩個端點發送消息,那麼您可以在系統B端創建兩個接收通道,其中一個通道在接收到該消息後立即發送ACK並且不執行任何操作。另一個通道處理消息並在後處理器中發送ACK。

還有其他的選擇,比方說,在系統B側重定向傳入消息到形成的Ack,並將其發送回系統A,但隨後系統A應該具有在其一側的監聽另一信道。

或者,系統B可能有一個接收通道,立即發送確認,路由消息到連接到其目的地的另一個通道,並刪除該目的地以防止傳入消息傳播到該通道。第二個通道處理消息並將Ack發送回第一個通道。第一通道重新發送確認回系統A.(我沒有測試過這樣的配置,所以這只是一個想法,克服單一responseMap,它可能無法正常工作。)

+0

謝謝您的幫助,您指引我在正確的軌道上。 它工作得很好,我有一個「調度員」信道監聽端口5000,其中,確認收到該消息時,相同的IP /端口上,並在相同的連接,然後轉發使用MLLP(消息到第二信道上同樣的歡樂,但在港口5001)。 這個第二個通道詳細描述了HL7消息,等待來自應用程序的ACK(應用程序ACK),然後將這個第二個ACK的結果發送到另一個IP /端口(由HIS管理員給我) 。 –