Requested Procedures - amsalama/dcm4chee-arc-light GitHub Wiki

Overview

One can use this feature when there is need to notify the configured HL7 receivers about changes of status of requested procedures. These changes in requested procedures may be triggered by MPPS or when study is completely received.

  • on MPPS trigger : Modality worklist entries, referencing the study instance UID present in MPPS, should be received by archive before the MPPS is received.
  • on Study Receive trigger : Modality worklist entries, referencing this study, should be received by archive before the study is received.

Configuration

Add a HL7 Receiver if not configured already.

Using Archive UI

  1. Go to Menu->Configuration, then on Devices page, Edit the dcm4chee-arc device.Go to Extensions and Edit extension of Device Extension. Again go to its Extensions and Edit extension of Archive Device.

  2. Enter values in fields HL7 Procedure Status Update Task Polling Interval, HL7 Procedure Status Update Tasks Fetch Size, HL7 Procedure Status Update Sending Application and HL7 Procedure Status Update Receiving Application as shown below.

  3. As explained above, if one wants this synchronization to be done on :

    a. MPPS trigger : Set values for fields HL7 Procedure Status Update Timeout and HL7 Procedure Status Update On Timeout.

    b. Study Receive trigger : Set value for field HL7 Procedure Status Update Delay

and Save.

Using LDAP

Common configuration for MPPS or Study receive triggered notification :

One may create a LDIF file and import it to the LDAP Server by using the ldapmodify command line utility.

    version: 1
    dn: dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
    changetype: modify
    add: hl7PSUTaskPollingInterval
    hl7PSUTaskPollingInterval: PT1M

    dn: dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
    changetype: modify
    add: hl7PSUTaskFetchSize
    hl7PSUTaskFetchSize: 10

    dn: dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
    changetype: modify
    add: hl7PSUSendingApplication
    hl7PSUSendingApplication: *|*

    dn: dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
    changetype: modify
    add: hl7PSUReceivingApplication
    hl7PSUReceivingApplication: HL7RCV|DCM4CHEE
  1. MPPS Triggered

     dn: dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
     changetype: modify
     add: hl7PSUTimeout
     hl7PSUTimeout: PT1M
    
     dn: dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
     changetype: modify
     add: hl7PSUOnTimeout
     hl7PSUOnTimeout: TRUE
    
  2. Study receive Triggered

     dn: dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
     changetype: modify
     add: hl7PSUDelay
     hl7PSUDelay: PT1M
    
  • or use the Add Attribute... and Add Value... function of Apache Directory Studio to add attributes on Device Level (e.g.: dicomDeviceName=dcm4chee-arc) or on Application Entity Level (e.g: dicomAETitle=DCM4CHEE) of the Archive Configuration.

Refer ISO-8601 Duration format for more know-how on Durations.

One may refer to Archive Device and Archive Network AE to understand the description of attributes.

Go to the Control tab on Configuration page in archive UI and reload the configuration.

Testing

Required dcm4che Tools

  • storescu simulating the external object source (e.g. modality) STORESCU, from which objects are being received.
  • hl7snd simulating the HL7 Sender (e.g. DSS/Order Filler), which sends the HL7 messages to archive.
  • hl7rcv simulating the HL7 receiver (e.g. DSS/Order Filler), which receives the HL7 messages.
  • mppsscu simulating the SCU for Modality Performed Procedure Step (MPPS) SOP Class and for the Verification SOP Class.

Verification

MPPS Triggered

  1. Send an Order Message to the archive using hl7snd tool.

         hl7snd -c localhost:2575 /path-to-HL7-message
    
  2. Start the HL7 receiver using hl7rcv tool.

         hl7rcv -b 2576
    
  3. Send study to archive using storescu tool.

         storescu  -c  DCM4CHEE@localhost:11112  /study.dcm
    
  4. Send the MPPS to the archive using mppsscu tool. Ensure that PlacerOrderNumberImagingServiceRequest and FillerOrderNumberImagingServiceRequest are present in the ScheduledStepAttributesSequence in MPPS that is being sent to the archive.

         mppsscu  -c  DCM4CHEE@localhost:11112  /mpps.dcm
    
  5. After the configured hl7PSUTimeout and hl7PSUTaskPollingInterval, it can be seen in the hl7rcv tool window that the OMG^O19 notification has been received.

Study receive Triggered

  1. Send an Order Message to the archive using hl7snd tool.

         hl7snd -c localhost:2575 /path-to-HL7-message
    
  2. Start the HL7 receiver using hl7rcv tool.

         hl7rcv -b 2576
    
  3. Send study (which has MWL items referenced in archive) to archive using storescu tool.

         storescu  -c  DCM4CHEE@localhost:11112  /study.dcm
    
  4. After the configured hl7PSUDelay and hl7PSUTaskPollingInterval, it can be seen in the hl7rcv tool window that the OMG^O19 notification has been received.

⚠️ **GitHub.com Fallback** ⚠️