TCP y DICOM: Investigar opciones de invocación del servicio
Buenos días,
Agradeceríamos el apoyo de ustedes:
Desarrollando una integración para realizar un circuito "Query / Retrieve" con estudios de imágenes médicas DICOM, necesitaríamos lo siguiente:
Opciones de invocación del servicio DICOM TCP que se ha publicado para esta integración, alternativas a la opción por linea de comando
En concreto hemos leído: Recibir documento DICOM con un PDF embebido y metadatos
Adaptando el ejemplo, empleamos la línea:
./storescu -b VNAPRE -c ESBPRE@10.136.4.XYZ:19ABC ./embeddedpdf.dcm
Mediante la cual simulamos el envío de un documento DICOM con un PDF
Sin embargo, esto no nos es fructífero, provechoso o de solución, ya que lo que se necesita actualmente, es simular consultas del tipo "FIND".
En concreto necesitaríamos consultas del tipo "Obtener Resultados a nivel de Estudios"
// StudyRootQuery - FIND
set tAffectedSOPClassUID="1.2.840.10008.5.1.4.1.2.2.1"
// PatientRootQuery - FIND
;set tAffectedSOPClassUID="1.2.840.10008.5.1.4.1.2.1.1"
Hemos indagado cómo simular las llamadas FIND: Query / Retrieve scenario
En particular probamos desde la "Salida" del Studio enviando el expediente del paciente en el campo "PatientID" del "DataSet" del documento DICOM:
do ##class(DICOM.BS.QueryService).TestFind("13168299")
Y de esta forma simularíamos una llamada al Servicio "dummy" cuya clase es:
Sin embargo, ¿ qué opciones de invocación del servicio DICOM TCP que se ha publicado para esta integración existen ?
¿ Existe un SoapUI / POSTMAN / herramienta línea comando y/o visual, que nos permita simular comandos FIND de DICOM por TCP ?
Gracias por leernos y por sus respuestas
Además hemos leído:
https://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY...
https://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY...
https://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY...
https://es.community.intersystems.com/post/dicom-no-hay-asociaci%C3%B3n-...
https://community.intersystems.com/post/dicom-tcp-services-and-dicom-imp...
A nivel visual, ahora estamos probando el circuito mediante un Servicio "dummy", cuya clase es: DICOM.BS.QueryService
Sin embargo, necesitamos encontrar la vía de simular ser el sistema origen, es decir, probar el servicio TCP, siendo de la clase: EnsLib.DICOM.Service.TCP
¿ Qué opciones de invocación del servicio DICOM TCP que se ha publicado para esta integración, alternativas a la opción por linea de comando, existirían ?
¿ De qué forma lo harían ustedes ?
¿Disponen de ejemplos, documentación, código, referencias o indicaciones que pudieran servir de apoyo?
Muchas gracias de antemano
Un saludo
Hola Yone,
Imagino que te refieres al ejemplo https://github.com/intersystems-ib/iris-dicom-sample
Los comandos C-FIND son mensajes DICOM que deben tener el formato correcto y transmitirse usando el protocolo DICOM. Por eso, o usas un simulador, o generas ese mensaje desde Ensemble / Health Connect.
En el ejemplo, el comando do ##class(DICOM.BS.QueryService).TestFind() provoca la generación de un mensaje C-FIND dentro de la producción para un paciente concreto.
El simulador dcm4che tiene la utilidad findscu que permite simular la generación de mensajes C-FIND.