Date: Thu, 28 Mar 2024 21:27:51 -0400 (EDT) Message-ID: <1705116540.874.1711675671921@ip-10-208-27-219.ec2.internal> Subject: Exported From Confluence MIME-Version: 1.0 Content-Type: multipart/related; boundary="----=_Part_873_1633501966.1711675671918" ------=_Part_873_1633501966.1711675671918 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Location: file:///C:/exported.html
This document is geared towards providing common templates for u= sing CTP to submit data to NBIA. For more information about configuri= ng CTP pipelines please refer to the RSNA's CTP pipeline wiki section at: <= a href=3D"http://mircwiki.rsna.org/index.php?title=3DCTP-The_RSNA_Clinical_= Trial_Processor#Pipelines" class=3D"external-link" rel=3D"nofollow">http://= mircwiki.rsna.org/index.php?title=3DCTP-The_RSNA_Clinical_Trial_Processor#P= ipelines.
CTP functions both as a client and server for transmitting data to NBIA.= In a typical installation of NBIA you will configure CTP clients for= each submitting site that is sending data to your NBIA server. At yo= ur server location you will have a CTP server to receive the data sent by t= he CTP clients. In general you should not need to make any changes to= the CTP server component as that is configured during the installation of = NBIA. However there are some scenarios where you will need to make ch= anges to the CTP clients in order to meet the needs of the submitters provi= ding you with data.
Below are some common scenarios along with configuration file templates =
that will help you easily setup CTP clients for each situation.
In the scenario where the submitter's image data is all stored on their = PACS you would leverage CTP's ability to import data directly via a DICOM s= end from the PACS. Your configuration pipeline would be setup to proc= ess objects in the following manner: DICOM Import --> IDMap --> Anony= mization --> HTTP Export.
<Con= figuration> <Server port=3D"80" /> <Pipeline name=3D"Main Pipeline"> <ImportService name=3D"DICOM Import" class=3D"org.rsna.ctp.stdstages.DicomImportService" root=3D"roots/dicom-import" port=3D"1104" /> <Processor name=3D"ID Map" class=3D"org.rsna.ctp.stdstages.IDMap" root=3D"roots/idmap" /> <Anonymizer name=3D"Anonymizer" class=3D"org.rsna.ctp.stdstages.DicomAnonymizer" root=3D"roots/anonymizer" script=3D"roots/anonymizer/scripts/da.script" quarantine=3D"quarantines/anonymizer" /> <ExportService name=3D"HTTP Export" class=3D"org.rsna.ctp.stdstages.HttpExportService" root=3D"roots/http-export" url=3D"https://university.edu:1443" /> </Pipeline> </Configuration>
In a scenario where the submitter's data is stored on a hard drive or CD= you will need an additional tool called FileSender. Once you have do= wnloaded and extracted FileSender you will use it to select the files from = your computer to send them to the CTP client.
In this situation your configuration pipeline would be setup to process = objects in the following manner: HTTP Import --> IDMap --> Anonymizat= ion --> Export.
<Con= figuration> <Server port=3D"80" /> <Pipeline name=3D"Main Pipeline"> <ImportService name=3D"HTTP Import" id=3D"HTTP Import" class=3D"org.rsna.ctp.stdstages.HttpImportService" root=3D"roots/http-import" port=3D"7777" ssl=3D"yes" zip=3D"no" acceptDicomObjects=3D"yes" acceptXmlObjects=3D"no" acceptZipObjects=3D"no" acceptFileObjects=3D"no" quarantine=3D"quarantines/http-import" /> <Processor name=3D"ID Map" class=3D"org.rsna.ctp.stdstages.IDMap" root=3D"roots/idmap" /> <Anonymizer name=3D"Anonymizer" class=3D"org.rsna.ctp.stdstages.DicomAnonymizer" root=3D"roots/anonymizer" script=3D"roots/anonymizer/scripts/da.script" quarantine=3D"quarantines/anonymizer" /> <ExportService name=3D"HTTP Export" class=3D"org.rsna.ctp.stdstages.HttpExportService" root=3D"roots/http-export" url=3D"https://university.edu:1443" /> </Pipeline> </Configuration>
In a scenario where the submitter intends to send more than one collecti= on of images to NBIA via CTP you will need to setup new pipelines for each = collection. For this situation let's assume the submitter has two collectio= ns of images. The first is a CT Lung study which they have stored on DICOM = CDs and the second is an MR Brain study which is stored on their PACS.
<Con= figuration> <Server port=3D"80" /> <Pipeline name=3D"CT Lung Pipeline"> <ImportService name=3D"CT Lung HTTP Import" id=3D"CT Lung HTTP Import" class=3D"org.rsna.ctp.stdstages.HttpImportService" root=3D"roots/http-import/CT-Lung" port=3D"7777" ssl=3D"yes" zip=3D"no" acceptDicomObjects=3D"yes" acceptXmlObjects=3D"no" acceptZipObjects=3D"no" acceptFileObjects=3D"no" quarantine=3D"quarantines/http-import/CT-Lung" /> <Processor name=3D"CT Lung ID Map" class=3D"org.rsna.ctp.stdstages.IDMap" root=3D"roots/idmap/CT-Lung" /> <Anonymizer name=3D"CT Lung Anonymizer" class=3D"org.rsna.ctp.stdstages.DicomAnonymizer" root=3D"roots/anonymizer/CT-Lung" script=3D"roots/anonymizer/scripts/CT-Lung-da.script" quarantine=3D"quarantines/anonymizer/CT-Lung" /> <ExportService name=3D"CT Lung HTTP Export" class=3D"org.rsna.ctp.stdstages.HttpExportService" root=3D"roots/http-export/CT-Lung" url=3D"https://university.edu:1443" /> </Pipeline> <Pipeline name=3D"MR Brain Pipeline"> <ImportService name=3D"MR Brain DICOM Import" class=3D"org.rsna.ctp.stdstages.DicomImportService" root=3D"roots/dicom-import/MR-Brain" port=3D"1104" /> <Processor name=3D"ID Map" class=3D"org.rsna.ctp.stdstages.IDMap" root=3D"roots/idmap/MR-Brain" /> <Anonymizer name=3D"MR Brain Anonymizer" class=3D"org.rsna.ctp.stdstages.DicomAnonymizer" root=3D"roots/anonymizer/MR-Brain" script=3D"roots/anonymizer/scripts/MR-Brain-da.script" quarantine=3D"quarantines/anonymizer/MR-Brain" /> <ExportService name=3D"MR Brain HTTP Export" class=3D"org.rsna.ctp.stdstages.HttpExportService" root=3D"roots/http-export/MR-Brain" url=3D"https://university.edu:1443" /> </Pipeline> </Configuration>