XML-RPC is a popular standard for remote procedure calling. In OnePacs Workstation for macOS XML-RPC is used to allow external tools to integrate with the app.
XML-RPC runs in background and can be configured in the Listener preferences. It can be reached by XML-RPC clients, running on the same workstation or on another computer. XML-RPC is based on HTTP: by properly setting up your network infrastructure, you should be able to get your RIS/HIS to talk to OnePacs Workstation for macOS.
Methods
The implementation ignores letter case for method names, but not in parameters. These methods accept one parameter that should be a struct, and extracts values from the struct by their name; their response is also a struct, containing a numerical value with key error that contains a zero upon success.
The following methods are exposed by the XML-RPC listener. Additional methods may be exposed by plugins.
DisplayStudy
This method opens the study, specified by the parameters:
- PatientID - a string matched against the studies Patient ID values (0010,0020);
- StudyInstanceUID - a string matched against the studies Study Instance UID values (0020,000d);
- AccessionNumber - a string matched against the studies Accession Number values (0008,0050);
- StudyID - a string matched against the studies Study ID values (0020,0010).
All parameters are optional, but at least one should be defined.
Upon success, the return struct will contain an array named elements, detailing the opened studies.
DisplaySeries
This method opens the series, specified by the parameters:
- PatientID - a string matched against the series Patient ID values (0010,0020);
- SeriesInstanceUID - a string matched against the series Series Instance UID values (0020,000e);
All parameters are optional, but at least one should be defined.
Upon success, the return struct will contain an array named elements, detailing the opened series.
FindObject
Also exposed with the alias DBWindowFind, this method is a versatile database tool.
- table - a required string specifying the query level: either Study, Series or Image;
- request - a required string specifying an SQL query in the Apple Predicate Format String Syntax in the OnePacs Workstation for macOS database structure context.
- execute - a string specifying what should be done with the matching items: Open, Select or Delete.
Upon success, the return struct will contain an array named elements, detailing the matching items.
DownloadURL
CloseAllWindows
OpenDB
SelectAlbum
GetDisplayed2DViewerSeries
GetDisplayed2DViewerStudies
Close2DViewerWithSeriesUID
Close2DViewerWithStudyUID
DisplayStudyListByPatientName
DisplayStudyListByPatientID
SwitchToDefaultDBIfNeeded
OpenDB
SelectAlbum
CMove
Retrieve
PathToFrontDCM
Kill