dcmups

Overview

This application acts as an Unified Worklist and Procedure Step (UPS) SCU to invoke operations and to receive notifications on/from a remote UPS SCP.

(info) The specification of the Unified Worklist and Procedure Step Services by DICOM Supplement 96 is still under development. This implementation reflects the state of the specification at September 2010, but uses retired SOP Class UIDs defined in a previous draft:

UID Value

UID Name

1.2.840.10008.5.1.4.34.4.1

Unified Procedure Step – Push SOP Class - Trial (Retired)

1.2.840.10008.5.1.4.34.4.2

Unified Procedure Step – Watch SOP Class - Trial (Retired)

1.2.840.10008.5.1.4.34.4.3

Unified Procedure Step – Pull SOP Class - Trial (Retired)

1.2.840.10008.5.1.4.34.4.4

Unified Procedure Step – Event SOP Class - Trial (Retired)

Usage

dcmups <operation> <aet>[@<host>[:<port>]] [Options]
dcmups -L aet[@host]:port [Other Options]

Invoke specified <operation> on remote Application Entity (=SCP of UPS Push, UPS Pull or UPS Watch). If <port> is not specified, DICOM default
port 104 is assumed. If also no <host> is specified localhost is assumed. Can be also invoked without operation and remote AE parameter to (only) act as UPS Event SOP Class SCU accepting assocation requests on the network connection specified by option -L.

Operations

Operations:
create      Create an Unified Procedure Step. Requires -f.
set         Set Unified Procedure Step Information. Requires -iuid and -f.
get         Get Unified Procedure Step Information. Requires -iuid.
find        Search for Unified Procedure Step.
chstate     Change UPS State. Requires -iuid, -tuid and -state.
reqcancel   Request UPS Cancel. Requires -iuid and -aet.
subscribe   Subscribe to Receive UPS Event Reports. Requires option -aet.
unsubscribe Unsubscribe from Receiving UPS Event Reports. Requires -aet.
suspend     Suspend Global Subscription. Requires option -aet.

Options

 -acceptTO <ms>                 timeout in ms for receiving
                                A-ASSOCIATE-AC, 5s by default
 -aet <aet>                     Specifies AET of Requesting AE for
                                operation reqcancel and AET of Receiving
                                AE for operation subscribe, unsubscribe
                                and suspend.
 -connectTO <ms>                timeout in ms for TCP connect, no timeout
                                by default
 -dellock                       invoke operation subscribe with Deletion
                                Lock.
 -device <name>                 set device name, use DCMGPWL by default
 -f <file>                      path to DICOM or XML file with UPS
                                attributes to create or set.
 -findprior <NORMAL|HIGH|LOW>   specify priority of the C-FIND operation,
                                NORMAL by default.
 -h,--help                      print this message
 -iuid <uid>                    SOP Instance UID of UPS. Required for
                                operation set, get, chstate, reqcancel,
                                and for operation subscribe/unsubscribe
                                to/form receiving UPS events about a
                                specific UPS - and not
                                subscribe/unsubscribe globally.
 -ivrle                         offer only Implicit VR Little Endian
                                Transfer Syntax.
 -keypw <password>              password for accessing the key in the
                                keystore, keystore password by default
 -keystore <file|url>           file path or URL of P12 or JKS keystore,
                                resource:tls/test_sys_1.p12 by default
 -keystorepw <password>         password for keystore file, 'secret' by
                                default
 -L <aet[@host]>                set AET and local address of local
                                Application Entity, use device name and
                                pick up any valid local address to bind
                                the socket by default
 -no_ssl2                       disable the use of SSLv2 for TLS
                                connections
 -no_ssl3                       disable the use of SSLv3 for TLS
                                connections
 -no_tls1                       disable the use of TLSv1 for TLS
                                connections
 -noclientauth                  disable client authentification for TLS
 -passcode <passcode>           optional passcode for User Identity
                                Negotiation, only effective with option
                                -username
 -pdv1                          send only one PDV in one P-Data-TF PDU,
                                pack command and data PDV in one P-DATA-TF
                                PDU by default.
 -q <[seq/]attr=value>          specify matching key. attr can be
                                specified by name or tag value (in hex),
                                e.g. ScheduledProcedureStepStartDateTime
                                or 00404005. Attributes in nested Datasets
                                can be specified by including the name/tag
                                value of the sequence attribute, e.g.
                                00404018/00080100 for Code Value in the
                                Scheduled Workitem Code Sequence.
 -r <attr>                      specify return key. attr can be specified
                                by name or tag value (in hex). If no
                                return keyis specified, defaults are used
                                for invoked find operation.
 -rcvpdulen <KB>                maximal length in KB of received P-DATA-TF
                                PDUs, 16KB by default
 -reaper <ms>                   period in ms to check for outstanding
                                DIMSE-RSP, 10s by default
 -releaseTO <ms>                timeout in ms for receiving A-RELEASE-RP,
                                5s by default
 -rspTO <ms>                    timeout in ms for receiving DIMSE-RSP, 10s
                                by default
 -sndpdulen <KB>                maximal length in KB of sent P-DATA-TF
                                PDUs, 16KB by default
 -soclosedelay <ms>             delay in ms for Socket close after sending
                                A-ABORT, 50ms by default
 -sorcvbuf <KB>                 set SO_RCVBUF socket option to specified
                                value in KB
 -sosndbuf <KB>                 set SO_SNDBUF socket option to specified
                                value in KB
 -ssl3                          disable the use of TLSv1 and SSLv2 for TLS
                                connections
 -state <state>                 match/change UPS of/to specified <state>
 -tcpdelay                      set TCP_NODELAY socket option to false,
                                true by default
 -tls <NULL|3DES|AES>           enable TLS connection without, 3DES or AES
                                encryption
 -tls1                          disable the use of SSLv3 and SSLv2 for TLS
                                connections
 -truststore <file|url>         file path or URL of JKS truststore,
                                resource:tls/mesa_certs.jks by default
 -truststorepw <password>       password for truststore file, 'secret' by
                                default
 -tuid <uid>                    Transaction UID.
 -uidnegrsp                     request positive User Identity Negotation
                                response, only effective with option
                                -username
 -upspull                       Use UPS Pull SOP Class to invoke
                                operation. Use appropriate SOP Class by
                                default.
 -upspush                       Use UPS Push SOP Class to invoke
                                operation. Use appropriate SOP Class by
                                default.
 -upswatch                      Use UPS Watch SOP Class to invoke
                                operation. Use appropriate SOP Class by
                                default.
 -username <username>           enable User Identity Negotiation with
                                specified username and  optional passcode
 -V,--version                   print the version information and exit

Example

dcmups find UPSSCP@localhost:11112 -state SCHEDULED

Search Application Entity UPSSCP listening on local port 11112 for all scheduled UPS.

Workflow examples

Create, Claim, Update and Complete UPS
Subscribe and Unsubscribe to Receive UPS Event Reports
Request Cancellation of an UPS