C-MOVE and C-FIND not always working

I wanted to query images from PACS systems and store them in Orthanc, but always run into problems:

1. When making study-level query against a ClearCanvas PACS, the answer is always empty. When making series-level query against a ClearCanvas PACS, I can get answers correctly.

My query is:
{"Level":"Study","Query":{"AccessionNumber":"*","PatientBirthDate":"*","PatientID":"*","PatientName":"*","PatientSex":"*","StudyDate":"*","StudyDescription":"*"}}

The REST API returns a successful query result:
{
  "ID": "43f318ae-9c24-49df-8ba1-b60a12a29311",
  "Path": "/queries/43f318ae-9c24-49df-8ba1-b60a12a29311"
}

Unfortunately, when trying to access the studies through another REST API call (queries/43f318ae-9c24-49df-8ba1-b60a12a29311/answers), the result is always empty. Interestingly, when I change the query level from "Study" to "Series", I can get answers correctly.

As a note, when I make queries against Osirix, my study-level query is always successful. Is this a problem of Orthanc or ClearCanvas?

2. When making study-level query against DicomServer (http://www.dicomserver.co.uk/Index.html), I was always able to get answers back successfully, but when issuing c-move REST API calls, I was never able to retrieve any DICOM images. It should be noted that the Orthanc explorer did seem to try to download the images by showing a "Retrieving Images from DICOM Modalities" dialog, but I was never able to receive the images (I did make sure the firewall setting is correct on my computer).

I am wondering if anyone can share insights on how to fix those errors, and more importantly, to share ideas on how to diagnose those C-MOVE and C-FIND problems. I am planning to try C-FIND and C-MOVE against a Carestream Vue PACS. It would be great if someone can confirm whether Orthanc REST APIs can work against Carestream PACS or not.

Thanks!
Ishaan

Hi Ishaan,

Have you already configured your PACS Modality as ‘ClearCanvas’ ?
Othanc do modify C-Find requests/response according to the modality type. Check the DicomModalities section of your configuration file:

// The list of the known DICOM modalities
  "DicomModalities" : {
    /**
     * A fourth parameter is available to enable patches for a
     * specific PACS manufacturer. The allowed values are currently
     * "Generic" (default value), "StoreScp" (storescp tool from
     * DCMTK), "ClearCanvas", "MedInria", "Dcm4Chee", "SyngoVia",
     * "AgfaImpax" (Agfa IMPAX), "EFilm2" (eFilm version 2), and
     * "Vitrea". This parameter is case-sensitive.
     **/
    // "clearcanvas" : [ "CLEARCANVAS", "192.168.1.1", 104, "ClearCanvas" ]
  },