The advanced configuration of the connectors allows you to personalize the payload of messages being sent from Niagara to 3rd parties and to adapt the connector to recognize the command to apply locally.


The following sections are common to all connectors

System Variables

If you open the AdvancedConfig of a connector you will notice a series of configuration about the messages destination, this is relative to each connector and its targeted environment, we will not focus on that here.

If you have a look below, you will find a list of variables: $(timestamp), $(pointName)... They are listed here to indicate you they exist and you can use them, they are system variables.

Each variable represents a piece of data you can use in the payload, their name talks for themselves. But maybe a couple of explantions would help:



Use the System Variables to personalize the payloads

The system variables can then be used in the payloads template. You have two payload

The payload is a JSON object where you define key/value pairs. On the left is the name of the key and on the right the system variable you set with a $

You can personalize it by adding a new key for example

{
  "pointId": "$(pointId)",
  "timestamp": "$(timestamp)",
  "value": "$(pointValue)",
  "status": "$(pointStatus)",
  "deviceName": "$(deviceName),
  "deviceId": "$(deviceId)"
}


Or to go further in the personalization.

{
  "version": 1,
  "timestamp": "$(timestamp)",
  "points": {
    "$(pointId)": {
      "present_value": $(pointValue)
    }
  }
}


Define your own custom variables

One of the slot available allows you to define custom variables using SFormat


You can then use it in the payload

{
  "pointId": "$(pointId)",
  "timestamp": "$(timestamp)",
  "value": "$(pointValue)",
  "status": "$(pointStatus)",
  "stationName": "$(stationName)"
}


To go further you can check the full example of the UDMI format being implemented with the Google IoT Core connector: Configure the connector to be compliant with UDMI.

Personalize History messages

You can send a command to retrieve historical values at any time, to personalize the payload being sent go to the advanced config and change the template.

you can use all or some predefined variables.