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).
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!