Create an Event Service Subscription to run the dcm2niix container on DICOM scans uploaded to your project. Prerequisites include the Container Service plugin and an installed and enabled
xnat/dcm2niix container and command.
Enable Event Service
As a user with administrator privileges, browse to the Administrator -> Event Service page.
If necessary, change the status of Event Service to Enabled.
Add New Event Subscription
Select the Add New Event Subscription button.
Define settings for your new Event Service Subscription:
- Optional - Define a label for your Subscription. This is not required to be unique, but uniqueness is recommended. A label will be auto-generated if not supplied.
- Select from the list of available Events.
- Optional - Select one or multiple projects for subscription to apply. If you want your subscription to apply to all current and future, choose Apply to All Projects.
- Select from the list of enabled Actions. Beyond the always available Logging Action, this list includes any Actions made available to the current user and selected projects.
- Optional - Set Attributes defined by the selected Action. In the case of a Container Service Action, the attributes correspond to editable command inputs.
- Optional - Define a payload filter based on JSONPath. Although defining a payload filter is highly recommended to ensure your Subscription is triggered only on Events of interest, we'll simply leave it blank for now. An in-depth discussion on payload filters can be found below.
- Select the user who will own the selected Action. Options include either the currently authenticated user or the user who triggers the event, e.g. the user account used to upload a scan.
- Change the Subscription status to Enabled. This setting can also be toggled on the previous Event Subscriptions page.
Select OK to save and activate the subscription.
View Event Subscription
Note the newly created Subscription in the Event Subscriptions table.
When this subscription is enabled, any creation of a new scan in the Fruit_Struct project will trigger the execution of the dcm2niix-scan container command. If the input requirements of the container are not met (DICOM files available in a 'DICOM' labeled resource) the container command will fail. To avoid this, the subscription author can use the payload filter to specify particular attributes of a scan required for triggering the container action