Notify external HL7 Receivers on Procedure Status Updates - dcm4che/dcm4chee-arc-light GitHub Wiki

Overview

Send Procedure Status Update HL7 Order OMG^O19 message or Observation Reporting ORU^R01 messages to one or more external HL7 Receiver on receive of studies or on receive of Modality Performed Procedure Steps. These notifications can be sent out independent of study or MPPS association with MWL.

Configuration common for MPPS or Study receive triggered notification

  • Configure one or more HL7 Receiver

  • Upload Vendor Data if not already uploaded.

  • By default, the archive is pre-configured with a * HL7 Application, implying it can accept HL7 messages from any system, even those which are not capable of sending the correct Application and Facility name of archive's HL7 application in MSH segment.

  • When the archive acts as a sender of HL7 messages, it is recommended to clone this HL7 application, to correctly reflect specific Sending Application and Facility Name in the outgoing HL7 messages from the archive. Hence, go to Menu -> Configuration -> Devices -> dcm4chee-arc -> Device Extension -> Child Objects -> HL7 Application -> * -> Clone this HL7 application. Specify a suitable name eg. HL7SND|DCM4CHEE and Save.

  • Next, to configure other settings to activate this feature, go back to Device Extension -> Archive Device Extension.

  • Set appropriate values for HL7 Procedure Status Update Task Polling Interval.

  • Optional attributes which may be set / configured as required by one's application :

  • Following attributes with pre-configured defaults are only available until version 5.29.0

      HL7 Procedure Status Update Accession Number       : {StudyInstanceUID,hash}
      HL7 Procedure Status Update Placer Order Number    : {StudyInstanceUID,hash}
      HL7 Procedure Status Update Filler Order Number    : {StudyInstanceUID,hash}
      HL7 Procedure Status Update Requested Procedure ID : {StudyInstanceUID,hash}
    

    Version 5.29.1 onwards, these fields are replaced by HL7 Procedure Status Update Parameters

      HL7 Procedure Status Update Parameters : AccessionNumber={StudyInstanceUID,hash}
                                               PlacerOrderNumber={StudyInstanceUID,hash}
                                               FillerOrderNumber={StudyInstanceUID,hash}
                                               RequestedProcedureID={StudyInstanceUID,hash}
    
  • Select HL7 Procedure Status Message Type as OMG_O19 or ORU_R01.

  • To send patient and visit information in OMG_O19 notification messages, set HL7 Procedure Status Update PID PV1 to True. For ORU_R01 patient and visit information are always sent, independent of HL7 Procedure Status Update PID PV1 configuration.

  • Select above configured HL7 Receiver as HL7 Procedure Status Update Receiving Application
    and the cloned HL7 application on the device extension level as HL7 Procedure Status Update Sending Application and Save.

Note : HL7 Procedure Status Update Notifications can be sent out only either on receive of MPPS or on receive of study. To enable sending out notifications on receive of MPPS and receive of studies, users will have to create two separate AE Title(s) of the Archive, configure corresponding Storage / MPPS specific Transfer Capabilities on each archive AE and configure above / following configuration specific to receive of study / MPPS on archive network AE extension level.

Configuration specific for MPPS trigger

Configuration specific for Study Receive trigger

Configuration specific for MWL

On archive device extension level, configure as required

Test and Verification

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. Only required for testing notifications sent on MPPS trigger.

Verification

MPPS trigger

  • Start the HL7 receiver using hl7rcv tool.

          hl7rcv -b 2576
    
  • Optionally, send HL7 Order Messages associated with study to be stored or associated with MPPS.

    hl7snd -c localhost:2575 /path-to-hl7-order-messages
    
  • Send the MPPS to the archive using mppsscu tool. Ensure PlacerOrderNumberImagingServiceRequest and FillerOrderNumberImagingServiceRequest are present in the ScheduledStepAttributesSequence in the MPPS sent to the archive.

          mppsscu -s ScheduledStepAttributesSequence.PlacerOrderNumberImagingServiceRequest=P1 -s ScheduledStepAttributesSequence.FillerOrderNumberImagingServiceRequest=F1 -c  DCM4CHEE@localhost:11112  /path-to-study
    
  • Optionally, send studies to archive using storescu tool which simulates modalities sending studies to archive.

    storescu -c DCM4CHEE@localhost:11112 /path-to-study
    
  • Once the configured HL7 Procedure Status Update Task Polling Interval and HL7 Procedure Status Update Timeout values are reached, verify in the hl7rcv tool window, that the OMG^O19 or ORU^R01 messages are received for the studies stored to the archive. Alternatively, these messages are also stored on the filesystem path where you started the tool.

  • Optionally, verify in Monitoring page Queues tab by selecting HL7 Forward Tasks and verify the HL7Send tasks as COMPLETED.

Study Receive trigger

  • Start hl7rcv tool which simulates an external system capable of receiving HL7 messages.

    hl7rcv -b 2576
    
  • Optionally, send HL7 Order Messages associated with study to be stored.

    hl7snd -c localhost:2575 /path-to-hl7-order-messages
    
  • Send studies to archive using storescu tool which simulates modalities sending studies to archive.

    storescu -c DCM4CHEE@localhost:11112 /path-to-studies
    
  • Once the configured HL7 Procedure Status Update Task Polling Interval and HL7 Procedure Status Update Delay values are reached, verify in the hl7rcv tool window, that the OMG^O19 or ORU^R01 messages are received for the studies stored to the archive. Alternatively, these messages are also stored on the filesystem path where you started the tool.

  • Optionally, verify in Monitoring page Queues tab by selecting HL7 Forward Tasks and verify the HL7Send tasks as COMPLETED.

MWL Status Update

If HL7 order messages were sent to the archive either on MPPS sent to the archive or studies stored to the archive and

then Scheduled Procedure Step Status of associated Modality Worklist entries are updated to COMPLETED / DISCONTINUED and can be verified by checking the attributes of MWLs in Navigation page -> MWL tab.

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