Difference between revisions of "Template:Networking rutos manual data to server"
(66 intermediate revisions by 10 users not shown) | |||
Line 1: | Line 1: | ||
− | <!-- Template uses {{{name}}}, {{{series}}}, {{{bluetooth | + | <!-- Template uses {{{name}}}, {{{series}}}, {{{bluetooth}}}--> |
− | {{Template: | + | {{Template:Networking_rutos_manual_fw_disclosure |
+ | | fw_version = {{{series}}}_R_00.02.03.1 | ||
| series = {{{series}}} | | series = {{{series}}} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
}} | }} | ||
− | + | ||
− | |||
__TOC__ | __TOC__ | ||
+ | |||
==Summary== | ==Summary== | ||
− | + | Data to Server function provides you with the possibility to set up senders that transfer data collected from Modbus slaves {{#ifeq:{{{bluetooth}}}|1|or Bluetooth devices|}} to remote servers. | |
− | {{# | ||
− | | | ||
− | | | ||
− | | | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | {{Template:Networking_rutos_manual_basic_advanced_webui_disclaimer}} | |
− | + | ==Data senders== | |
− | |||
− | |||
− | |||
− | + | To add a new data sender, click the '''Add''' button: | |
− | + | [[File:Networking_rutx_manual_data_to_server_data_senders_v1.png|border|class=tlt-border]] | |
− | + | ===Configure data sender=== | |
− | |||
− | |||
− | |||
− | |||
---- | ---- | ||
− | |||
− | + | When you add a new data sender, you will be redirected to its configuration window. The figure below is an example of that window and the table below provides information on the fields that it contains: | |
− | + | [[File:Networking_rutx_manual_data_to_server_advanced_sender_settings_v1.png|border|class=tlt-border]] | |
− | |||
− | |||
− | |||
====General==== | ====General==== | ||
Line 65: | Line 32: | ||
<th>Value</th> | <th>Value</th> | ||
<th>Description</th> | <th>Description</th> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td>Enabled</td> | ||
+ | <td>off {{!}} on; default: '''off'''</td> | ||
+ | <td>Enables or disables data sender.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
Line 70: | Line 42: | ||
<td>string; default: <b>none</b></td> | <td>string; default: <b>none</b></td> | ||
<td>Name of the data sender. Used for easier data senders management purposes only (optional).</td> | <td>Name of the data sender. Used for easier data senders management purposes only (optional).</td> | ||
− | </tr> | + | </tr> |
+ | {{#ifeq:{{{bluetooth}}}|1| | ||
<tr> | <tr> | ||
− | <td> | + | <td>Data source</td> |
− | <td> | + | <td>Modbus data {{!}} Bluetooth data; default: '''Bluetooth data'''</td> |
− | |||
<td>Source of the data to be sent to server.</td> | <td>Source of the data to be sent to server.</td> | ||
</tr> | </tr> | ||
+ | |}} | ||
<tr> | <tr> | ||
− | <td> | + | <td>Protocol</td> |
− | <td> | + | <td>HTTP(S) {{!}} MQTT; default: '''HTTP(S)'''</td> |
− | + | <td>Protocol used for sending the data to server.</td> | |
</tr> | </tr> | ||
<tr> | <tr> | ||
− | <td> | + | <td>JSON format</td> |
− | <td>string; default: | + | <td>string; default: '''{"TS": "%t", "D": "%d", "data": %a}'''</td> |
− | <td> | + | {{#ifeq:{{{bluetooth}}}|1| |
− | + | <td>You can fully customize JSON segment.<br>Possible Modbus values: | |
− | + | * Date (Linux timestamp) - %t | |
− | + | * Date (Day/Month/Year Hour:Minute:Second) - %d | |
− | + | * Modbus slave ID - %i | |
− | + | * Modbus slave IP - %p | |
− | + | * Start register - %s | |
− | + | * Register data (JSON object) - %a | |
− | + | Possible Bluetooth values: | |
− | + | * Date (Linux timestamp) - %t | |
− | + | * Date (Day/Month/Year Hour:Minute:Second) - %d | |
+ | * Modbus slave ID - %i | ||
+ | * Modbus slave IP - %p | ||
+ | * Start register - %s | ||
+ | * Register data (JSON object) - %a | ||
+ | </td> | ||
+ | | <!-- not bluetooth --> | ||
+ | <td>You can fully customize JSON segment, possible values: | ||
+ | * Date (Linux timestamp) - %t | ||
+ | * Date (Day/Month/Year Hour:Minute:Second) - %d | ||
+ | * Modbus slave ID - %i | ||
+ | * Modbus slave IP - %p | ||
+ | * Start register - %s | ||
+ | * Register data (JSON object) - %a | ||
+ | </td> | ||
+ | }} | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td>Segment count</td> | <td>Segment count</td> | ||
− | <td>integer [1.. | + | <td>integer [1..10]; default: '''1'''</td> |
<td>Max segment count in one JSON string sent to server.</td> | <td>Max segment count in one JSON string sent to server.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
− | <td> | + | <td>URL/Host/Connection string</td> |
− | <td> | + | <td>string; default: <b>none</b></td> |
− | <td> | + | <td>URL for HTTP(S); Host for MQTT; Connection string for Azure MQTT.</td> |
</tr> | </tr> | ||
− | |||
<tr> | <tr> | ||
− | <td> | + | <td>Period</td> |
− | <td> | + | <td>integer [1..86400]; default: '''60'''</td> |
− | <td> | + | <td>Interval for sending the collected data to server (in seconds, 1-86400)</td> |
</tr> | </tr> | ||
<tr> | <tr> | ||
− | <td | + | <td>Data filtering</td> |
− | <td>All {{!}} <span style="color: | + | <td>All data {{!}} <span style="color:darkred">By slave ID</span> {{!}} <span style="color:blue">By slave IP</span>; default: '''All data'''</td> |
− | <td> | + | <td>Choose which data this sender will send to server.</td> |
</tr> | </tr> | ||
− | |||
− | |||
<tr> | <tr> | ||
− | <td><span style="color: | + | <td><span style="color:darkred">By slave ID:</span> Slave ID</td> |
− | + | <td>integer [1..255]; default: '''none'''</td> | |
− | <td> | + | <td>Data will be sent to server only from slave device with this modbus ID (1-255).</td> |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | <td> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
− | <td><span style="color:blue"> | + | <td><span style="color:blue">By slave IP:</span> Slave IP</td> |
− | + | <td>ip; default: '''none'''</td> | |
− | <td> | + | <td>Data will be sent to server from slave device with this IP address only (Modbus TCP slaves only).</td> |
− | |||
− | |||
− | |||
− | |||
− | |||
− | <td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
− | <td> | + | <td>Retry on fail</td> |
− | <td | + | <td>off {{!}} on; default: '''off'''</td> |
− | <td> | + | <td>In case of a failed attempt, retry to send the same data to server later (Retry until successful).</td> |
</tr> | </tr> | ||
− | + | </table> | |
− | + | ||
+ | |||
+ | ====Protocol HTTP(S)==== | ||
+ | <table class="nd-mantable"> | ||
<tr> | <tr> | ||
− | + | <th>Field</th> | |
− | < | + | <th>Value</th> |
− | + | <th>Description</th> | |
</tr> | </tr> | ||
<tr> | <tr> | ||
− | <td> | + | <td>Custom Header</td> |
− | <td> | + | <td>string; default: <b>none</b></td> |
− | + | <td>Allows to add custom headers to the HTTP requests.</td> | |
− | |||
− | |||
− | |||
− | |||
− | <td> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
− | + | <td>Use TLS</td> | |
− | + | <td>off | <span style="color:red">on</span>; default: '''off'''</td> | |
− | + | <td>Enables the use of TSL certificates.</td> | |
</tr> | </tr> | ||
<tr> | <tr> | ||
− | + | <td><span style="color:red">On:</span> TLS type</td> | |
− | + | <td>Certificate based; default: '''Certificate based'''</td> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | <td><span style="color: | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | <td>Certificate | ||
<td>Select type of TLS.</td> | <td>Select type of TLS.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
− | <td><span style="color: | + | <td><span style="color:red">On:</span> A File</td> |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<td>.ca file; default: <b>none</b></td> | <td>.ca file; default: <b>none</b></td> | ||
<td>'''Certificate authority''' is an entity that issues digital certificates. A digital certificate certifies the ownership of a public key by the named subject of the certificate.</td> | <td>'''Certificate authority''' is an entity that issues digital certificates. A digital certificate certifies the ownership of a public key by the named subject of the certificate.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
− | <td><span style="color: | + | <td><span style="color:red">On:</span> Client Certificate</td> |
<td>.crt file; default: <b>none</b></td> | <td>.crt file; default: <b>none</b></td> | ||
<td>Certificate file is a type of digital certificate that is used by client systems to make authenticated requests to a remote server. If client certificate is not needed, leave both client certificate and client key fields empty.</td> | <td>Certificate file is a type of digital certificate that is used by client systems to make authenticated requests to a remote server. If client certificate is not needed, leave both client certificate and client key fields empty.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
− | <td><span style="color: | + | <td><span style="color:red">On:</span> Private Key</td> |
<td>.key file; default: <b>none</b></td> | <td>.key file; default: <b>none</b></td> | ||
<td>File containing private key for this client. This file needs to be not encrypted.</td> | <td>File containing private key for this client. This file needs to be not encrypted.</td> | ||
</tr> | </tr> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
</table> | </table> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | ====Protocol MQTT==== | ||
<table class="nd-mantable"> | <table class="nd-mantable"> | ||
<tr> | <tr> | ||
Line 283: | Line 171: | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
− | + | <td>Port</td> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | <td | ||
<td>integer [0..65535]; default: <b>1883</b></td> | <td>integer [0..65535]; default: <b>1883</b></td> | ||
<td>Port number for connecting to MQTT.</td> | <td>Port number for connecting to MQTT.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
− | <td | + | <td>Keepalive</td> |
<td>integer [1..640]; default: <b>60</b></td> | <td>integer [1..640]; default: <b>60</b></td> | ||
<td>MQTT Keepalive period in seconds.</td> | <td>MQTT Keepalive period in seconds.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
− | <td | + | <td>Topic</td> |
<td>string; default: <b>none</b></td> | <td>string; default: <b>none</b></td> | ||
<td>MQTT topic to be used for publishing the data.</td> | <td>MQTT topic to be used for publishing the data.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
− | <td | + | <td>QoS</td> |
− | |||
− | |||
− | |||
− | |||
− | |||
<td>integer [0..2]; default: <b>0</b></td> | <td>integer [0..2]; default: <b>0</b></td> | ||
<td>MQTT Quality of Service. Allowed values: | <td>MQTT Quality of Service. Allowed values: | ||
Line 383: | Line 192: | ||
* 1 - when we want the message to arrive at least once but don't care if it arrives twice (or more), | * 1 - when we want the message to arrive at least once but don't care if it arrives twice (or more), | ||
* 2 - when we want the message to arrive exactly once. A higher QoS value means a slower transfer.</td> | * 2 - when we want the message to arrive exactly once. A higher QoS value means a slower transfer.</td> | ||
− | </tr> | + | </tr> |
<tr> | <tr> | ||
− | <td> | + | <td>Use TLS</td> |
− | <td>off | + | <td>off | <span style="color:red">on</span>; default: '''off'''</td> |
− | <td>Enables the use of | + | <td>Enables the use of TSL certificates.</td> |
− | </tr> | + | </tr> |
<tr> | <tr> | ||
− | <td> | + | <td><span style="color:red">On:</span> TLS type</td> |
− | + | <td><span style="color:chocolate">Certificate based</span> {{!}} <span style="color:darkred">Pre-shared key based</span>; default: '''Certificate based'''</td> | |
− | <td> | + | <td>Select type of TLS.</td> |
− | |||
− | |||
− | |||
− | |||
− | <td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
− | <td><span style="color: | + | <td><span style="color:chocolate">Certificate based:</span> CA File</td> |
<td>.ca file; default: <b>none</b></td> | <td>.ca file; default: <b>none</b></td> | ||
<td>'''Certificate authority''' is an entity that issues digital certificates. A digital certificate certifies the ownership of a public key by the named subject of the certificate.</td> | <td>'''Certificate authority''' is an entity that issues digital certificates. A digital certificate certifies the ownership of a public key by the named subject of the certificate.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
− | <td><span style="color: | + | <td><span style="color:chocolate">Certificate based:</span> Client Certificate</td> |
<td>.crt file; default: <b>none</b></td> | <td>.crt file; default: <b>none</b></td> | ||
<td>Certificate file is a type of digital certificate that is used by client systems to make authenticated requests to a remote server. If client certificate is not needed, leave both client certificate and client key fields empty.</td> | <td>Certificate file is a type of digital certificate that is used by client systems to make authenticated requests to a remote server. If client certificate is not needed, leave both client certificate and client key fields empty.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
− | <td><span style="color: | + | <td><span style="color:chocolate">Certificate based:</span> Private Key</td> |
<td>.key file; default: <b>none</b></td> | <td>.key file; default: <b>none</b></td> | ||
<td>File containing private key for this client. This file needs to be not encrypted.</td> | <td>File containing private key for this client. This file needs to be not encrypted.</td> | ||
− | </tr> | + | </tr> |
+ | <tr> | ||
+ | <td><span style="color:darkred">Pre-shared key based:</span> Pre-Shared-Key</td> | ||
+ | <td>string; default: <b>none</b></td> | ||
+ | <td>The pre-shared-key in hex format with no leading "0x".</td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td><span style="color:darkred">Pre-shared key based:</span> Identity</td> | ||
+ | <td>string; default: <b>none</b></td> | ||
+ | <td>The identity of this client. May be used as the username depending on the server settings.</td> | ||
+ | </tr> | ||
<tr> | <tr> | ||
− | <td>Use | + | <td>Use Credentials</td> |
− | <td>off | + | <td>off | <span style="color:darkgreen">on</span>; default: '''off'''</td> |
<td>Enables use of username and password for authentication.</td> | <td>Enables use of username and password for authentication.</td> | ||
</tr> | </tr> | ||
Line 428: | Line 242: | ||
<td>string; default: <b>none</b></td> | <td>string; default: <b>none</b></td> | ||
<td>Password used in authentication.</td> | <td>Password used in authentication.</td> | ||
− | </tr> | + | </tr> |
− | |||
</table> | </table> | ||
+ | |||
+ | <b>Note</b>: these tables have coloring schemes to indicate which fields can be seen with different configuration. | ||
[[Category:{{{name}}} Services section]] | [[Category:{{{name}}} Services section]] |
Revision as of 11:32, 18 May 2020
Template:Networking rutos manual fw disclosure
Summary
Data to Server function provides you with the possibility to set up senders that transfer data collected from Modbus slaves to remote servers.
If you're having trouble finding this page or some of the parameters described here on your device's WebUI, you should turn on "Advanced WebUI" mode. You can do that by clicking the "Advanced" button, located at the top of the WebUI.
Data senders
To add a new data sender, click the Add button:
File:Networking rutx manual data to server data senders v1.png
Configure data sender
When you add a new data sender, you will be redirected to its configuration window. The figure below is an example of that window and the table below provides information on the fields that it contains:
File:Networking rutx manual data to server advanced sender settings v1.png
General
Field | Value | Description |
---|---|---|
Enabled | off | on; default: off | Enables or disables data sender. |
Name | string; default: none | Name of the data sender. Used for easier data senders management purposes only (optional). |
Protocol | HTTP(S) | MQTT; default: HTTP(S) | Protocol used for sending the data to server. |
JSON format | string; default: {"TS": "%t", "D": "%d", "data": %a} | You can fully customize JSON segment, possible values:
|
Segment count | integer [1..10]; default: 1 | Max segment count in one JSON string sent to server. |
URL/Host/Connection string | string; default: none | URL for HTTP(S); Host for MQTT; Connection string for Azure MQTT. |
Period | integer [1..86400]; default: 60 | Interval for sending the collected data to server (in seconds, 1-86400) |
Data filtering | All data | By slave ID | By slave IP; default: All data | Choose which data this sender will send to server. |
By slave ID: Slave ID | integer [1..255]; default: none | Data will be sent to server only from slave device with this modbus ID (1-255). |
By slave IP: Slave IP | ip; default: none | Data will be sent to server from slave device with this IP address only (Modbus TCP slaves only). |
Retry on fail | off | on; default: off | In case of a failed attempt, retry to send the same data to server later (Retry until successful). |
Protocol HTTP(S)
Field | Value | Description |
---|---|---|
Custom Header | string; default: none | Allows to add custom headers to the HTTP requests. |
Use TLS | off | on; default: off | Enables the use of TSL certificates. |
On: TLS type | Certificate based; default: Certificate based | Select type of TLS. |
On: A File | .ca file; default: none | Certificate authority is an entity that issues digital certificates. A digital certificate certifies the ownership of a public key by the named subject of the certificate. |
On: Client Certificate | .crt file; default: none | Certificate file is a type of digital certificate that is used by client systems to make authenticated requests to a remote server. If client certificate is not needed, leave both client certificate and client key fields empty. |
On: Private Key | .key file; default: none | File containing private key for this client. This file needs to be not encrypted. |
Protocol MQTT
Field | Value | Description |
---|---|---|
Port | integer [0..65535]; default: 1883 | Port number for connecting to MQTT. |
Keepalive | integer [1..640]; default: 60 | MQTT Keepalive period in seconds. |
Topic | string; default: none | MQTT topic to be used for publishing the data. |
QoS | integer [0..2]; default: 0 | MQTT Quality of Service. Allowed values:
|
Use TLS | off | on; default: off | Enables the use of TSL certificates. |
On: TLS type | Certificate based | Pre-shared key based; default: Certificate based | Select type of TLS. |
Certificate based: CA File | .ca file; default: none | Certificate authority is an entity that issues digital certificates. A digital certificate certifies the ownership of a public key by the named subject of the certificate. |
Certificate based: Client Certificate | .crt file; default: none | Certificate file is a type of digital certificate that is used by client systems to make authenticated requests to a remote server. If client certificate is not needed, leave both client certificate and client key fields empty. |
Certificate based: Private Key | .key file; default: none | File containing private key for this client. This file needs to be not encrypted. |
Pre-shared key based: Pre-Shared-Key | string; default: none | The pre-shared-key in hex format with no leading "0x". |
Pre-shared key based: Identity | string; default: none | The identity of this client. May be used as the username depending on the server settings. |
Use Credentials | off | on; default: off | Enables use of username and password for authentication. |
On: Username | string; default: none | Username used in authentication. |
On: Password | string; default: none | Password used in authentication. |
Note: these tables have coloring schemes to indicate which fields can be seen with different configuration.
[[Category:{{{name}}} Services section]]