thank you for the added functionality and for helping me out with
navigating the Dicom terminology. Thanks to these, and the WADO
support of Dicom server, I was able to build a system where all the
network communication is based on HTTP and JSON communication. The
only part that remains based on Dicom are the images themselves.
I’ve been playing around and studying the source code before, so I’m
already using the mainline version. There was a small change I’ve had
to make to get the find-instance function working with my ClearCanvas
server. I was getting an error message:
"Unexpected Study Root Query/Retrive level:INSTANCE" someone had a
similar issue in [1]
Changing the following line in DicomUserConnection.cpp fixed the problem:
DU_putStringDOElement(dataset.get(), DcmTagKey(0x0008, 0x0052),
"INSTANCE");
to:
DU_putStringDOElement(dataset.get(), DcmTagKey(0x0008, 0x0052), "IMAGE");
Again, I’m not sure what is the correct way as per the Dicom standard.
I can test the function with an OsiriX server and a mini Pacs from
Toshiba, if that is any help.
It works with the same "ClearCanvas fix". It might a more widespread
behavior, after all. It would be nice, if someone checked those
queries with dcm4chee or even some other servers.
Thanks for reporting this. I am currently working on the release of Orthanc 0.7.3, that should improve the Q/R support. It should be available soon, and it might solve your problem.
It indeed seems that the “ClearCanvas patch” is also required for Dcm4Chee. I have therefore added a new manufacturer type for Dcm4Chee in the configuration file [1].
This will be part of the Orthanc 0.7.4 release. In the meantime, you can just use the “ClearCanvas” manufacturer type, or you can build the source code from the mainline.