MedicalDeviceInput node

Use a MedicalDeviceInput node to collect data from medical devices.

Purpose

You can use the MedicalDeviceInput node to connect medical devices to IBM® Integration Bus. You can then collect data from these medical devices and use it in message flow applications. Each MedicalDeviceInput node can connect to more than one medical device.

The MedicalDeviceInput node is contained in the Healthcare drawer of the message flow node palette, and is represented in the IBM Integration Toolkit by the following icon:

MedicalDeviceInput node icon

Using this node in a message flow

The MedicalDeviceInput collects data from medical devices and passes the data into a message flow in a logical message tree. You can use this logical message tree in your message flow applications. For example, you can use a MedicalDeviceInput node to connect a group of heart rate monitors to IBM Integration Bus and then write a message flow to transfer the data from these monitors to a data warehouse. For an example message set that you can use to model the measurements from a MedicalDeviceInput node, see Resources for the Healthcare: Medical Devices to EMR pattern.

Data in the messages is identified with a primary ID. Waveform and alarm alert measurements also have a sub ID. Use these IDs to help process data from medical devices within your message flows; do not use these IDs as a definitive mapping between data that is output from a device and any standard. For more information about the IDs that are used for each measurement for a particular device, see Medical device catalog.

The following examples show the format of the logical message tree that is sent from the Out terminal of a MedicalDeviceInput node.
  • For a waveform measurement, the following logical message tree structure is used. The primary ID identifies the message as a waveform and the sub ID identifies the particular measurement:
    <dev:DataMessage xmlns:dev="http://www.ibm.com/WMBDevice/V1" xmlns:var="http://www.ibm.com/WMBVariable/V1">
        <dev:DeviceId>MedicalVirtualDevice_1</dev:DeviceId>
        <dev:DeviceModel> </dev:DeviceModel>
        <dev:DeviceType>Medical Virtual Device</dev:DeviceType>
        <dev:DriverId>CMVirtualDevice</dev:DriverId>
        <dev:Location>Ward 1</dev:Location>
        <dev:PatientId>1234</dev:PatientId>
        <dev:RequestTime>2012-03-23 16:26:16</dev:RequestTime>
        <var:Waveform>
            <var:PrimaryId>111:889::</var:PrimaryId>
            <var:Subid>101:434-667:203:263</var:Subid>
            <var:Name>Rate_ECG-Beats_Heart_CVS</var:Name>
            <var:Samples>
                <var:Sample>
                    <var:TimeOfReading>2012-03-23 16:26:15.825<var:TimeOfReading>
                    <var:Validity>CM_VALID</var:Validity>
                    <var:VarValue>65</VarValue>
                </var:Sample>
                <var:Sample>
                    <var:TimeOfReading>2012-03-23 16:26:15.828<var:TimeOfReading>
                    <var:Validity>CM_VALID</var:Validity>
                    <var:VarValue>74</VarValue>
                </var:Sample>
            </var:Samples>
        </var:Waveform>
    </dev:DataMessage>
  • For an alarm alert measurement, the following logical message tree structure is used. The primary ID identifies the message as either an upper limit alert or a lower limit alert. The sub ID is the ID of the measurement on which the alert is set:
    <dev:DataMessage xmlns:dev="http://www.ibm.com/WMBDevice/V1" xmlns:var="http://www.ibm.com/WMBVariable/V1">
        <dev:DeviceId>MedicalVirtualMonitor1_1</dev:DeviceId>
        <dev:DeviceModel> </dev:DeviceModel>
        <dev:DeviceType>Medical Virtual Monitor 1</dev:DeviceType>
        <dev:DriverId>CMVirtualMonitor</dev:DriverId>
        <dev:Location>Ward 1</dev:Location>
        <dev:PatientId>1234</dev:PatientId>
        <dev:RequestTime>2012-03-23 16:15:31</dev:RequestTime>
        <var:Alert>
            <var:PrimaryId>107:825:828:823</var:PrimaryId>
            <var:SubId>101:667:203:263</var:SubId>
            <var:Name>Status_Alert_Lower_UserLimits</var:Name>
            <var:Validity>CM_VALID</var:Validity>
            <var:VarValue>CM_NEGATIVE</var:VarValue>
        </var:Alert>
    </dev:DataMessage>
  • For a discrete value measurement, the following logical message tree structure is used. Only the primary ID is used.
    <dev:DataMessage xmlns:dev="http://www.ibm.com/WMBDevice/V1" xmlns:var="http://www.ibm.com/WMBVariable/V1">
        <dev:DeviceId>MedicalVirtualMonitor1_1</dev:DeviceId>
        <dev:DeviceModel> </dev:DeviceModel>
        <dev:DeviceType>Medical Virtual Monitor 1</dev:DeviceType>
        <dev:DriverId>CMVirtualMonitor</dev:DriverId>
        <dev:Location>Ward 1</dev:Location>
        <dev:PatientId>1234</dev:PatientId>
        <dev:RequestTime>2012-03-23 15:55:01</dev:RequestTime>
        <var:Variable>
            <var:PrimaryId>101:667:203:263</var:PrimaryId>
            <var:Name>Rate_Beats_Heart_CVS</var:Name>
            <var:Validity>CM_VALID</var:Validity>
            <var:VarUnits>bpm</var:VarUnits>
            <var:VarValue>87</var:VarValue>
        </var:Variable>
    </dev:DataMessage>

