Skip to main content
https://badge.fury.io/py/pfdcm.svg https://travis-ci.org/FNNDSC/pfdcm.svg?branch=master https://img.shields.io/badge/python-3.5%2B-blue.svg

Overview

This repository provides pfdcm – a controlling service that speaks to a PACS and handles DICOM data management.

pfdcm

Most simply, pfdcm provides a REST-type interface to querying a PACS as well as managing DICOM data received from a PACS. The REST interface is conformant to the somewhat colloquial pf-* dialects that are spoken by various entities of the ChRIS family of services. Thus, there are JSON specified directives that follow a very specific pattern of syntax.

Installation

Since the system requires the installation of some system-level companion services, the recommend vector is via the docker mechanism.

Using the fnndsc/pfdcm dock

docker pull fnndsc/pfdcm

and then run

docker run --name pfdcm     \
            -v /home:/Users \
            --rm -ti        \
            fnndsc/pfdcm    \
            --forever --httpResponse

Usage

Command line arguments

    --msg '<JSON_formatted>'
    The action to perform.

    [--type <storageBackendType>]
    The type of object storage. Currently this is 'swift'.

    [--ipSwift <swiftIP>]
    The IP interface of the object storage service. Default 'localhost'.

    [--portSwift <swiftPort>]
    The port of the object storage service. Defaults to '8080'.

    [--ipSelf <selfIP>]
    The IP interface of the pfstorage service for server mode.
    Default 'localhost'.

    [--portSelf <selfPort>]
    The port of the pfstorage service for server mode.
    Defaults to '4055'.

    [--httpResponse]
    Send return strings to client caller as HTTP formatted replies
    with content-type html.

    [--configFileLoad <file>]
    Load configuration information from the JSON formatted <file>.

    [--configFileSave <file>]
    Save configuration information to the JSON formatted <file>.

    [-x|--desc]
    Provide an overview help page.

    [-y|--synopsis]
    Provide a synopsis help summary.

    [--version]
    Print internal version number and exit.

    [--debugToDir <dir>]
    A directory to contain various debugging output -- these are typically
    JSON object strings capturing internal state. If empty string (default)
    then no debugging outputs are captured/generated. If specified, then
    ``pfcon`` will check for dir existence and attempt to create if
    needed.

    [-v|--verbosity <level>]
    Set the verbosity level. "0" typically means no/minimal output. Allows for
    more fine tuned output control as opposed to '--quiet' that effectively
    silences everything.

    [--setPACS <JSONstring>]
    As part of the initialization of the system, set some information pertaining
    to a PACS. For example,

     --setPACS \\
            '{
                "orthanc" : {
                    "server_ip": "%HOST_IP",
                    "aet": "CHIPS",
                    "aet_listener": "CHIPS",
                    "aec": "ORTHANC",
                    "server_port": "4242"
                }
            }'

EXAMPLES

pfstorage                                               \
    --ipSwift localhost                                 \
    --portSwift 8080                                    \
    --ipSelf localhost                                  \
    --portSelf 4055                                     \
    --httpResponse                                      \
    --verbosity 1                                       \
    --debugToDir /tmp                                   \
    --type swift                                        \
    --server                                            \
    --forever

Release files for pfdcm 2.0.2.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pfdcm 2.0.2.6
File Size Uploaded
pfdcm-2.0.2.6.tar.gz 20.8 kB Details

Release files / pfdcm-2.0.2.6.tar.gz

Download URL pfdcm-2.0.2.6.tar.gz
Size 20.8 kB
Tags Source
SHA-256 checksum
How to use checksums
0687bee40d129099232df861679fd1c1550bbd5e042aa12edd2e557869dbb6e1
BLAKE2b-256 checksum
How to use checksums
9e758eeb211403ef8a8b4ed1eeadf3bda51e4915b714d703c4b19ee199e2ea87
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.7.3
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page