Disabling specific SOP Classes on inbound connections

Hi All,

Is it possible to, or does anyone have a way to disallow specific SOP classes on inbound C-Store association negotiations?

We are using orthanc to store and forward MR images, but unfortunately the scanner prefers the Enhanced MR SOP class, and orthanc accepts and supports that fine. (Awesome!)

However when we then forward the study, the destination PACS rejects the Enhanced SOP classes and no images end up on PACS.

Id like to configure orthanc not to accept the Enhanced classes in the first place, so we can force the scanner to fall back to the classic model.

Is this configuration possible? Is building my own custom version the only option (really not the right thing to do).

Would it be possible to put a configuration key in to enable/disable sop class support, similar to the transfer syntax configuration?

Many thanks in advance,

Stefan

Hi Stefan,

I have actually developed this feature 2 days ago in a development branch as part of the get-scu development.

If you are able to test it in real situation, that would be helpful ! Right now, it is only available in the orthancteam/orthanc-pre-release:get-scu-unstable-amd64 docker image or if you build Orthanc by yourself in the get-scu branch. Note that the image is being built right now and it should be available in 1 hour.

Here’s the documentation for the 2 new configurations:

  // The list of accepted Storage SOP classes.
  // If empty or not defined, this list defaults
  // to all storage classes defined in DCMTK in case of 
  // C-STORE SCP and to a reduced list of 120 common storage
  // classes in case of C-GET SCU.
  // Each entry can contain wildcards ("?" or "*") to add
  // subsets of SOP classes that are defined in DCMTK.
  // If you want to add a a SOP class that is not defined in
  // DCMTK, you must add it explicitely.
  // (new in Orthanc 1.12.6)
  // "AcceptedSopClasses" : [
  //   "1.2.840.10008.5.1.4.1.1.2",
  //   "1.2.840.10008.5.1.4.1.1.4"
  // ]

  // The list of rejected Storage SOP classes.
  // This configuration is only meaningful if
  // "AcceptedSopClasses" is using regular expressions
  // or if it not defined.
  // Each entry can contain wildcards ("?" or "*").
  // (new in Orthanc 1.12.6)
  // "RejectedSopClasses" : [
  //   "1.2.840.10008.5.1.4.1.1.2",
  //   "1.2.840.10008.5.1.4.1.1.4"
  // ]

HTH,

Alain