I have a question about Orthanc behaviour regards to Echo that I found to be more restrictive than commercial DICOM workstation.
We have a program that send DICOM images, we want to implement an Echo before the sending process to be sure that the DICOM station is alive.
When I send a DICOM echo to Orthanc, its refuse the connexion because Orthanc check AET name in the Echo connection so In my log I have :
W0807 17:20:41.039473 CommandDispatcher.cpp:812] Rejected Echo request from remote DICOM modality with AET "storescu" and hostname "127.0.0.1"
While Other commercial DICOM nodes (Xeleris and AWserver) don't care so much about the calling AET for an Echo.
So Here is my problem :
- I have to run an Echo before sending my DICOM file through a DCM4CHE storescu library, it is important for me because if the AET is not responding our program crashes (if the server refuse due to a missing declaration it will not crash but the server have to answer something).
- My Echo function correctly Echo commercial workstation, my usual DICOM nodes responds to the Echo even if the calling AET is unknown.
- Only Orthanc (in my network) refuses the Echo because the calling AET is unknown.
So my question is : Is it a normal behavior to reject Echo because of an unknown calling AET ?
Are the commercial workstation too permissive by responding to an unknown called AET for DICOM Echo ?
Or Is Orthanc to restrictive for rejecting a DICOM Echo from unknown called AET ?
Thanks for your help,
Salim
Yes it is already in false (which is the default value) and Orthanc correclty accept DICOM for unknown AET without problem (which is that I want in my case).
I think it may be something to correct here, it is pretty curious to accept data without AET matching (which is very well handled by the json parameter) and rejecting echo which is just a connection check.
I don't know if there are official recommendations about C-ECHO, in my experience all workstations I tried to work with are permissive about the C-ECHO. DICOM acceptance needs AET declaration in both way but not C-ECHO.
Best regards,
Salim
Thank you for your answer, now I understand why I didn't found that issue before while i was using Orthanc 1.2.0.
I opened a question in comp.protocols.dicom : https://groups.google.com/forum/#!topic/comp.protocols.dicom/taxQM9TClgI
I will keep you updated when I will get an answer,
Best regards,
Salim
We got one answer apparently there is no real consenssus. (https://groups.google.com/d/msg/comp.protocols.dicom/taxQM9TClgI/6fAi-lcMAgAJ)
I wonder if the C-ECHO souldn't follow the DicomCheckCalledAet setting defined in the Orthanc.json.
if DicomCheckCalledAet is false it is a bit strange to reject C-Echo while DICOM transfers will be accepted no matter of the calling AET.
if the DicomCheckCalledAet is true then the C-Echo could check the calling AET and will act as a predictive test to notifiy if the communication will be allowed between both AET.
What do you think ?
Best regards,
Salim