Channel Introduction
Let’s walk through creating your first channel. This page will demonstrate:
Creating a channel
Configuring devices within a channel
Starting, Pausing, Stopping devices and channels
Queuing, processing, and viewing messages
Exporting a channel
Creating a Tab
Importing a channel
A new/empty Connexion system (or a new empty tab) will look similar to this:
Use either of the indicated buttons to launch the New Channel dialog.
By default, every channel starts with a Documentation Device and a Queue Device in the third position. Devices can be inserted or removed from a channel as long as the channel is stopped.
The Channel dialog is where you choose which devices (and the order) will make up your channel. Give the channel a name, and then click the <Select Device> in the second-from-the-top border area.
Next, click the <Select Device> drop-down at the bottom of the dialog. This will let us choose a new device to place after the Queue device. Instead of navigating the list of device categories, start typing ‘Hl7’ on your keyboard. This will filter the list of available devices.
Select the HL7 Transform Device V2. Your dialog should now look similar to this:
A new device selector is automatically appended to the end of the channel. Click on the <Select Device> drop-down and select an HL7 Outbound Device. Click the Save Channel button (or ctrl + S) to save the channel.
You can use the Insert link between the device selectors and the red 'X' at the right side of each device selector to insert and remove devices.
After saving the channel, your channel will appear in the Channels Pane.
The grey bar along the top of the channel contains a number of indicators and buttons. This area can also be right-clicked to show more available operations. From left to right:
State: Is the channel Running or Stopped. Note that hovering your mouse over the state text (Stopped or Running) will display more information. Channels must be in the Stopped state for the channel structure to be edited (device configuration can be edited on a running channel).
Start / Stop: Use these buttons to request the channel to start or stop.
Edit Channel (ctrl + E): This button will display the Edit Channel dialog where you can add, remove, or change devices.
Save / Discard (ctrl + S): Save or revert channel changes.
Lock State (ctrl + enter): Connexion uses channel-level locking for concurrency control. In order to edit a channel (or device configurations), you must own the lock for that channel. When you have a channel locked, no-one else can edit that channel.
Queue Counts: A sum of message counts for this channel. Since a channel may contain multiple queues, these values are the sum of all queues within the channel.
Total Message Count: A sum of all messages within the channel.
Dashboards: A link which will display this channel within the dashboard, with a 5 minute running performance graph displayed. Note the second dashboard button will be deprecated in a future version of Connexion. For historical performance, use the metrics feature.
Events: A count of warning and error events for this channel. This icon can be clicked to bring up an event viewer showing events for this channel.
Tags: Channel tags are a collection of short metadata strings associated with a channel. These can be used as visual indicators as well as filtering and searching criteria throughout Connexion.
Device Status: Many devices will display short strings and colors at the top of their icon. These are typically used as indicators for device state (for example, Connection Established, Connection Errored, etc.).
Quick Navigate: Many devices will display this icon at the bottom of the device icon. Clicking on this icon will display of list of navigable items. These items might be other devices (in this or other Connexion systems, or URIs). This can be useful to quickly navigate to other associated channels.
We’re going to start with all devices having their default configuration. We’re going to pause the queue device and then start the channel. This will allow messages to be queued but not processed.
Pause the queue device: Click the green triangle icon above the queue device. It should change to a paused icon.
Paused QueueStart the channel: Click the green triangle in the channel bar (to the right of the Stopped/P text).
Channel state is now Running. Queue displays ‘paused’ statusSend some messages into the channel. To do this, we’ll use HL7Spy to send some sample message to port 11000. Notice that when the connection is established to the HL7 Inbound Device, the status bar above it turns green. Hovering over this text will display additional information. Also note that the queued message count will start to increase.
Queue Types / Abbreviations:
Q: Queued (all time)
P: Processed Today
E: Errored Today
Et: Errored (all time)
F: Filtered Today
D: Delayed (all time)
S: Shelved (all time)
After receiving some messages, your channel should look as follows:
Next we’ll navigate to the queue device and view the received messages. Click the queue device icon (grey cylinder) to select the device.
The queue device has a lot of built-in functionality. Most of it is accessed by right-clicking on the queue device icon, or, on the messages table.
There are additional windows grouped with the Outbound Message window: Processing History and Message Source Trace. Processing History displays metadata about processing events (elapsed times, log messages, etc.), while Message Source Tracelists the message origin and channels traversed.
Next we’ll configure the
HL7 Transform Deviceto make a small change each message we process. Select this device, and then add a newExpression Transform.
Update the column values to match the image below, note how a preview is show in the In and Out message viewers, then save the channel.
Start an application which can receive HL7 messages (like HL7Spy) and configure it to receive on port 12000 (or modify the
HL7 Outbound Deviceto use a different port). Unpause the queue device to allow the message to process. If messages are successfully sent, navigate back to the queue device and note the following:The In/Out message viewers highlight the changes between the original and processed message.
The Processing History view shows
ACKmessage returned by the receiving system.The Message Source Trace view shows the network origin and destination. If this message had travelled through other channels (via branching or forwarding), these would also be displayed.
We have now created a channel and processed some messages. Let’s export this channel and import it into a new tab, as an example of how channels can be ported between Connexion instances.
The channel import/export routines are quite powerful, and users can choose to import/export any subset of channels within a Connexion instance (or all channels in a system). The simplest way of copying a single channel, or all channels within a tab, is via the clipboard.
Right-click on the channel header bar and select the Copy To Clipboard option.
Next, let’s create a new tab to paste our channel in. Right-click on the default tab and choose the Add New Tab option. You will be prompted to enter a tab name (you can use the default). Right click on the newly created tab (on the text of the tab), and choose the Paste Channels option.
A dialog displaying the structure of the channel will be displayed. You can click on the devices within this tree to view the configuration contained in the copied channel. Click the Import & Close button to complete the import.
If your target Connexion instance is not directly accessible within the management UI, you can export channels to a file. To do this, right-click the channel header bar and choose the Export channel option. You will be prompted to choose a target file, and can optionally password protect the file.
Click the export button to write the channel file. Next, create a new tab by right-clicking on an existing tab and choosing the Add New Tab option. After creating the new tab, right-click on it and choose the Import Channels into Tab option. Selecting the export file will show the same import dialog used when pasting. Click the Import & Close button to complete the import.
More advanced import and export routines are covered in dedicated documentation on these topics.