So this redirects the query to itself... Mhhh, doesn't work for me however. Some are some lines from my Configuration.json (it is all in all pretty standard):
"HttpPort" : 8042,
"DicomAet" : "PLORTHANC",
"DicomCheckCalledAet" : false,
"DicomPort" : 4242,
"RemoteAccessAllowed" : true,
"SslEnabled" : false,
"SslCertificate" : "certificate.pem",
"AuthenticationEnabled" : false,
"RegisteredUsers" : { "admin" : "admin" }
"DicomModalities" : {
"MRI-PRISMA" : [ "PRISMA", "prisma.dccn.nl", 104 ],
"MRI-SKYRA" : [ "SKYRA", "skyra.dccn.nl", 104 ],
"MRI-AVANTO" : [ "AVANTO", "avanto.dccn.nl", 104 ],
"local" : [ "PLORTHANC", "localhost", 4242 ]
},
I tried many things and got e.g. this:
curl -v http://admin:admin@pl-torque.dccn.nl:8042/modalities/PLORTHANC/find-patient -X POST -d '{"PatientName":"*","PatientSex":"M"}'
* Hostname was NOT found in DNS cache
* Trying 131.174.44.95...
* Connected to pl-torque.dccn.nl (131.174.44.95) port 8042 (#0)
* Server auth using Basic with user 'admin'
POST /modalities/PLORTHANC/find-patient HTTP/1.1
Authorization: Basic YWRtaW46YWRtaW4=
User-Agent: curl/7.38.0
Host: pl-torque.dccn.nl:8042
Accept: */*
Content-Length: 36
Content-Type: application/x-www-form-urlencoded
* upload completely sent off: 36 out of 36 bytes
< HTTP/1.1 404 Not Found
< Content-Length: 0
<
* Connection #0 to host pl-torque.dccn.nl left intact
I also tried to do queries using (dcmtk) C-FIND SCU, but these weren't successful either (here asking for the PatientID for a certain PatientName):
findscu -v -P -aet PLORTHANC localhost 4242 dicomqry.dcm
I: Requesting Association
I: Association Accepted (Max Send PDV: 16372)
I: ===================== OUTGOING DIMSE MESSAGE ====================
I: Message Type : C-FIND RQ
I: Presentation Context ID : 1
I: Message ID : 1
I: Affected SOP Class UID : FINDPatientRootQueryRetrieveInformationModel
I: Data Set : present
I: Priority : low
I: ======================= END DIMSE MESSAGE =======================
I: Find SCU Request Identifiers:
I:
I: # Dicom-Data-Set
I: # Used TransferSyntax: Little Endian Explicit
I: (0010,0010) PN [20140413_alebac_301202506_S25 ] # 30, 1 PatientName
I: (0010,0020) LO (no value available) # 0, 0 PatientID
I:
I: ===================== INCOMING DIMSE MESSAGE ====================
I: Message Type : C-FIND RSP
I: Message ID Being Responded To : 1
I: Affected SOP Class UID : FINDPatientRootQueryRetrieveInformationModel
I: Data Set : none
I: DIMSE Status : 0xc000: Error: Failed - Unable to process
I: ======================= END DIMSE MESSAGE =======================
I: Releasing Association
The Orthanc logs just say this:
E0424 13:59:06.251377 24633 FindScp.cpp:134] C-FIND request handler has failed: Bad request
I'm stuck kind of now, do you perhaps have any suggestions that could help me go further?
As a side note, I was wondering, why not built in this localhost-loop by default, i.e. without having to specify the localhost as a known modality (it knows itself after all)? Now you get potential funny side effects like having [local] as an option when sending studies to (remote) modalities using the webexplorer...
Cheers and thanks a lot for your time & effort,
Marcel
p.s. the DICOM query was constructed as follows:
cat dicomqry.dump
(0010,0010) PN [20140413_alebac_301202506_S25] # 20, 1 PatientName
(0010,0020) LO # PatientID
and then:
dump2dcm dicomqry.dump dicomqry.dcm
This then yields:
dcmdump dicomqry.dcm
# Dicom-File-Format
# Dicom-Meta-Information-Header
# Used TransferSyntax: Little Endian Explicit
(0002,0000) UL 202 # 4, 1 FileMetaInformationGroupLength
(0002,0001) OB 00\01 # 2, 1 FileMetaInformationVersion
(0002,0002) UI [1.2.276.0.7230010.3.1.0.1] # 26, 1 MediaStorageSOPClassUID
(0002,0003) UI [1.2.276.0.7230010.3.1.4.2927845164.20927.1429867526.348893] # 58, 1 MediaStorageSOPInstanceUID
(0002,0010) UI =LittleEndianExplicit # 20, 1 TransferSyntaxUID
(0002,0012) UI [1.2.276.0.7230010.3.0.3.6.0] # 28, 1 ImplementationClassUID
(0002,0013) SH [OFFIS_DCMTK_360] # 16, 1 ImplementationVersionName
# Dicom-Data-Set
# Used TransferSyntax: Little Endian Explicit
(0010,0010) PN [20140413_alebac_301202506_S25] # 30, 1 PatientName
(0010,0020) LO (no value available) # 0, 0 PatientID