The Configuration page is used to display and manage the basic configuration of the receiver. It is divided into three boxes: Common configuration, Status and Endpoint type.

Configuration

The first box contains information about the sender, its database, and security.

Basic

Basic configuration is used to display and change the metadata of the module - the name and the description.

Common

In the common configuration, users can see the type of the module, its ID, host and port where the module is running. They can change the port by clicking on Edit. After applying the changes, the module will be started on the selected port. Please note that this port has to be available - not occupied by other module or another service, and opened in the firewall.

The port can be changed by domain administrator and IoT administrator in single-domain environment, and by domain administrator who is also global administrator in multi-domain environment.

For more information about each option, please see this page.



License

Administrators can edit the license key directly from the IoT Console.

Valid to: date untill license for module is valid

Security settings

Additionally, administrators can change the security settings:

  • Enable or disable authentication
  • Enable or disable SSL/TLS
  • Enable or disable merging of users on startup

This functionality is available to domain administrator and IoT administrator in single-domain environment, and to domain administrator who is also global administrator in multi-domain environment.

After enabling SSL/TLS via the IoT Console, it is necessary to create a new keystore, or modify the default keystore.js, and add the certificate. This has to be done to all modules where the SSL/TLS is enabled. You can learn more about adding SSL/TLS here.

Status

The Status box displays the status of the receiver.

The button Reload is used to reload the receiver after changes. The button Pause is used to temporarily suspend the receiver. When paused, the receiver won't process any new data. After clicking on Resume, the receiver will start working again.

The date and time of the last update can be found at the bottom of this box.

Endpoint Type

The most important box allows the user to change the endpoint settings of the receiver. There are five different endpoint types:

  • HTTP POST Consume
  • MQTT Subscribe
  • MQTT Broker
  • UDP Server
  • WebSocket Client
  • MC TCP Client
  • MC serial Client
  • JMS Subscribe
  • RTSP Client
  • Kafka Consumer
  • Custom

Each endpoint type is defined by a set of parameters.


Additionally, the user can also see the actual status of the endpoint - whether it was correctly started, connected to the supporting service (e.g. MQTT broker) etc.


HTTP POST Consume

This endpoint type is used when the devices (sensors) are sending the data via standard HTTP method POST by using TCP/IP connection. Both HTTP an HTTPS are supported.


Following parameters are used by this endpoint type:

ParameterDescription
Device ID field

The name of the element which contains the unique identification of the device (sensor).

In case the field is not located on the first level, it is possible to specify the path (e.g. device.sensorId ).

Receiver Input ModeSingle or Bulk. For Single, each message contains exactly one set (row) of data. For Bulk, the message can contain more sets (rows).

When enabled, a device ID specified in field will be assigned to all data sent to this receiver.

This allows processing data from devices that are unable to specify the device ID by themselves.

If the received data contains the device ID, it will be overridden.

Path to data element

Specifies "data" element path in BULK mode.

Example: root.data (for XML)

Message Content TypeDefines in which format will be the data sent to the receiver. For more information, see the chapter below.
Body limitThe maximum size of the body of the message (in bytes)
Expose DataFlag indicating if endpoints GET /data and DELETE /data should be exposed

