Escrito por

Artigo Evandro Wendt · 5 hr atrás 2m read

Problemas ao vincular o IRIS com modalidades DICOM?

Como vocês provavelmente sabem, o Health Connect / IRIS for Health suporta nativamente mensagens DICOM, e muitos de vocês já o utilizam diariamente. Recentemente, descobri um probleminha bastante insidioso que nosso querido @Alberto Fuentes me ajudou a resolver.

Nós (ou melhor, eu) chamaremos esse fenômeno de efeito Creosote (quem conhece Monty Python entenderá a referência; para os demais, vocês podem ver o sketch aqui).

Why Monty Python's Mr Creosote is the ultimate gross-out icon - Yahoo  Movies UK

O Sr. Creosote é um cavalheiro volumoso, acostumado a refeições suntuosas, e depois de ingerir o equivalente ao produto interno bruto de Burkina Faso, é uma simples barra de chocolate que finalmente o faz explodir.

Bem, depois dessa circunlocução, vamos ao problema.

Falhas ao vincular modalidades com o IRIS

Às vezes, depois de uma integração DICOM funcionando perfeitamente, ao adicionar um novo modo para enviar ou receber mensagens DICOM, ele não funciona, retornando um erro como este:

 
ERROR <EnsDICOM>AbstractSyntaxNotAccepted: Abstract Syntax '1.2.840.10008.5.1.4.31' rejected between between peers 'IRIS' and 'ORTHANC'

Neste exemplo, temos um PACS chamado ORTHANC e nossa instância do IRIS que tenta enviar uma solicitação de Worklist usando sua mensagem DICOM correspondente. Como você pode ver, ele indica claramente que a conexão está sendo rejeitada com a Abstract Syntax indicada.

Se formos às nossas configurações, veremos que configuramos corretamente a conexão entre o IRIS e o ORTHANC:

E, além disso, na opção Presentation Context, definimos a Abstract Syntax mencionada:

Então, por que ele não está detectando nossa configuração? Bem, é o efeito Creosote. Adicionamos tantas Abstract Syntax à nossa configuração que, quando ele tenta localizar a última que adicionamos, o IRIS não consegue encontrá-la e gera o erro que mostramos anteriormente.

Como podemos evitar esse erro? É muito simples: evitando sobrecarregar a configuração do association context com sintaxes que não vamos usar. No meu caso, criei um novo nome para o meu IRIS chamado IRIS_WL:

Ao qual adicionei apenas a Abstract Syntax correspondente à solicitação de Worklist:

E isso foi suficiente para que minha produção voltasse a funcionar corretamente.

Espero que vocês achem essa dica útil!