DICOM SCU Await Replies handling

When a DICOM SCU thread is created, there is always a response message from the SCP side. The internal DICOM response message is treated as the reply message.

When Await Replies is enabled, a KILLREPLY disposition for the internal reply message handle is required and a new reply message must be configured.

To do this:

  1. Navigate to Network Configurator > Outbound tab > Inbound Replies pane.
  2. Under Inbound Replies, for TPS Inbound Reply, select "ib reply" and click Edit.
  3. Add these lines:
######################################################################
# Name:     id_reply
# Purpose:  <description>
# UPoC type: tps
######################################################################

proc ib_reply { args } {
    global HciConnName
    keylget args MODE mode
    set ctx ""   ; keylget args CONTEXT ctx
    set module "id_reply/$HciConnName/$ctx"
    set uargs {} ; keylget args ARGS uargs
    set debug 0
    catch {keylget uargs DEBUG debug}
    set dispList {}

    switch -exact -- $mode {
        start {}

        run {
            keylget args MSGID mh
            set msg [msgget $mh]

            echo RECEIVED DICOM REPLY

            set newreply [msgcreate -recover -type reply [msgget $mh]]
            set resp_driverctl [msgmetaget $mh DRIVERCTL]
            msgmetaset $newreply DRIVERCTL $resp_driverctl 

            lappend dispList  "KILLREPLY $mh" "CONTINUE $newreply"
        }

        time {}
        shutdown {}
        default {
            error "Unknown mode '$mode' in $module"
        }
    }

    return $dispList
}
Note: The KILLREPLY disposition is for the internal reply message handle, and the CONTINUE disposition is for the new reply message.