You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

MQTT Transmission provides a configuration section to the Ignition Gateway.  These can be seen in the Configure section of the Ignition Gateway web UI.                                                                            

Once in the configuration section there are three tabs: Servers, General, and Custom.  Each of these tabs is described in detail in the following sections.  

Servers

The first tab is a list of MQTT Servers that MQTT Transmission should connect to.  By default, MQTT Transmission is configured to connect to a local MQTT Distributor based MQTT Server.  It is set up to connect to localhost, port 1883, using the default username/password pair of admin/changeme.  So, out of the box MQTT Transmission will work with MQTT Distributor and its default configuration.

Additional or alternative MQTT Servers can be configured in MQTT Transmission.  Often times more than one will be configured to handle fail-over or in redundant or geographically distributed systems.  The configuration options for servers are listed below.

  • Name 
    • This is the friendly name of the MQTT Server used to easily identify it
  • URL
    • This is the URL of the MQTT server.  Its format is as follows: [protocol]://[location]:[port].  Each of these are shown below
      • protocol - Either tcp or ssl
      • location - The server location.  e.g. localhost, myserver.chariot.io, mydomain.com, etc
      • port - The port the MQTT Server is listening on.  Generally this is 1883 if using TCP or 8883 if using SSL
  • Server Type
    • This is the type of MQTT Server to connect to
      • Chariot - If connecting to a Cirrus Link Chariot on-premise or Chariot cloud based MQTT Server
      • MQTT_Distributor - If connecting to a Ignition MQTT Distributor server
      • Third_Party - If connecting to a third party 3.1.1 compliant MQTT Server
  • Set
    • The Set that this server is a member of.
  • Client ID
    • Optional MQTT client ID to use.  If specified this will be used in the MQTT Engine connect packet when connecting to the server.  If left blank, a random client ID will be create of the form 'IgnitionTarget-xxxxxxxx-xxxx-xxxx
  • Username
    • The MQTT username to use in the MQTT connect packet.  This is required if the MQTT Server to connect to requires it
  • Password
    • The MQTT password to use in the MQTT connect packet.  This is required if the MQTT Server to connect to requires it
  • Certificates
    • The server certificates to use if required.  These are generally only required when connecting using TLS and the MQTT server does not have a genuine certificate issued by a trusted certificate authority.

Clicking on the 'Create new MQTT Server...' link will bring up the following form to add a new Server.

Sets

The Set Settings tab contains a list of server sets.  Each set represents a logical grouping of MQTT servers.  When a set is referenced by the General Settings configuration (or Custom Settings configuration) a single connection to one of the servers in the set will be maintained, with the other servers act as failover in the case that a connection with the first is lost.  Server sets are disjoint, meaning that a single MQTT server cannot be in more that one set.

Additional sets can be configured in MQTT Transmission for situations where multiple Custom Settings will need to point to different sets (or groupings) of MQTT servers. The configuration options for sets are listed below.

  • Name
    • This is the friendly name of the set used to easily identify it.
  • Description
    • This is a friendly description of the set.

General

The General Settings tab contains advanced configuration options for the default MQTT Server settings created in the Servers tab.  These are described below.

  • Primary Host ID
    • The primary host ID to use for 'state' notifications.  These notifications are used to notify MQTT Transmission if the primary backend application loses connection with the MQTT Server, meaning it has gone 'offline'.  If MQTT Transmission is notified that the primary backend application has gone 'offline', it will close it's client connection with the MQTT server and walk to the next MQTT server defined in the set.  If the primary host ID is not set, MQTT Transmission will not subscribe on the notification topics and not receive any 'state' notifications.
  • Tag Provider Name
    • The name of the tag provider that Transmission will monitor.  By default this is the Ignition 'default' provider.
  • Tag Pacing Period
    • The buffer period for outgoing Transmission messages in milliseconds.  The default is 1000ms.  This means when a tag change event is detected 1000ms will elapse before an MQTT message is sent.  This allows additional tag change events to be buffered and put into the message and in turn reduce the number of generated MQTT messages.
  • Set
    • The Set that the default MQTT Transmission client will connect to.
  • Aliased Tags
    • Whether to use aliases for tag names when published data messages as tag values change.  This is used to optimize payload size when publishing data.
  • Compression
    • The algorithm to use to compress payloads before they are published to the MQTT Server.  If 'NONE' is selected then compression is disabled.

Custom

The third tab provides the ability to define custom Transmission settings.  By default, Transmission will only monitor tags in the 'Edge Nodes' folder under the provider specified in the General tab.  A custom Transmission setting will allow the user to define additional monitors within Transmission with their own provider, folder settings and IDs for the Group, Edge Node, and Device associated with the tags.  This allows the user to point to any folder in any provider (regardless of how the folder hierarchy is arranged) and have the complete set of tags pulled in and published with Transmission using the IDs specified in the custom configuration. 

Each Custom Setting has the following fields

  • Tag Provider Name
    • The name of the tag provider that Transmission will monitor.
  • Tag Path
    • An optional folder path under the tag provider where the root folder of the tags can be found.
  • Tag Pacing Period
    • The buffer period for outgoing Transmission messages in milliseconds.
  • Set
    • The Set that the Custom Settings client will connect to.
  • Aliased Tags
    • Whether to use aliases for tag names when published data messages as tag values change.  This is used to optimize payload size when publishing data.
  • Compression
    • The algorithm to use to compress payloads before they are published to the MQTT Server.  If 'NONE' is selected then compression is disabled.
  • Group ID
    • An ID representing a logical grouping of MQTT Edge Of Network (EoN) Nodes and Devices into the infrastructure.
  • Edge Node ID
    • An ID that uniquely identifies the MQTT Edge Of Network (EoN) Node within the infrastructure.
  • Device ID
    • An optional ID that uniquely identifies a Device within the infrastructure.

Note that if a 'Device ID' is not specified, the tag values published by Transmission will represent metrics associated only with an Edge Node. 

Clicking on the 'Create new Custom Settings..' link will bring up the following form to add a new Server.

 

  • No labels