Artículo
· 1 jun, 2022 Lectura de 3 min

Cliente FHIR para conectar, mediante Python Embebido, cualquier servidor FHIR abierto

¡Hola comunidad!

Esta publicación es una introducción a mi aplicación iris-fhir-client en Open Exchange.

Usando Python embebido y con la ayuda de la librería fhirpy, iris-fhir-client puede conectarse a cualquier servidor FHIR abierto.
Obten información de recursos por terminal y mediante el uso de la aplicación web CSP.

Ver y activar servidores registrados 

Conéctate a la terminal IRIS

docker-compose exec iris iris session iris

La aplicación registrará InterSystems FHIR Accelerator Service y SmartHealthIT Open FHIR Server de manera predeterminada y ambos estarán listos para ser usados.

Usa el siguiente comando para enumerar los servidores registrados

do ##class(dc.FhirClient).ServerList()

image

InterSystems FHIR Accelerator Service está activo. Para seleccionar SmartHealthIT Open FHIR Server, usa la función SetFhirServer de la clase dc.FhirClient pasando la ID del servidor

do ##class(dc.FhirClient).SetFhirServer(2)

 

Servidores FHIR registrados

Para registrar un nuevo servidor, utiliza la función RegisterServer() de la clase dc.FhirClient
class(dc.FhirClient).RegsterServer("Server Name","Endpoint","ApiKey"[opcional],"EndpointOAuth"[opcional]

do ##class(dc.FhirClient).RegisterServer("INTERSYSTEMS FHIR Server","http://localhost:52773/csp/healthshare/samples/fhir/r4/","","")

image

Obtener recursos de los servidores FHIR

Para recuperar todos los recursos para el servidor actual, utiliza el método ListResources() de la clase dc.FhirClient

do ##class(dc.FhirClient).ListResources()

Para mostrar la cantidad de registros de cualquier recurso, usa el método CountResource() pasando Resource de dc.FhirClient.
El siguiente comando obtendrá el contador de recursos del paciente contra el servidor FHIR activo

set count = ##class(dc.FhirClient).CountResource("Patient")
write count

Para recuperar todos los recursos creados junto con su recuento, simplemente pasa 1 a la función ListResource()

do ##class(dc.FhirClient).ListResources(1)

Para obtener detalles del recurso, usa GetResource() pasando Resource de la clase dc.FhirClient
El siguiente comando recuperará todos los pacientes del servidor FHIR activo

do ##class(dc.FhirClient).GetResource("Patient")

image

El siguiente comando recuperará todas las Observaciones del servidor FHIR activo

do ##class(dc.FhirClient).GetResource("Observation")

image

 

Obtener recursos de los servidores FHIR para un paciente en particular

El siguiente comando recuperará los detalles de las Observaciones contra Patinet ID 1 del servidor FHIR activo

do ##class(dc.FhirClient).GetPatientResources("Observation","1")

image

Ver información del servidor FHIR desde la aplicación web CSP

Ir a http://localhost:55037/csp/fhirclient/index.csp
La página Index (Índice) mostrará el recuento de pacientes, observaciones, médicos y encuentros del servidor activo junto con los detalles del paciente y de los servidores registrados
170881284-b18aebca-e6a2-4a6e-ad20-a537c13ff51c

 

La página Index (Índice) mostrará la lista de servidores FHIR con el servidor activo seleccionado. Selecciona otro servidor de la lista para ver los detalles del servidor seleccionado
image

Desplázate hasta el ID del paciente y selecciónalo para obtener detalles de los Recursos del paciente
image

Esta página mostrará el recuento de algunos recursos del paciente junto con los detalles de las observaciones del paciente.170881340-a9cd0c77-bf24-4e8e-85f7-84e04b527b49

Si encuentra útil esta aplicación, considere votar por mi aplicación

¡Gracias!

Comentarios (0)1
Inicie sesión o regístrese para continuar