When sending the data to the receiver, make sure that you include the endpoint /data in the target URL (http://URLofReceiver/data).

MQTT Subscribe

MQTT Subscribe can be used to subscribe to an MQTT broker. This type of receiver automatically collects all data, which are published with the selected topic.

Following parameters are used by this endpoint type:

ParameterDescription
HostURL or IP address of the MQTT Broker
PortPort of the MQTT Broker
Message Content TypeDefines in which format will be the data sent to the receiver. For more information, see the chapter below.
TopicTopic to which should the receiver subscribe
QOS

Quality of Service

  • At Most Once (0)
  • At Least Once (1)
  • Exactly Once (2)
  • Failure
Device ID field

The name of the element which contains the unique identification of the device (sensor).

In case the field is not located on the first level, it is possible to specify the path (e.g. device.sensorId).

Force Device ID

When enabled, a device ID specified in field will be assigned to all data sent to this receiver.

This allows processing data from devices that are unable to specify the device ID by themselves.

If the received data contains the device ID, it will be overridden.

Receiver Input ModeSingle or Bulk. For Single, each message contains exactly one set (row) of data. For Bulk, the message can contain more sets (rows).
Body limitThe maximum size of the body of the message (in bytes)
Expose dataFlag indicating if endpoints GET /data and DELETE /data should be exposed

MQTT Broker

By using this setting, an MQTT Broker will be launched on a specified port. Devices (sensors) can then subscribe to this Broker, which receive the data and process them.

Following parameters are used by this endpoint type:

ParameterDescription
Host

URL or IP address of this MQTT Broker

In cases, when the external IP does not match the actual IP (such as AWS instances), it might be necessary to use IP 0.0.0.0

PortThe port on which the MQTT Broker will be launched. It has to be different than the port of the receiver. The port of the receiver will be used for the management and the port of the MQTT Broker will be used for the data connection.
Message Content TypeDefines in which format will be the data sent to the receiver. For more information, see the chapter below.
Device ID field

The name of the element which contains the unique identification of the device (sensor).

In case the field is not located on the first level, it is possible to specify the path (e.g. device.sensorId ).

Force Device ID

When enabled, a device ID specified in field will be assigned to all data sent to this receiver.

This allows processing data from devices that are unable to specify the device ID by themselves.

If the received data contains the device ID, it will be overridden.
Receiver Input ModeSingle or Bulk. For Single, each message contains exactly one set (row) of data. For Bulk, the message can contain more sets (rows).
Body limitThe maximum size of the body of the message (in bytes)
Expose dataFlag indicating if endpoints GET /data and DELETE /data should be exposed


UDP Server

This type of endpoint allows the user to set up a UDP Server on a specified port. Devices can connect to this server and send messages.

ParameterDescription
HostURL or IP address of this UDP Server
PortThe port on which the UDP Server will be launched. It is recommended to use a different port than the port of the receiver. In that case, the port of the receiver will be used for the management and the port of the UDP Server will be used for the data connection.
Message Content TypeDefines in which format will be the data sent to the receiver. For more information, see the chapter below.
Device ID field

The name of the element which contains the unique identification of the device (sensor).

In case the field is not located on the first level, it is possible to specify the path (e.g. device.sensorId).

Force Device ID

When enabled, a device ID specified in field will be assigned to all data sent to this receiver.

This allows processing data from devices that are unable to specify the device ID by themselves.

If the received data contains the device ID, it will be overridden.
Receiver Input ModeSingle or Bulk. For Single, each message contains exactly one set (row) of data. For Bulk, the message can contain more sets (rows).
Body limitThe maximum size of the body of the message (in bytes)
Expose dataFlag indicating if endpoints GET /data and DELETE /data should be exposed

WebSocket Client

By using the endpoint type, users can connect to a WebSocket server, which is publishing the messages.

ParameterDescription
HostURL or IP address of the WebSocket Server
PortPort of the WebSocket Server
Relative path to the endpoint published by the WebSocket Server
When enabled, the client will try to connect via wss:// instead of ws://
Defines in which format will be the data sent to the receiver. For more information, see the chapter below.

The name of the element which contains the unique identification of the device (sensor).

In case the field is not located on the first level, it is possible to specify the path (e.g. device.sensorId).

Force Device ID

When enabled, a device ID specified in field will be assigned to all data sent to this receiver.

This allows processing data from devices that are unable to specify the device ID by themselves.

If the received data contains the device ID, it will be overridden.
Single or Bulk. For Single, each message contains exactly one set (row) of data. For Bulk, the message can contain more sets (rows).
The maximum size of the body of the message (in bytes)
Flag indicating if endpoints GET /data and DELETE /data should be exposed

MC TCP Client

By using the endpoint type, users can connect to a PLC device as MC TCP Client.

ParameterDescription
HostURL or IP address of the PLC device
PortPort of the PLC device
Request interval (ms)Interval of the request (in milliseconds)
Device nameName of the device
Minimum device number
Maximum device number
Hexadecimal InputEnables or disables the hexadecimal input
Switches between ASCII and BINARY mode

Sets the address type.

ASCII mode:

  • hexadecimal
  • decimal
  • decimal 1, 2
  • decimal 4, 5, 9

Binary mode:

  • Binary
  • Binary 1,2,4,5,9
Data sizeSwitches between Bit and Word
Force Device ID

When enabled, a device ID specified in field will be assigned to all data sent to this receiver.

This allows processing data from devices that are unable to specify the device ID by themselves.

If the received data contains the device ID, it will be overridden.
Flag indicating if endpoints GET /data and DELETE /data should be exposed

MC serial Client

By using the endpoint type, users can connect to a PLC device as MC serial Client.

ParameterDescription
COM PortCOM Port of the PLC device
Baud rate
ParitySets the parity type (none, even, odd)
Stop bits
Data length
Sets the flow control (none, RTS/CTS, Xon/Xoff)
Request interval (ms)Interval of the request (in milliseconds)
Device nameName of the device
Minimum device number
Maximum device number
Hexadecimal InputEnables or disables the hexadecimal input
Switches between ASCII and BINARY mode

Sets the address type.

ASCII mode:

  • Standard
  • Special (1,2,3,14)

Binary mode:

  • Standard
  • Special (1,2,3,14)
Data sizeSwitches between Bit and Word
Force Device ID

When enabled, a device ID specified in field will be assigned to all data sent to this receiver.

This allows processing data from devices that are unable to specify the device ID by themselves.

If the received data contains the device ID, it will be overridden.
Flag indicating if endpoints GET /data and DELETE /data should be exposed

JMS Subscribe

This type of receiver automatically collects all data, which are published with the selected topic.

Following parameters are used by this endpoint type:

ParameterDescription
HostURL or IP address of the MQTT Broker
PortPort of the MQTT Broker
Message Content TypeDefines in which format will be the data sent to the receiver. For more information, see the chapter below.
TopicTopic to which should the receiver subscribe
UsernameUsername used for authentication
PasswordPassword used for authentication
Device ID field

The name of the element which contains the unique identification of the device (sensor).

In case the field is not located on the first level, it is possible to specify the path (e.g. device.sensorId).

Force Device ID

When enabled, a device ID specified in field will be assigned to all data sent to this receiver.

This allows processing data from devices that are unable to specify the device ID by themselves.

If the received data contains the device ID, it will be overridden.

Receiver Input ModeSingle or Bulk. For Single, each message contains exactly one set (row) of data. For Bulk, the message can contain more sets (rows).
Body limitThe maximum size of the body of the message (in bytes)
Expose dataFlag indicating if endpoints GET /data and DELETE /data should be exposed

RTSP Client

By using the endpoint type, users can connect to rtsp streams and can output images in defined interval.

For this endpoint to work, user need to download ffmpeg application. It can be downloaded here

Following parameters are used by this endpoint type:

ParameterDescription
Path to FFMpeg binaryYou need to provide address for external ffmpeg application. e.g. "c:\temp\ffmpeg\bin\ffmpeg.exe" or linux "/home/belladati/ffmpeg-n5.0-latest-linux64-gpl-5.0/bin/ffmpeg"
Capture frequency [seconds]You will define time period in which will images be captured.
Image height (optional)Set output image height. If not set, same diameter as stream has will be used.
Create folder for each stream (optional)If multiple streams are defined, user can store each stream in its folder. Folder name will be taken from stream name
Store to filesystem (optional)This will set, that output pictures will be stored on filesystem
Filesystem pathIf Store to filesystem is set path to output file needs to set
Store to FTP (optional)This will define, that output pictures will be stored on FTP
HostnameIf Store to FTP is set, hostname of FTP server needs to be set
PortIf Store to FTP is set, port of FTP server needs to be set
Username (optional)If Store to FTP is set, username for FTP server can to be set
Password (optional)If Store to FTP is set, password for FTP server can to be set
FTP directoryIf Store to FTP is set, directory of FTP server needs to be set

To add new Video Stream RTSP Client endpoint must be defined. New option will appear. Click Add to add one new stream.

You need to set name of your stream and its address and Save settings. You can add multiple streams for one receiver

AudioML

By using the endpoint type, users can connect to audio stream or audio file and analyze it using Fast Fourier Transformation. You can determine audio vibrations. You do not need to run another FFT transformation on Sender. Data are already transformated on receiver.

For this endpoint to work, user need to download ffmpeg application. It can be downloaded here

Following parameters are used by this endpoint type:

ParameterDescription
Path to FFMpeg binaryYou need to provide address for external ffmpeg application. e.g. "c:\temp\ffmpeg\bin\ffmpeg.exe" or linux "/home/belladati/ffmpeg-n5.0-latest-linux64-gpl-5.0/bin/ffmpeg"
Device ID Field

The name of the element which contains the unique identification of the device (sensor).

In case the field is not located on the first level, it is possible to specify the path (e.g. device.sensorId ).

Force Device ID

When enabled, a device ID specified in field will be assigned to all data sent to this receiver.

This allows processing data from devices that are unable to specify the device ID by themselves.

If the received data contains the device ID, it will be overridden.
Path to data element

Specifies "data" element path in BULK mode.

Example: root.data (for XML)

Audio Stream URLDefine address of stream or audio file
FFT PointsThe amout of points used in Fast Fourier Transformations
Filesystem pathIf Store to filesystem is set path to output file needs to set

Kafka Consumer

By using this setting, an Kafka Consumer will be launched on a specified port. Devices (sensors) can then subscribe to this consumer, which receive the data and process them.

Following parameters are used by this endpoint type:

ParameterDescription

URL or IP address and port of this Kafka Broker

In cases, when the external IP does not match the actual IP (such as AWS instances), it might be necessary to use IP 0.0.0.0

TopicWhat topic is listening on
Message Content TypeDefines in which format will be the data sent to the receiver. For more information, see the chapter below.
Device ID field

The name of the element which contains the unique identification of the device (sensor).

In case the field is not located on the first level, it is possible to specify the path (e.g. device.sensorId ).

Force Device ID

When enabled, a device ID specified in field will be assigned to all data sent to this receiver.

This allows processing data from devices that are unable to specify the device ID by themselves.

If the received data contains the device ID, it will be overridden.
Receiver Input ModeSingle or Bulk. For Single, each message contains exactly one set (row) of data. For Bulk, the message can contain more sets (rows).
Body limitThe maximum size of the body of the message (in bytes)
Expose dataFlag indicating if endpoints GET /data and DELETE /data should be exposed


Custom

Custom endpoint type allows the users to provide own endpoint type implementation.

Message Content Types

The receiver can accept messages in various formats. Currently, there are four different options available:

  • JSON
  • XML
  • CSV
  • Binary Q15 (Little-Endian)
  • Vibration sensor

CSV

For CSV, it is possible to specify Values separator, Device ID column index (default 0) and Encoding (default UTF-8).

For Bulk mode, two additional parameters are available: Row length and Row separator.

  • Row separator - defines the end of a row, EOL (\n) by default.
  • Row length - if defined, row separator is ignored and row array is splitted into subarrays with length defined by this parameter.

When the CSV is message is accepted by the receiver, it is converted to a JSON with following structure:

Source CSV message

Error rendering macro 'code': Invalid value specified for parameter 'com.atlassian.confluence.ext.code.render.InvalidValueException'
F4-B8-5E-3D-92-TEST97,1551884028,54546561,153


Result in JSON

Error rendering macro 'code': Invalid value specified for parameter 'com.atlassian.confluence.ext.code.render.InvalidValueException'
{"sensorId":"F4-B8-5E-3D-92-TEST97","value1":"F4-B8-5E-3D-92-TEST97","value2":"1551884028","value3":"54546561","value4":"153"}

This allows the user to work with the values on both receiver and sender (by using e.g. the value2 for message rules, action rules etc.).

Binary Q15 (Little-Endian)

Receivers using this content type accept data in binary form.

Sample message

Error rendering macro 'code': Invalid value specified for parameter 'com.atlassian.confluence.ext.code.render.InvalidValueException'
01001101,01010001,01010100,1010100,01000010,01101111,01111000,01001101,01010001,01010100,1010100,01000010,01101111,01111000,01101111,01111000

Result in JSON

Error rendering macro 'code': Invalid value specified for parameter 'com.atlassian.confluence.ext.code.render.InvalidValueException'
{ch.A.raw: 20813,
ch.A.hex: "514d",
ch.A.dec: 0.635162353515625,
ch.B.raw: 21588,
ch.B.hex: "5454",
ch.B.dec: 0.6588134765625,
ch.C.raw: 28482,
ch.C.hex: "6f42",
ch.C.dec: 0.86920166015625,
ch.D.raw: 19832,
ch.D.hex: "4d78",
ch.D.dec: 0.605224609375,
ch.E.raw: 21585,
ch.E.hex: "5451",
ch.E.dec: 0.658721923828125,
ch.F.raw: 16980,
ch.F.hex: "4254",
ch.F.dec: 0.5181884765625,
ch.G.raw: 30831,
ch.G.hex: "786f",
ch.G.dec: 0.940887451171875,
ch.H.raw: 30831,
ch.H.hex: "786f",
ch.H.dec: 0.940887451171875,

}

Number of records to auto-pause receiver

When this number of messages is reached in the local receiver database file, the receiver will automatically pause itself. When this number drop to quarter, the receiver will auto-resume.



  • No labels