Altair® Panopticon

 

RabbitMQ

The RabbitMQ connector allows connection to RabbitMQ’s message bus on a real-time streaming basis. Specifically, the connector allows Panopticon Designer (Desktop) to subscribe to XML, JSON, Text or FIX based messages that are published on particular topics.

Using RabbitMQ

  1. When creating a new data table, select RabbitMQ from the Connect to data dialog. The RabbitMQ Connection dialog is displayed:

  2. Enter the following information:

    • Broker

The location and port of the message broker.

    • User Name

The user name that will be used to connect to the RabbitMQ service.

    • Password

The password to connect to the RabbitMQ service.

  1. Select any of the following Exchange Types:

    • Default

    1. A direct exchange with no name that is pre-declared by the broker.

    2. Selecting this exchange type disables the Exchange section (Exchange, Routing Key, Durable, and Auto-delete properties).

    • Fanout

Broadcasts all of the messages it receives to all of the queues it knows and the routing key is ignored (the Routing Key field is disabled).

    • Direct

Delivers messages to queues based on a message routing key. It is ideal for the unicast routing of messages, although it can be used for multicast routing as well.

    • Topic

A message sent with a particular routing key will be delivered to all of the queues that are bound with a matching binding key.

    • Headers

Exchanges routed based on arguments containing headers and optional values.

  1. Depending on the selected Exchange Type, select or define the following:

    • Exchange

Name of the exchange.

    • Durable

Enable so the exchange can survive a broker restart.

    • Auto Delete

Enable so the exchange is deleted when the last queue is unbound from it.

    • Routing Key

The routing key used to deliver messages to queues.

    • Headers

This field is only available when the message type is Header.

Binding a queue to a Headers exchange is possible using more than one header for matching. Setting x-match to any, means just one matching value is sufficient. Setting it to all means that all values must match. Default is x-match=all.

  1. Check the Explicit Queue box and enter the Custom Queue Name. Then enter or enable the following properties:

    • Properties

The custom queue property.

    • Durable

Enable so the queue can survive a broker restart.

    • Auto Delete

Enable so the queue that had the least consumer will be deleted when that connection closes.

  1. Modify the Real-time Limit to vary the data throttling. This defaults to 1000 milliseconds.  (When data should be pushed through to the desktop).

  2. Select the Message Type:

    • FIX

    • JSON

    • Text

    • XML (Default)

If Text has been selected, confirm the Decimal Separator, Text Qualifier, Column Delimiter, and if the first row of the message included column headings.

  1. Select either the dot (.) or comma (,) as the Decimal Separator.

  2. The schema of the source file is then defined by clicking the Generate Columns… button.

  3. Click Add Column to add columns to the RabbitMQ connection that represent sections of the message. Then enter or select:

    • Name

    • XPath/JsonPath/Fix Tag/Text Column Index

    • Type (Numeric, Text or Date/Time)

    • Date/Time format when the Data Type is Time

    1. NOTE:

    2. To parse and format times with higher than millisecond precision, the format string needs to end with a period followed by sequence of lower case Fs. There can be no additional characters following them.

    3. For example: yyyy-MM-dd HH:mm:ss.ffffff

    • Enabled (determines whether the message field should be processed)

    • Filter (defined parameters that can be used as Filter)

  4. NOTE: The Filter option is only available for JSON, Text, and XML Message types

    Fix

    JSON

    Text

    XML

    You can also opt to click to delete a column in the list.

  1. You can opt to save the columns definition into an XML format by clicking the Save button. The saved XML files are placed in …\Public\Public Documents\Datawatch Desktop\Column Schemas.

  2. Click Load to load the column schema.

  3. The time zone of input parameters and output data is by default unchanged. Changing the time zone is supported through the Timezone list box, based on the assumption that data is stored in UTC time and outputs are presented in the selected time zone.

  1. Expand Real-Time Settings.

Refer to Defining Real-Time Settings for more information.

  1. Click OK to confirm the selection and retrieve the record set into Panopticon Designer (Desktop).

Initially, there is no data displayed in the Data Source Preview section of the Edit Data Table window.

Click the Start Preview button to display the data and refresh the values depending on the defined Refresh Period.

  1.