No presentation context for modality US

I am getting the following error in the Orthanc logs when performing a C-MOVE:

W0806 22:09:00.595950 714 OrthancMoveRequestHandler.cpp:135] Move-SCU request received for AET "MY_AET" E0806 22:09:00.632311 714 MoveScp.cpp:179] IMoveRequestHandler Failed: DicomUserConnection: No presentation context for modality US

I believe this C-MOVE works file when I execute against OsirX.

What can I do to better diagnose the issue?

Hello,

Following many requests, I have just written a troubleshooting guide for DICOM communications:
https://code.google.com/p/orthanc/wiki/FAQ#Troubleshooting_DICOM_communications

I hope you will find it useful.

Regards,
Sébastien-

I checked the suggested settings and they all seem fine.

I turned on verbose logging and I get:
W0807 15:59:39.412017 279 OrthancMoveRequestHandler.cpp:135] Move-SCU request received for AET "MY_AET" I0807 15:59:39.412052 279 OrthancMoveRequestHandler.cpp:143] (0008,0018) SOPInstanceUID = XXXX I0807 15:59:39.412060 279 OrthancMoveRequestHandler.cpp:143] (0008,0052) QueryRetrieveLevel = IMAGE I0807 15:59:39.449115 279 OrthancMoveRequestHandler.cpp:63] Sending resource c15f3a56-d1f84d65-3ede3daf-cb1bda57-f245de7b to modality "ANON" I0807 15:59:39.449795 279 ReusableDicomUserConnection.cpp:59] Reusing the previous SCU connection E0807 15:59:39.450345 279 MoveScp.cpp:179] IMoveRequestHandler Failed: DicomUserConnection: No presentation context for modality US I0807 15:59:39.452919 279 CommandDispatcher.cpp:835] DUL Peer Requested Release I0807 15:59:39.452967 279 CommandDispatcher.cpp:842] Association Release

OK, so please provide all the information that is listed on the FAQ entry:
https://code.google.com/p/orthanc/wiki/FAQ#Troubleshooting_DICOM_communications

Without this information, we can’t provide much help.

Sébastien-

With --trace:

W0807 16:44:08.004060 130 OrthancMoveRequestHandler.cpp:137] Move-SCU request received for AET “MY_AET”

I0807 16:44:08.004086 130 OrthancMoveRequestHandler.cpp:145] (0008,0018) SOPInstanceUID = XXXX

I0807 16:44:08.004094 130 OrthancMoveRequestHandler.cpp:145] (0008,0052) QueryRetrieveLevel = IMAGE

I0807 16:44:08.004113 130 Statement.cpp:136] SQLite::Statement::Step SELECT id FROM DicomIdentifiers WHERE tagGroup=? AND tagElement=? and value=?

I0807 16:44:08.034755 130 Statement.cpp:136] SQLite::Statement::Step SELECT id FROM DicomIdentifiers WHERE tagGroup=? AND tagElement=? and value=?

I0807 16:44:08.045137 130 Statement.cpp:136] SQLite::Statement::Step SELECT publicId FROM Resources WHERE internalId=?

I0807 16:44:08.045274 130 OrthancMoveRequestHandler.cpp:65] Sending resource 2d063db7-c13a6e35-af785f33-762124ff-67186f44 to modality “ANON”

I0807 16:44:08.045441 130 Statement.cpp:136] SQLite::Statement::Step SELECT internalId, resourceType FROM Resources WHERE publicId=?

I0807 16:44:08.045642 130 Statement.cpp:136] SQLite::Statement::Step SELECT internalId, resourceType FROM Resources WHERE publicId=?

I0807 16:44:08.045807 130 Statement.cpp:136] SQLite::Statement::Step SELECT uuid, uncompressedSize, compressionType, compressedSize, uncompressedMD5, compressedMD5 FROM AttachedFiles WHERE id=? AND fileType=?

I0807 16:44:08.046808 130 ReusableDicomUserConnection.cpp:58] Reusing the previous SCU connection

E0807 16:44:08.047826 130 MoveScp.cpp:179] IMoveRequestHandler Failed: DicomUserConnection: No presentation context for modality US

I0807 16:44:08.050246 130 CommandDispatcher.cpp:835] DUL Peer Requested Release

I0807 16:44:08.050292 130 CommandDispatcher.cpp:842] Association Release

I am using pynetdicom to perform the C-MOVE to itself. pynetdicom is running on the same box as Orthanc. I am running Orthanc within docker using:

docker run -p 4242:4242 -p 8042:8042 -v /data2/orthanc:/var/lib/orthanc/db -v /home/ubuntu/orthanc.json:/etc/orthanc/orthanc.json:ro jodogne/orthanc-plugins /etc/orthanc/orthanc.json --verbose --trace

I just did a docker pull so the image should be up to date.

The C-FIND seems to work but when I issue a C-MOVE, that seems to fail. The same command works fine against OsirX running as a PACS.

Just a raw question: Have you asked the pynetdicom team whether they support the “US” modality?

Please also send a sample DICOM file so we can make tests.

Is that error coming from Orthanc or from the destination of the C-MOVE?

I believe that pynetdicom support US since as I said, I am able to perform a C-MOVE against OsiriX.

I figured out the issue. I was trying to connect to localhost from with the docker container rather than specifying the IP / hostname for the host.

Fine, nice to hear that your problem is solved!

Regards,
Sébastien-