简体   繁体   English

有关HL7侦听器的几个问题

[英]A few questions regarding an HL7 Listener

I'm looking to build an HL7 listener in C#. 我正在寻找在C#中构建HL7侦听器。 We are already parsing messages that are sent to us as text files and importing them into the database, so I have an understanding of what HL7 messages are and how to parse them. 我们已经在解析作为文本文件发送给我们的消息,并将它们导入数据库中,因此我对什么是HL7消息以及如何解析它们都有一定的了解。

My main question regarding the listener. 我关于听众的主要问题。 Is the listener simply a TCP listener? 侦听器是否只是TCP侦听器? If so, could I put together a basic TCP listener that gets the message and parses the results, importing them into our database? 如果是这样,我是否可以组合一个基本的TCP侦听器来获取消息并解析结果,然后将其导入到我们的数据库中?

My second questions is regarding the ACK. 我的第二个问题是关于ACK。 My understanding of this is it's simply a message sent back to the sender after receiving a message. 我对此的理解是,它只是在收到邮件后将邮件发送回发件人。 It's simply another HL7 message designated as a response message. 这只是指定为响应消息的另一条HL7消息。

Am I correct in my understanding? 我的理解正确吗? Also if anyone has any additional info or pointers I would appreciate any help. 另外,如果有人有任何其他信息或指针,我将不胜感激。

Yes it's just a simple TCP listener. 是的,它只是一个简单的TCP侦听器。

To acknowledge a message you have to return an MSH message which should look somehting like this: 要确认一条消息,您必须返回一条MSH消息,该消息看起来像这样:

<11> this means a byte represented in a decimal value. this is VT from the ascii table.    

<11>MSH|^~\&|KS||LAB||20040915080800||ACK|59793000678|P|2.2|59793000678<13>
MSA|AA|59793000678<13>
<28><13>

You should probably look at: http://nhapi.sourceforge.net/home.php 您可能应该看一下: http : //nhapi.sourceforge.net/home.php

Several items: 几项:

  1. The "protocol" run over the socket is the HL7 Minimal Lower-layer Protocol (MLP or sometimes MLLP). 套接字上运行的“协议”是HL7最小下层协议(MLP或有时为MLLP)。 This simple protocol wraps HL7 messages with start and end characters. 这个简单的协议用开始和结束字符包装HL7消息。 A description HL7 MLP wrapping characters. HL7 MLP包装字符的描述
  2. As noted by @the_ajp, as a receiver of an HL7 message, you need to build an HL7 Acknowledgment. 如@the_ajp所指出的,作为HL7消息的接收者,您需要构建HL7确认。 There are some archaic rules involved but ultimately the part that is key is that you Application Accept ("AA") the message in MSA-1. 涉及一些古老的规则,但是最终关键的部分是您接受MSA-1中的消息(“ AA”)。 Some senders are very picky about their Acks and require unique message IDs, acknowledgment of correct message, correct trigger code in MSH-9, etc. Details on the HL7 ACK Message ; 一些发件人是关于他们的Ack非常挑剔和需要唯一的消息ID,正确的消息的确认时,在MSH-9正确的触发代码等细节有关HL7 ACK消息 ; discussion of original and enhanced HL7 acknowledgments . 原始和增强HL7确认的讨论。
  3. Clearly you can grow your own HL7 subsystem that is hard coded. 显然,您可以发展自己的经过硬编码的HL7子系统。 Prior to doing that, however, consider the total costs of building and supporting an HL7 subsystem , look at some free options like Mirth , and consider commercial solutions like Corepoint or Interfaceware . 但是,在此之前,请考虑构建和支持HL7子系统总成本 ,查看一些免费选项(例如Mirth) ,并考虑商业解决方案(例如CorepointInterfaceware)

Disclosure: I'm co-chair of the HL7 Infrastructure and Message (InM) committee, CTO at Corepoint, and Chief Architect of the Cloverleaf integration engine. 披露:我是HL7基础结构和消息(InM)委员会的联合主席,Corepoint的CTO和Cloverleaf集成引擎的首席架构师。

Buy Vs. 购买与 Build. 建立。 If you've already "done" your HL7 interface and it works off of the file-system then why on earth would you want to rebuild something that's so readily available. 如果您已经“完成”了HL7接口并且它可以在文件系统上运行,那么为什么您要重建那么容易获得的东西。 There's the Mirth project which is open source or if you want something that Mirth项目是开源的,或者如果您想要一些

a) Does exactly what you're looking for out of the box (in that it was designed for exactly the scenario you outline). a)开箱即用地恰好满足您的需求(因为它正是为您概述的情况而设计的)。

b) Has one of the (if not THE) lowest cost in the world for commercial HL7 software of this kind. b)对于此类商业HL7软件,其成本是世界上最低(如果不是最低)之一。

c) Installs and configures in minutes. c)在几分钟内安装和配置。

Investigate a little bit and look at this: http://www.hermetechnz.com/EasyHL7/Prod_Listeners.asp . 进行一些调查并查看以下内容: http : //www.hermetechnz.com/EasyHL7/Prod_Listeners.asp

Unless you are really looking at doing many hundreds or thousands of deployments a year you just have to ask yourself if it's the best use of your time. 除非您真的打算每年进行数百或数千次部署,否则您只需要问问自己,这是否是您时间的最佳利用方式。

DISCLOSURE: I work in customer support at this company, but we don't employ salespeople at all, it's just a great, cheap, reliable HL7 product in use all over the world. 披露:我在这家公司从事客户支持工作,但我们根本没有雇用销售人员,这只是一种在世界范围内使用的优质,便宜,可靠的HL7产品。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM