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.
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