When devices are connected or disconnected from the system, or there are other conditions such as communications failures, messages are sent to the Status terminal. The following example shows a sample status message:

<StatusMessage>
    <DeviceId>MedicalVirtualMonitor1_1</DeviceId>
    <Information>Device started</Information>
    <ReturnCode>1</ReturnCode>
</StatusMessage>

Configuring the MedicalDeviceInput node

When you have added an instance of a MedicalDeviceInput node into a message flow, you can configure it; see Configuring a MedicalDeviceInput node. You configure a MedicalDeviceInput node by selecting a configurable service for the node. The configurable service contains the configuration information for the connections and measurements for the medical devices that are connected to the node. You can edit the configurable service to configure medical devices, connections, and measurements; see Editing the configurable service for a MedicalDeviceInput node by using the IBM Integration Toolkit. The properties of the node are displayed in the Properties view.

All mandatory properties for which you must enter a value (properties that do not have a default value defined) are marked with an asterisk.

Terminals and properties

The MedicalDeviceInput node terminals are described in the following table.

If the message is caught by this node after an exception has been thrown further on in the message flow, the message is routed to the Catch terminal. If you have not connected the Catch terminal, the message loops continually through the node until the problem is resolved. You must define a backout queue or a dead-letter queue (DLQ) to prevent the message from looping continually through the node.
Terminal Description
Out The output terminal from which medical device data is sent when the node processes the data correctly.
Catch The output terminal to which medical device data is routed if an exception is thrown downstream and caught by this node. Exceptions are caught only if this terminal is attached.
Status The output terminal to which medical device status information is routed when the status of a device changes.

The following tables describe the node properties. The column headed M indicates whether the property is mandatory (marked with an asterisk if you must enter a value when no default is defined); the column headed C indicates whether the property is configurable (you can change the value when you add the message flow to the BAR file to deploy it).

The Description properties for the MedicalDeviceInput node are described in the following table.
Property M C Default Description
Node name No No The node name The name of the node.
Short description No No   A brief description of the node.
Long description No No   Text that describes the purpose of the node in the message flow.
The Basic properties for the MedicalDeviceInput node are described in the following table.
Property M C Default Description
Configurable service name Yes No Not defined The name of the configurable service that contains the medical device configuration for the node.
Configurable service file No No   The file name and path of the configurable service file that contains the configurable service for the MedicalDeviceInput node. The file name is the configurable service name with the extension .configurableservice.
The Input Message Parsing properties for the MedicalDeviceInput node are described in the following table.
Property M C Default Description
Message domain No No DataObject The domain that is used to parse the incoming message. By default, the message that is propagated from the MedicalDeviceInput node is in the DataObject domain.

You cannot specify a different domain.

Message set No No   The name of the message set in which the incoming message is defined.

You cannot set this property.

Message type No No   The name of the incoming message.

You cannot set this property.

Message format No No   The name of the physical format of the incoming message.

You cannot set this property.

The Monitoring properties of the node are described in the following table.
Property M C Default Description
Events No No None Events that are defined for the node are displayed on this tab. By default, no monitoring events are defined on any node in a message flow. Use Add, Edit, and Delete to create, change, or delete monitoring events for the node; see Configuring monitoring event sources using monitoring properties in the IBM Integration Bus product documentation for details.

You can enable and disable events that are shown here by selecting or clearing the Enabled check box.

Notices | Trademarks | Downloads | Library | Support | Feedback

Copyright IBM Corporation 2011, 2014Copyright IBM Corporation 2011, 2014.

        
        Last updated
        
        Last updated : 2015-12-07 16:17:37


Reference topicReference topic | Version 3.0.0.1 | ha00580