2012-06-20 22 views
6

Estoy buscando construir un oyente HL7 en C#. Ya estamos analizando los mensajes que se nos envían como archivos de texto y los estamos importando en la base de datos, por lo que entiendo qué son los mensajes HL7 y cómo analizarlos.Algunas preguntas con respecto a un Oyente HL7

Mi pregunta principal con respecto al oyente. ¿El oyente es simplemente un oyente TCP? Si es así, ¿podría juntar un oyente TCP básico que recibe el mensaje y analiza los resultados, importándolos en nuestra base de datos?

Mi segunda pregunta es sobre el ACK. Mi comprensión de esto es que simplemente es un mensaje enviado al remitente después de recibir un mensaje. Es simplemente otro mensaje HL7 designado como mensaje de respuesta.

¿Es correcto en mi comprensión? Además, si alguien tiene información adicional o sugerencias, agradecería cualquier ayuda.

+0

Hola, necesito crear un oyente HL7 ADT, ¿con qué terminaste? Apreciar tanto – VAAA

+0

@VAAA ¿Al final te refieres al personaje que cierra el mensaje? Si es así, eche un vistazo a la respuesta aceptada, esos son los personajes que necesita agregar. – Jhorra

+0

Creo un receptor de socket C# y recibo el mensaje HL7, pero cuando lo decodizo agrega chacales adicionales que están generando problemas al analizarlo. Esta es mi codificación: codificador ASCIIEncoding = new ASCIIEncoding(); var hl7Message = encoder.GetString (mensaje, 0, bytesRead); – VAAA

Respuesta

7

Sí, es simplemente un simple oyente TCP.

Para confirmar un mensaje que tiene que devolver un mensaje MSH que debe mirar somehting así:

<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> 

Probablemente debería tener en cuenta: http://nhapi.sourceforge.net/home.php

+0

¿Cuál es la estructura del mensaje de acuse de recibo? THanks – VAAA

+0

Ese es el mensaje que puse allí. :) – albertjan

6

Varios artículos:

  1. Los El "protocolo" que se ejecuta sobre el socket es el HL7 Minimal Lower-layer Protocol (MLP oa veces MLLP). Este protocolo simple envuelve los mensajes HL7 con caracteres de inicio y final. A description HL7 MLP envolviendo caracteres.
  2. Según lo observado por @the_ajp, como receptor de un mensaje HL7, debe crear un acuse de recibo HL7. Hay algunas reglas arcaicas involucradas pero, en última instancia, la parte clave es que la aplicación acepte ("AA") el mensaje en MSA-1. Algunos remitentes son muy exigentes con sus Acks y requieren identificadores de mensajes únicos, acuse de recibo del mensaje correcto, código de activación correcto en MSH-9, etc. Detalles sobre HL7 ACK Message; discusión de original and enhanced HL7 acknowledgments.
  3. Es evidente que puede hacer crecer su propio subsistema HL7 que está codificado. Sin embargo, antes de hacerlo, considere el total costs of building and supporting an HL7 subsystem, mire algunas opciones gratuitas como Mirth, y considere soluciones comerciales como Corepoint o Interfaceware.

Disclosure: Soy co-presidente del comité de Infraestructura y HL7 mensaje (INM), director de tecnología de Corepoint y Jefe Arquitecto del motor de integración de hoja de trébol.

1

Comprar vs. Construir. Si ya has "terminado" tu interfaz HL7 y funciona fuera del sistema de archivos, ¿por qué querrías reconstruir algo tan fácilmente disponible? Existe el proyecto Mirth que es de código abierto o si desea algo que

a) Hace exactamente lo que está buscando de fábrica (ya que fue diseñado exactamente para el escenario que describe).

b) Tiene uno de los (si no EL) costo más bajo del mundo para el software comercial HL7 de este tipo.

c) Se instala y configura en minutos.

Investigue un poco y mire esto: http://www.hermetechnz.com/EasyHL7/Prod_Listeners.asp.

A menos que realmente desee realizar cientos o miles de implementaciones al año, solo tiene que preguntarse si es el mejor uso de su tiempo.

DIVULGACIÓN: trabajo en atención al cliente en esta empresa, pero no empleamos vendedores en absoluto, es simplemente un producto HL7 grande, barato y confiable en uso en todo el mundo.

Cuestiones relacionadas