EHR домофон / клиент - PullRequest
       19

EHR домофон / клиент

2 голосов
/ 03 марта 2012

Итак, я исследую методы построения клиентского интерфейса для существующих EMR.Я прочитал тонны информации о HL7, а также о различных схемах кодирования, но я все еще не знаю.

Для тех, кто ранее работал с EMR: возможно ли создать веб-интерфейс, который может использовать запросы HTTP-POST и HTTP-GET для извлечения / передачи данных в базу данных сервера?Или у вас будет отдельная база данных для клиента, скажем, веб-приложение, а затем использовать какой-нибудь интерфейсный механизм, например Mirth, для связи между базой данных EMR и веб-приложением?

Ответы [ 3 ]

1 голос
/ 04 декабря 2012

API веб-сервисов - определенно способ. Одним из преимуществ этого является то, что вы можете получить https практически из коробки для шифрования данных при передаче.

Способ, которым мы настроили нашу EMR, заключается в том, что у нас есть tcp-сервер, принимающий входящие сообщения hl7 с определенных IP-адресов, который подключается непосредственно к нашей базе данных EMR. Это может быть полезно путем разделения процессов emr и интерфейса (например, вам не нужно перезапускать всю EMR, если интерфейс выходит из строя).

Еще одна полезная функция - наличие системы токенов для псевдо-аутентификации. Это работает, только если вы используете безопасное соединение.

Если вы не собираетесь писать свой собственный tcp сервер (не так уж сложно), сервер на основе API, вероятно, также хорош.

РЕДАКТИРОВАТЬ: Какие языки вы думаете, вы будете использовать?

Другие вещи, с которыми вы можете столкнуться:

  1. Некоторые приложения предпочитают удаление файлов прямым вызовам (либо по URL, либо по tcp)
  2. У некоторых поставщиков будет собственное программное обеспечение, которое находится на вашем сервере
  3. Не забудьте ACK.
1 голос
/ 07 марта 2012

Не понимаю, почему ты не смог этого сделать. Вам нужно будет создать веб-сервис для обработки запросов с определенным Uri. Когда этот Uri вызывается, веб-служба использует данные, отправленные с запросом, для внесения изменений в базу данных.

После того, как вы создали веб-сервис, вы можете создать своего рода интерфейс, который отображает вашу информацию для пользователя. И делает вызовы HTTP-GET и HTTP-POST.

В том, что вы пытаетесь сделать, очень много гибкости ... так что обязательно составьте план.

В целом вы должны быть в состоянии выполнить то, что вам нужно, создав собственный веб-сервис и интерфейсное приложение, способное манипулировать базой данных EMR.

0 голосов
/ 25 мая 2014

Это действительно зависит от вашей архитектуры и требований.

Архитектура 1 Если вы хотите, чтобы ваш клиент работал в Интернете, но ваш клиент - это отдельное приложение от вашего бэкэнда, то веб-сервер отправляет информацию с помощью HTTP на серверную часть вашего клиентского приложения, а затем отправляет информацию в ваш бэкэнд EHR (другое приложение). ). Это второе сообщение может быть написано с использованием стандарта, который поможет вам в будущем интегрировать больше систем с вашим бэкэндом. Таким образом, этот интерфейс может быть основан на HL7, если используется HL7 v2.x, взгляните на протокол MLLP: http://www.hl7.org/implement/standards/product_brief.cfm?product_id=55

Это наиболее эффективный способ передачи данных HL7. Если вы не хотите иметь дело с TCP, есть предложение для HL7 v2.x по HTTP. HAPI реализовал это: http://hl7api.sourceforge.net/hapi-hl7overhttp/

Если вы не хотите использовать HL7 v2.x, но HL7 v3 (другой стандарт, не совсем версия 2.x) или CDA, вы можете использовать HTTP или SOAP.

Архитектура 2 Но если вы хотите, чтобы ваш клиент был просто пользовательским интерфейсом на стороне пользователя (браузер), HTTP POST будет достаточно для отправки информации из браузера на сервер. Это означает, что ваша EHR является централизованной EHR с веб-интерфейсом.

В первом архитектурном случае в первом случае вы, вероятно, будете иметь несколько клиентских приложений (полные приложения EMR) и сервер EHR бэкэнда (централизованный бэкэнд). В своих разработках я следую этой второй архитектуре.

Также там Mirth может помочь управлять всеми коммуникациями между клиентскими приложениями и внутренними приложениями. Во втором случае использование Mirth - это нонсенс, это просто веб-приложение, и клиент напрямую связывается с веб-сервером. Конечно, вы можете использовать Mirth в качестве веб-сервера, но это не его роль, это ESB, а не веб-сервер.

Надеюсь, это поможет!

...