Template:Networking rutos manual data to server: Difference between revisions
Kristijonasb (talk | contribs) No edit summary |
No edit summary |
||
| (66 intermediate revisions by 5 users not shown) | |||
| Line 1: | Line 1: | ||
<!-- Template uses {{{name}}}, {{{series}}}, {{{bluetooth}}}, {{{wifi}}}--> | <!-- Template uses {{{name}}}, {{{series}}}, {{{bluetooth}}}, {{{wifi}}}--> | ||
{{Template: | {{Template: Networking_device_manual_fw_disclosure | ||
| fw_version ={{Template: | | series = {{{series}}} | ||
| name = {{{name}}} | |||
| fw_version ={{Template: Networking_device_manual_latest_fw | |||
| series = {{{series}}} | | series = {{{series}}} | ||
| name = {{{name}}} | | name = {{{name}}} | ||
}} | }} | ||
}} | }} | ||
{{#ifeq: {{{series}}} | RUT9 |<br><i><b>Note</b>: <b>[[{{{name}}} Modbus (legacy WebUI)#Modbus_Data_to_Server|click here]]</b> for the old style WebUI (FW version {{Template: | {{#ifeq: {{{series}}} | RUT9 |<br><i><b>Note</b>: <b>[[{{{name}}} Modbus (legacy WebUI)#Modbus_Data_to_Server|click here]]</b> for the old style WebUI (FW version {{Template: Networking_device_manual_latest_fw | series = RUT9XX}} and earlier) user manual page.</i>|}} | ||
{{#ifeq: {{{series}}} | RUT2 |<br><i><b>Note</b>: <b>[[{{{name}}} Modbus (legacy WebUI)#Modbus_Data_to_Server|click here]]</b> for the old style WebUI (FW version {{Template: | {{#ifeq: {{{series}}} | RUT2 |<br><i><b>Note</b>: <b>[[{{{name}}} Modbus (legacy WebUI)#Modbus_Data_to_Server|click here]]</b> for the old style WebUI (FW version {{Template: Networking_device_manual_latest_fw | series = RUT2XX}} and earlier) user manual page.</i>|}} | ||
__TOC__ | __TOC__ | ||
==Summary== | ==Summary== | ||
The <b>Data to Server</b> feature provides you with the possibility to set up data senders that collect data from various sources and periodically send it to remote servers. | The <b>Data to Server</b> feature provides you with the possibility to set up data senders that collect data from various sources and periodically send it to remote servers. | ||
{{#switch: {{{series}}} | {{#switch: {{{series}}} | RUTX | RUTM | RUTC | TCR1 | TRB1 | TRB2 | TRB2M | TRB5 | RUT2M | RUT2 | RUT30X | RUT36X | RUT9 | RUT9M | RUT14X | TAP100 | TAP200 = | #default = | ||
| RUTX | <u><b>Note:</b> On {{{name}}}, Data to Server is additional software that can be installed from the <b>System → [[{{{name}}} Package Manager|Package Manager]]</b> page.</u>}} | ||
| RUTM | |||
| TRB1 | |||
| TRB2 | |||
| RUT9|RUT9M = | |||
| #default = | |||
<u><b> | |||
Note:</b> On {{{name}}}, Data to Server is additional software that can be installed from the <b>System → [[{{{name}}} Package Manager|Package Manager]]</b> page. | |||
</u> | |||
}} | |||
==Data Senders== | ==Data Senders== | ||
A <b>Data Sender</b> is an instance that gathers and periodically sends collected data to a specified server. The Data Senders list is empty by default so, in order to begin configuration you must add a new | A <b>Data Sender</b> is an instance that gathers and periodically sends collected data to a specified server. The Data Senders list is empty by default so, in order to begin configuration you must add a new collection first. To add a new collection, click the 'Add' button. | ||
[[File: | [[File:Networking_rutos_manual_data_to_server_data_senders_add_button_v4.png|border|class=tlt-border]] | ||
After this you should be redirected to the newly added data | After this you should be redirected to the newly added data configuration page. | ||
=== | ===Data configuration=== | ||
---- | ---- | ||
Refer to the table below for descriptions on data | Refer to the table below for descriptions on data configuration fields. | ||
<b>Note</b>: these tables have coloring schemes to indicate which fields can be seen with different configuration. | <b>Note</b>: these tables have coloring schemes to indicate which fields can be seen with different configuration. | ||
[[File: | [[File:Networking rutos manual data to server data configuration_v1.png|border|class=tlt-border]] | ||
<table class="nd-mantable"> | <table class="nd-mantable"> | ||
| Line 53: | Line 40: | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td> | <td>Name</td> | ||
<td> | <td>string; default: <b>input1</b></td> | ||
<td> | <td>Name of data input.</td> | ||
</tr> | |||
<tr> | |||
<td>Type</td> | |||
<td><span>Base {{!}} {{#ifeq:{{{bluetooth}}}|1|<span style="color:green">Bluetooth</span> {{!}}|}} {{#ifeq:{{{mobile}}}|1| GSM {{!}}|}} {{#ifeq:{{{impulse_counter}}}|1|<span style="color:coral">Impulse counter</span> {{!}}|}} <span style="color:olive">Lua script</span> {{!}} {{#ifeq:{{{m-bus}}}|1|<span style="color:midnightblue ">M-Bus</span>{{!}}|}} {{#ifeq:{{{mobile_usage}}}|1|<span style="color:blue">Mobile usage</span>{{!}}|}} {{#ifeq:{{{MNF}}}|1| MNF info {{!}}|}} {{#ifeq:{{{Modbus}}}|1|<span style="color:red">Modbus</span><span class="asterisk">*</span> {{!}} <span style="color:grey">Modbus Alarms</span> {{!}}|}} {{#ifeq:{{{wifi}}}|1|<span style="color:purple">Wifi scanner</span><span class="asterisk">*</span> {{!}}|}} {{#ifeq:{{{DNP3}}}|1|<span style="color:brown">DNP3</span><span class="asterisk">*</span> {{!}}|}} {{#ifeq:{{{MQTT}}}|1|<span style="color:orange">MQTT</span> {{!}}|}} {{#ifeq:{{{OPC}}}|1|<span style="color:lightblue">OPC UA</span><span class="asterisk">*</span> {{!}}|}} {{#ifeq:{{{gps}}}|1|<span style="color:Black">GPS</span> {{!}}|}} {{#ifeq:{{{DLMS}}}|1|<span style="color:hotpink">DLMS</span><span class="asterisk">*</span>|}} {{#ifeq:{{{io}}}|1|{{!}} <span style="color:slateblue">Input/Output</span>|}}; default: <b>Base</b></span></td> | |||
<td>Data input type.</td> | |||
</tr> | |||
<tr> | |||
<td>Format type</td> | |||
<td>Json {{!}} <span style="color:limegreen">Custom</span> {{!}} <span style="color:cadetblue">Lua script</span> (Some data input types may not work correctly with the provided Lua format example script. Review and adapt the script as needed to ensure compatibility.); default: <b>Json</b></td> | |||
<td>Arranges the format of the sent JSON segment.</td> | |||
</tr> | |||
<tr> | |||
<td>Values</td> | |||
<td>list; default: <b>All values included</b></td> | |||
<td>Select values based on the data input type. If no values are selected, all values will be included.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td> | <td><span style="color:limegreen">Format string</span></td> | ||
<td>string; default: <b>none</b></td> | <td>string; default: <b>none</b></td> | ||
<td>Specifies custom format string.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color:limegreen">Empty value</span></td> | |||
<td>string; default: <b>N/A</b></td> | |||
<td>A string which will be placed if any value cannot be received.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td> | <td><span style="color:limegreen">Delimeter</span></td> | ||
<td> | <td>string (Maximum length of value is 1 bytes); default: <b>N/A</b></td> | ||
<td>Specifies delimiters for multiple data segments.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:cadetblue">Lua format example script</span></td> | |||
<td>-(interactive button)</td> | |||
<td>Download the Lua script.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td> | <td><span style="color:cadetblue">Lua format script</span></td> | ||
<td> | <td>-(interactive button)</td> | ||
<td> | <td>Upload the Lua script.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td>Segment count</td> | <td>Segment count</td> | ||
<td>integer [1.. | <td>integer [1..64]; default: <b>1</b></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>Send as object</td> | <td>Send as object</td> | ||
<td>off | <td>off {{!}} on; default: <b>off</b></td> | ||
<td>When turned on, sends JSON segment as object and not as an array element.</td> | <td>When turned on, sends JSON segment as object and not as an array element. | ||
<ul> | |||
<li><b>Object syntax</b> --> {input1:{}...}</li> | |||
<li><b>JSON Array of Objects syntax</b> --> {input1:<b>[</b>{},{}...<b>]</b>}</li> | |||
</ul> | |||
</td> | |||
</tr> | |||
{{#ifeq:{{{Modbus}}}|1| | |||
<tr> | |||
<td><span style="color:grey">Data filtering</span></td> | |||
<td>All {{!}} <span style="color:grey">Server ID</span> {{!}} <span style="color:grey">Alarm ID</span> {{!}} <span style="color:grey">Register number</span>; default: <b>All</b></td> | |||
<td>If Data type: <span style="color:grey">Modbus alarms data</span>. Choose which data this sender will send to server.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td> | <td><span style="color:red">Data filtering</span></td> | ||
<td> | <td>All {{!}} <span style="color:red">Server IP address</span> {{!}} <span style="color:red">Server ID</span> {{!}} <span style="color:red">Request name</span> ; default: <b>All</b></td> | ||
<td> | <td>If Data type: <span style="color:red">Modbus data</span>. Choose which data this sender will send to server.</td> | ||
</tr>|}} | |||
{{#ifeq:{{{m-bus}}}|1| | |||
<tr> | |||
<td><span style="color:midnightblue">Data filtering</span></td> | |||
<td>All {{!}} Name; default: <b>All</b></td> | |||
<td>If Data type: <span style="color:midnightblue">M-Bus</span>. Choose which data this sender will send to server.</td> | |||
</tr> | </tr> | ||
|}} | |||
<tr> | <tr> | ||
<td> | <td><span style="color:olive">Lua data example script</span></td> | ||
<td> | <td>-(interactive button)</td> | ||
<td> | <td>Download Lua data example script.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color: | <td><span style="color:olive">Lua script</span></td> | ||
<td> | <td>-(interactive button)</td> | ||
<td>If Data | <td>Upload Lua data script.</td> | ||
</tr> | |||
{{#ifeq:{{{io}}}|1| | |||
<tr> | |||
<td><span style="color:slateblue">I/O pin</span></td> | |||
<td>PIN list; default: <b>depends on the device</b></td> | |||
<td>I/O pin name.</td> | |||
</tr>|}} | |||
{{#ifeq:{{{impulse_counter}}}|1| | |||
<tr> | |||
<td><span style="color:coral">Data filtering</span></td> | |||
<td>All {{!}} Pin Name; default: <b>All</b></td> | |||
<td>If Data type: <span style="color:coral">Impulse counter</span>. Choose which data this sender will send to server.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color: | <td><span style="color:coral">Data filtering: Impulse counter pin</span></td> | ||
<td> | <td>list; default: <b>none</b></td> | ||
<td> | <td>Filter data by defined impulse counter pin.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color: | <td><span style="color:coral">Data filtering: Invert filter</span></td> | ||
<td> | <td>off {{!}} on; default: <b>off</b></td> | ||
<td> | <td>Inverts filter condition.</td> | ||
</tr>{{#ifeq:{{{bluetooth}}}|1| | </tr>|}} | ||
{{#ifeq:{{{bluetooth}}}|1| | |||
<tr> | <tr> | ||
<td><span style="color:green">Data filtering</span></td> | <td><span style="color:green">Data filtering</span></td> | ||
<td>All data < | <td>All {{!}} <span style="color:green">Device MAC address</span> {{!}} <span style="color:green">Device name</span>; default: <b>All</b></td> | ||
<td>If Data | <td>If Data type: <span style="color:green">Bluetooth</span>. Choose which data this sender will send to server.</td> | ||
</tr>|}} | |||
{{#ifeq:{{{wifi}}}|1| | |||
<tr> | |||
<td><span style="color:purple">Data filtering</span></td> | |||
<td>All {{!}} <span style="color:purple">Name</span> {{!}} <span style="color:purple">MAC address</span> {{!}} <span style="color:purple">Signal strength</span>; default: <b>All</b></td> | |||
<td>If Data type: <span style="color:purple">Wifi scanner</span>. Choose which data this sender will send to server.</td> | |||
</tr>|}} | |||
{{#ifeq:{{{mobile}}}|1| | |||
<tr> | |||
<td><span style="color:blue">Data period</span></td> | |||
<td>Day {{!}} Week {{!}} Month; default: <b>Day</b></td> | |||
<td>Choose for which time period to send info from.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:blue">Current</span></td> | |||
<td>off {{!}} on; default: <b>off</b></td> | |||
<td>Current data.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color: | <td><span style="color:blue">SIM card</span></td> | ||
<td> | <td>Select SIM card if device supports multiple SIM cards; default: <b>none</b></td> | ||
<td> | <td></td> | ||
</tr>|}} | |||
{{#ifeq: {{{DLMS}}}|1| | |||
<tr> | |||
<td><span style="color:hotpink">Data filtering</span></td> | |||
<td>All {{!}} <span style="color:hotpink">Name</span>; default: <b>All</b></td> | |||
<td>If Data type: <span style="color:hotpink">DLMS</span>. Choose which data this sender will send to server.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:hotpink">Invert filter</span></td> | |||
<td><span style="color:hotpink">off</span> {{!}} <span style="color:hotpink">on</span>; default: <b>off</b></td> | |||
<td>If Data type: <span style="color:hotpink">DLMS</span>. Inverts filter condition.</td> | |||
</tr>|}} | |||
{{#ifeq: {{{DNP3}}}|1| | |||
<tr> | |||
<td><span style="color:brown">Data filtering</span></td> | |||
<td>All {{!}} <span style="color:brown"> Address </span> {{!}} <span style="color:brown">IP</span>; default: <b>All</b></td> | |||
<td>If Data type: <span style="color:brown">DNP3</span>. Choose which data this sender will send to server.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color: | <td><span style="color:brown">Database</span></td> | ||
<td> | <td>RAM {{!}} Flash; default: <b>RAM</b></td> | ||
<td>Database location</td> | |||
</tr>|}} | |||
{{#ifeq:{{{OPC}}}|1| | |||
<tr> | |||
<td><span style="color:lightblue">Data filtering</span></td> | |||
<td>All {{!}} <span style="color:lightblue"> Name </span>; default: <b>All</b></td> | |||
<td>If Data type: <span style="color:lightblue">OPC UA</span>. Choose which data this sender will send to server.</td> | |||
</tr>|}} | </tr>|}} | ||
{{#ifeq:{{{MQTT}}}|1|<tr> | |||
<td><span style="color:orange">Server address</span></td> | |||
<td>Default: <b>empty</b></td> | |||
<td>Hostname or ip address of the broker to connect to.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:orange">Port</span></td> | |||
<td>integer [0..65535]; default: <b>1883</b></td> | |||
<td>Port number for connecting to MQTT.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:orange">Keepalive</span></td> | |||
<td>integer [1..640]; default: <b>60</b></td> | |||
<td>MQTT Keepalive period in seconds.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:orange">Topic</span></td> | |||
<td>string; default: <b>none</b></td> | |||
<td>MQTT topic to be used for publishing the data.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:orange">Client ID</span></td> | |||
<td>string; default: <b>none</b></td> | |||
<td>Client ID to send with the data. If empty, a random client ID will be generated</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:orange">QoS</span></td> | |||
<td>integer [0..2]; default: <b>0</b></td> | |||
<td>MQTT Quality of Service. Allowed values: | |||
* 0 - when we prefer that the message will not arrive at all rather than arrive twice, | |||
* 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> | |||
</tr> | |||
<tr> | |||
<td><span style="color:orange">Enable secure connection</span></td> | |||
<td>off {{!}} <span style="color:blue">on</span>; default: '''off'''</td> | |||
<td>Enables the use of TLS certificates.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:blue">On:</span> <span style="color:orange">TLS type</span></td> | |||
<td>Certificate based {{!}} Pre-shared key based; default: '''Certificate based'''</td> | |||
<td>Select type of TLS.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:orange">Certificate based: Allow insecure connection</span></td> | |||
<td>off {{!}} on; default: '''off'''</td> | |||
<td>Allow not verifying server authentication.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:orange">Certificate based: Certificate files from device</span></td> | |||
<td>off {{!}} on; default: '''off'''</td> | |||
<td>Specify where the certificates will be used from.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:orange">Certificate based: Certificate authority file</span></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> | |||
</tr> | |||
<tr> | |||
<td><span style="color:orange">Certificate based: Client certificate</span></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> | |||
</tr> | |||
<tr> | <tr> | ||
<td><span style="color:orange">Certificate based: Client private keyfile</span></td> | |||
<td>.key file; default: <b>none</b></td> | |||
<td> | <td>File containing private key for this client. This file needs to be not encrypted.</td> | ||
</tr> | |||
<tr> | |||
<td><span style="color:orange">Pre-shared key based: Pre-Shared-Key</span></td> | |||
<td>string; default: <b>none</b></td> | |||
<td>The pre-shared-key in hex format with no leading "0x".</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color: | <td><span style="color:orange">Pre-shared key based: Identity</span></td> | ||
<td> | <td>string; default: <b>none</b></td> | ||
<td> | <td>The identity of this client. May be used as the username depending on the server settings.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color: | <td><span style="color:orange">Username</span></td> | ||
<td> | <td>string; default: <b>none</b></td> | ||
<td> | <td>Username used in authentication.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td> | <td><span style="color:orange">Require password</span></td> | ||
<td>off | <td>on {{!}} off; default: <b>off</b></td> | ||
<td> | <td>Enables password for authentication.</td> | ||
</tr> | </tr> | ||
<tr> | |||
<td><span style="color:orange">Password</span></td> | |||
<td>string; default: <b>none</b></td> | |||
<td>Password used in authentication.</td> | |||
</tr>}} | |||
</table> | </table> | ||
<br> | <br> | ||
<span class="asterisk">*</span> This is additional software that can be installed from the <b>System → [[{{{name}}} Package Manager|Package Manager]]</b> page. | |||
===Collection configuration=== | |||
---- | |||
[[File:Networking rutos manual data to server collection configuration_v2.png|border|class=tlt-border]] | |||
<table class="nd-mantable"> | <table class="nd-mantable"> | ||
| Line 160: | Line 314: | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td> | <td>Enabled</td> | ||
<td>off {{!}} on; default: <b>on</b></td> | |||
<td>Enables data to server collection instance.</td> | |||
</tr> | |||
<tr> | |||
<td>Timer</td> | |||
<td><span style="color:blue">Period</span> {{!}} <span style="color:orange">Scheduler</span> {{!}} None; default: <b>Period</b></td> | |||
<td>Strategy for collecting/sending data to destination.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:blue">Period</span></td> | |||
<td>integer; default: <b>60</b></td> | |||
<td>Interval in seconds for collecting/sending data to destination.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:orange">Day time</span></td> | |||
<td>string; default: <b>none</b></td> | <td>string; default: <b>none</b></td> | ||
<td>Allows to | <td>Day time when action should be executed. Use '*' to indicate every hour or minute, (e.g., 12:15, *:15, 12:*, or *:*).</td> | ||
</tr> | |||
<tr> | |||
<td><span style="color:orange">Interval type</span></td> | |||
<td>Weekdays {{!}} Month days; default: <b>Weekdays</b></td> | |||
<td>Allows selecting between week and month days for instance intervals.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:orange">Weekdays</span></td> | |||
<td>list; default: <b>Every day is selected</b></td> | |||
<td>Weekdays, when data should be sent/collected. If nothing is selected, every day of the week will be included.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:orange">Month day</span></td> | |||
<td>list; default: <b>Every day is selected</b></td> | |||
<td>Month days, when data should be sent/collected. If nothing is selected, every day of the month will be included.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:orange">Month day: Force last day</span></td> | |||
<td>off {{!}} on; default: <b>off</b></td> | |||
<td>Forces intervals to accept last day of month as valid option if selected day doesn't exist in ongoing month.</td> | |||
</tr> | |||
<tr> | |||
<td>Retry</td> | |||
<td>off {{!}} <span style="color:olive">on</span>; default: <b>off</b></td> | |||
<td>In case of a failed attempt, retry to send the same data to destination later.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:olive">Retry count</span></td> | |||
<td>Default: <b>10</b></td> | |||
<td>Retry to send the same data N times </td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:olive">Timeout</span></td> | |||
<td>Default: <b>1</b></td> | |||
<td>Timeout in second between retry attempts</td> | |||
</tr> | |||
<tr> | |||
<td>Format type</td> | |||
<td>JSON {{!}} <span style="color:red">custom</span> {{!}} <span style="color:lightgreen">Lua script</span>; default: <b>JSON</b></td> | |||
<td>Data collection objects formatting.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td> | <td><span style="color:red">Format string</span></td> | ||
<td>Default: <b>Instance name</b></td> | |||
<td> | <td>Specifies custom format string</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color:red"> | <td><span style="color:red">Empty value </span></td> | ||
<td> | <td>Default: <b>N/A</b></td> | ||
<td> | <td>A string which will be placed if any value cannot be received</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color: | <td><span style="color:lightgreen">Lua format example script</span></td> | ||
<td> | <td>-(interactive button)</td> | ||
<td>Download the Lua script.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color:lightgreen">Lua format script</span></td> | |||
<td>-(interactive button)</td> | |||
<td> | <td>Upload the Lua script.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td>Encoder</td> | |||
<td>None {{!}} Base64; default: <b>None</b></td> | |||
<td> | <td>Encoder used for all sent data.</td> | ||
</tr> | </tr> | ||
</table> | </table> | ||
=== | ===Server configuration=== | ||
---- | |||
[[File:Networking rutos manual data to server server configuration.png|border|class=tlt-border]] | |||
<b>Note:</b> on some devices it is necessary to install an additional package to see additional server types [[{{{name}}}_Package_Downloads|Advanced data to server modules]]. | |||
<table class="nd-mantable"> | <table class="nd-mantable"> | ||
| Line 198: | Line 412: | ||
<th>Value</th> | <th>Value</th> | ||
<th>Description</th> | <th>Description</th> | ||
</tr> | |||
<tr> | |||
<td>Type</td> | |||
<td>HTTP {{#ifeq:{{{MQTT}}}|1|{{!}} <span style="color:red">MQTT</span>|}} {{!}} <span style="color:olive">Azure IoT Hub</span> (requires to install package from [[{{{name}}} Package Manager|Package Manager]]) {{!}} <span style="color:brown">Lua</span> {{!}} <span style="color:coral">SMTP</span> {{!}} <span style="color:DarkMagenta">Socket</span> {{!}} <span style="color:DarkSeaGreen">FTP</span> {{#ifeq:{{{mobile}}}|1|{{!}} <span style="color:GoldenRod">SMS</span>|}}; default: <b>HTTP</b></td> | |||
<td>Interval in seconds for collecting/sending data to destination.</td> | |||
</tr> | </tr> | ||
<tr> | |||
<td>Server address</td> | |||
<td>Default: <b>empty</b></td> | |||
<td>Hostname or IP address of the broker to connect to.</td> | |||
</tr> | |||
<tr> | |||
<td>HTTP headers</td> | |||
<td>Default: <b>empty</b></td> | |||
<td>Allows to add custom headers to the HTTP requests.</td> | |||
</tr> | |||
<tr> | |||
<td>Enable secure connection</td> | |||
<td>off {{!}} <span style="color:blue">on</span>; default: <b>off</b></td> | |||
<td>Enables the use of TLS certificates.</td> | |||
</tr> | |||
{{#ifeq:{{{MQTT}}}|1| | |||
<tr> | <tr> | ||
<td>Port</td> | <td><span style="color:red">Port</span></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>Keepalive</td> | <td><span style="color:red">Keepalive</span></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>Topic</td> | <td><span style="color:red">Topic</span></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>Client ID</td> | <td><span style="color:red">Client ID</span></td> | ||
<td>string; default: <b>none</b></td> | <td>string; default: <b>none</b></td> | ||
<td>Client ID to send with the data. If empty, a random client ID will be generated</td> | <td>Client ID to send with the data. If empty, a random client ID will be generated</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td>QoS</td> | <td><span style="color:red">QoS</span></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 226: | Line 461: | ||
* 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>|}}{{#ifeq:{{{MQTT}}}|1| | |||
<tr> | |||
<td><span style="color:red">TLS type</span></td> | |||
<td>Certificate based {{!}} <span style="color:teal">Pre-Shared-Key based</span>; default: '''Certificate based'''</td> | |||
<td>Choose TLS type.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:teal">Pre-Shared-Key</span></td> | |||
<td>hexadecimal string; default: '''none'''</td> | |||
<td>The pre-shared-key in hex format with no leading “0x”.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td> | <td><span style="color:teal">Identity</span></td> | ||
<td>string; default: '''none'''</td> | |||
<td> | <td>The identity of this client.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color:red"> | <td><span style="color:red">Allow insecure connection</span></td> | ||
<td>< | <td>off {{!}} on; default: '''off'''</td> | ||
<td> | <td>Allow not verifying server authentication.</td> | ||
</tr>|}} | |||
<tr> | |||
<td><span style="color:blue">Certificate files from device</span></td> | |||
<td>off {{!}} on; default: '''off'''</td> | |||
<td>Specify where the certificates will be used from.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color: | <td><span style="color:blue">Certificate authority file</span></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:blue">Client certificate</span></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:blue">Client private keyfile</span></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>{{#ifeq:{{{MQTT}}}|1| | |||
<tr> | |||
<td><span style="color:red">Use credentials</span></td> | |||
<td>off {{!}} <span style="color:darkgreen">on</span>; default: '''off'''</td> | |||
<td>Enables use of username and password for authentication.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:darkgreen">On:</span> Username</td> | |||
<td>string; default: <b>none</b></td> | |||
<td>Username used in authentication.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:darkgreen">On:</span> Password</td> | |||
<td>string; default: <b>none</b></td> | |||
<td>Password used in authentication.</td> | |||
</tr>|}} | |||
<tr> | |||
<td><span style="color:olive">Configuration type</span></td> | |||
<td>Unique Azure Iot Hub configuration {{!}} Existing Azure Iot Hub configuration; default: <b>Unique Azure Iot Hub configuration</b></td> | |||
<td></td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:olive">Configuration type</span></td> | |||
<td>Unique Azure Iot Hub configuration {{!}} Existing Azure Iot Hub configuration; default: <b>Unique Azure Iot Hub configuration</b></td> | |||
<td></td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:olive">Unique Azure Iot Hub configuration:</span> Connection type</td> | |||
<td><span style="color:blue">Shared Access Signature (SAS) key</span> {{!}} <span style="color:red">Device Provisioning Service (DPS)</span>; default: <b>Shared Access Signature (SAS) key</b></td> | |||
<td></td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:olive">Unique Azure Iot Hub configuration:</span> <span style="color:blue">Connection String</span></td> | |||
<td>string; default: <b>none</b></td> | |||
<td>Connection string based on primary key used in API calls which allows device to communicate with IoT Hub.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color: | <td><span style="color:olive">Unique Azure Iot Hub configuration:</span> <span style="color:red">ID Scope</span></td> | ||
<td>string; default: <b>none</b></td> | <td>string; default: <b>none</b></td> | ||
<td> | <td>Unique identifier that is assigned to an Azure IoT Hub during its creation and is used to uniquely identify the specific provisioning service the device will register through.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color: | <td><span style="color:olive">Unique Azure Iot Hub configuration:</span> <span style="color:red">Registration ID</span></td> | ||
<td>string; default: <b>none</b></td> | <td>string; default: <b>none</b></td> | ||
<td>The | <td>The registration ID is used to uniquely identify a device registration with the Device Provisioning Service. Registration ID is the X.509 certificate common name (CN) field of the individual device's certificate.</td> | ||
</tr> | |||
<tr> | |||
<td><span style="color:olive">Unique Azure Iot Hub configuration:</span> <span style="color:red">Global Device Endpoint</span></td> | |||
<td>string; default: <b>global.azure-devices-provisioning.net</b></td> | |||
<td>Destination for messages sent by IoT devices to the Azure IoT Hub (will default to global.azure-devices-provisioning.net if not set).</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:olive">Unique Azure Iot Hub configuration:</span> <span style="color:red">Attestation mechanism</span></td> | |||
<td>X.509 Certificates {{!}} Symmetric Key; default: <b>X.509 Certificates</b></td> | |||
<td>Method used to confirm a device's identity in Device Provisioning Service.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:olive">Unique Azure Iot Hub configuration:</span> <span style="color:red">X.509 Certificates: X.509 Certificate</span></td> | |||
<td>-(interactive) button; default: <b>none</b></td> | |||
<td>Upload the "leaf" certificate file.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td> | <td><span style="color:olive">Unique Azure Iot Hub configuration:</span> <span style="color:red">X.509 Certificates: X.509 Private Key</span></td> | ||
<td>-(interactive) button; default: <b>none</b></td> | |||
<td> | <td>Upload the "leaf" key file.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color: | <td><span style="color:olive">Unique Azure Iot Hub configuration:</span> <span style="color:red">Symmetric Key: Symmetric Key</span></td> | ||
<td>string; default: <b>none</b></td> | <td>string; default: <b>none</b></td> | ||
<td> | <td>The the derived device key from the DPS Primary Key.</td> | ||
</tr> | |||
<tr> | |||
<td><span style="color:brown">Lua data example script</span></td> | |||
<td>-(interractive button)</td> | |||
<td>Downloads an example of script.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:brown">Lua script</span></td> | |||
<td>-(interractive button)</td> | |||
<td>Path to the lua script.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:coral">Subject</span></td> | |||
<td>string; default:<b>none</b></td> | |||
<td>Subject of an email.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:coral">Recipient's email address</span></td> | |||
<td>A valid email address is accepted; default: <b>none</b></td> | |||
<td>Subject of an email.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:coral">Email account</span></td> | |||
<td>list; default: <b>none</b></td> | |||
<td>Sender's email configuration. Configure email account [[{{{name}}}_Administration#Recipients | here]].</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color: | <td><span style="color:DarkMagenta">Server address</span></td> | ||
<td>string; default: <b>none</b></td> | <td>string; default: <b>none</b></td> | ||
<td> | <td>Socket's server address.</td> | ||
</tr> | |||
<tr> | |||
<td><span style="color:DarkMagenta">Server port</span></td> | |||
<td>integer [1..65535]; default: <b>none</b></td> | |||
<td>Socket's server port.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:DarkMagenta">UDP</span></td> | |||
<td>off {{!}} on; default: <b>off</b></td> | |||
<td>Use UDP as the protocol.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:DarkMagenta">Timeout</span></td> | |||
<td>integer; default: <b>10</b></td> | |||
<td>Specifies the receiving or sending data timeout.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color:DarkSeaGreen">The directory of the file</span></td> | |||
< | <td>path; default: <b>none</b></td> | ||
< | <td>Remote FTP directory to upload file to.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td> | <td><span style="color:DarkSeaGreen">Host</span></td> | ||
<td>string; default: <b>none</b></td> | <td>string; default: <b>none</b></td> | ||
<td>The name of the | <td>The domain name or IP address of the server.</td> | ||
</tr> | |||
<tr> | |||
<td><span style="color:DarkSeaGreen">Port</span></td> | |||
<td>integer [1..65535]; default: <b>21</b></td> | |||
<td>The TCP/IP port of the server.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td> | <td><span style="color:DarkSeaGreen">Username</span></td> | ||
<td>string; default: <b>none</b></td> | <td>string; default: <b>none</b></td> | ||
<td>The | <td>The username of the FTP server.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td> | <td><span style="color:DarkSeaGreen">Password</span></td> | ||
<td> | <td>string; default: <b>none</b></td> | ||
<td> | <td>The password of the FTP server.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td> | <td><span style="color:DarkSeaGreen">Extra prefix to file name</span></td> | ||
<td>string; default: <b>none</b></td> | <td>string; default: <b>none</b></td> | ||
<td> | <td>Extra information to be added to file name.</td> | ||
</tr> | |||
<tr> | |||
<td><span style="color:DarkSeaGreen">Buffer size</span></td> | |||
<td>integer; default: <b>1024</b></td> | |||
<td>The size of the buffer to be used for uploading to FTP server.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:DarkSeaGreen">Overflow</span></td> | |||
<td>off {{!}} on; default: <b>on</b></td> | |||
<td>Upload file to FTP server if buffer overflowed.</td> | |||
</tr> | |||
<tr> | |||
<td><span style="color:DarkSeaGreen">Mode</span></td> | |||
<td>Interval {{!}} Fixed; default: <b>Interval</b></td> | |||
<td>The schedule mode to be used for uploading to FTP server.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color:DarkSeaGreen">Interval: Interval</span></td> | |||
<td>integer; default: <b>10</b></td> | |||
<td>Upload files to server every x seconds.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color:DarkSeaGreen">Fixed: Minute</span></td> | |||
<td>minutes; default: <b>every minute</b></td> | |||
<td>Uploading will be performed on this specific minute only.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color:DarkSeaGreen">Fixed: Hour</span></td> | |||
<td>hours; default: <b>every minute</b></td> | |||
<td>Uploading will be performed on this specific hour only.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td> | <td><span style="color:DarkSeaGreen">Fixed: Day</span></td> | ||
<td>days; default: <b>every day</b></td> | |||
<td> | <td>Uploading will be performed on this day only.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color: | <td><span style="color:DarkSeaGreen">Directory traversing method</span></td> | ||
<td> | <td>Multi CWD {{!}} No CWD {{!}} Single CWD; default: <b>Multi CWD</b></td> | ||
<td> | <td>Directory traversing method for FTP (multicwd, nocwd, cwd).</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color: | <td><span style="color:GoldenRod">Recipients</span></td> | ||
<td> | <td>Single {{!}} Group; default: <b>Single</b></td> | ||
<td> | <td>You can choose to add a single number or use a phone group list.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color:GoldenRod">Single: Recipient's phone number</span></td> | |||
<td>phone number; default: <b>none</b></td> | |||
<td>To whom the message will be sent. The number must be specified in full format, country code included. e.g., +37000000000.</td> | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><span style="color:GoldenRod">Group: Phone group</span></td> | |||
<td>list; default: <b>none</b></td> | |||
<td>Recipient's phone number users group. Configure it [[{{{name}}}_Administration#Recipients | here]].</td> | |||
</tr> | </tr> | ||
</table> | </table> | ||
[[Category:{{{name}}} Services section]] | [[Category:{{{name}}} Services section]] | ||
Revision as of 15:52, 22 October 2025
The information in this page is updated in accordance with firmware version .
Summary
The Data to Server feature provides you with the possibility to set up data senders that collect data from various sources and periodically send it to remote servers. Note: On {{{name}}}, Data to Server is additional software that can be installed from the System → [[{{{name}}} Package Manager|Package Manager]] page.
Data Senders
A Data Sender is an instance that gathers and periodically sends collected data to a specified server. The Data Senders list is empty by default so, in order to begin configuration you must add a new collection first. To add a new collection, click the 'Add' button.
After this you should be redirected to the newly added data configuration page.
Data configuration
Refer to the table below for descriptions on data configuration fields.
Note: these tables have coloring schemes to indicate which fields can be seen with different configuration.
| Field | Value | Description |
|---|---|---|
| Name | string; default: input1 | Name of data input. |
| Type | Base | Lua script | ; default: Base | Data input type. |
| Format type | Json | Custom | Lua script (Some data input types may not work correctly with the provided Lua format example script. Review and adapt the script as needed to ensure compatibility.); default: Json | Arranges the format of the sent JSON segment. |
| Values | list; default: All values included | Select values based on the data input type. If no values are selected, all values will be included. |
| Format string | string; default: none | Specifies custom format string. |
| Empty value | string; default: N/A | A string which will be placed if any value cannot be received. |
| Delimeter | string (Maximum length of value is 1 bytes); default: N/A | Specifies delimiters for multiple data segments. |
| Lua format example script | -(interactive button) | Download the Lua script. |
| Lua format script | -(interactive button) | Upload the Lua script. |
| Segment count | integer [1..64]; default: 1 | Max segment count in one JSON string sent to server. |
| Send as object | off | on; default: off | When turned on, sends JSON segment as object and not as an array element.
|
| Lua data example script | -(interactive button) | Download Lua data example script. |
| Lua script | -(interactive button) | Upload Lua data script. |
* This is additional software that can be installed from the System → [[{{{name}}} Package Manager|Package Manager]] page.
Collection configuration
| Field | Value | Description |
|---|---|---|
| Enabled | off | on; default: on | Enables data to server collection instance. |
| Timer | Period | Scheduler | None; default: Period | Strategy for collecting/sending data to destination. |
| Period | integer; default: 60 | Interval in seconds for collecting/sending data to destination. |
| Day time | string; default: none | Day time when action should be executed. Use '*' to indicate every hour or minute, (e.g., 12:15, *:15, 12:*, or *:*). |
| Interval type | Weekdays | Month days; default: Weekdays | Allows selecting between week and month days for instance intervals. |
| Weekdays | list; default: Every day is selected | Weekdays, when data should be sent/collected. If nothing is selected, every day of the week will be included. |
| Month day | list; default: Every day is selected | Month days, when data should be sent/collected. If nothing is selected, every day of the month will be included. |
| Month day: Force last day | off | on; default: off | Forces intervals to accept last day of month as valid option if selected day doesn't exist in ongoing month. |
| Retry | off | on; default: off | In case of a failed attempt, retry to send the same data to destination later. |
| Retry count | Default: 10 | Retry to send the same data N times |
| Timeout | Default: 1 | Timeout in second between retry attempts |
| Format type | JSON | custom | Lua script; default: JSON | Data collection objects formatting. |
| Format string | Default: Instance name | Specifies custom format string |
| Empty value | Default: N/A | A string which will be placed if any value cannot be received |
| Lua format example script | -(interactive button) | Download the Lua script. |
| Lua format script | -(interactive button) | Upload the Lua script. |
| Encoder | None | Base64; default: None | Encoder used for all sent data. |
Server configuration
Note: on some devices it is necessary to install an additional package to see additional server types [[{{{name}}}_Package_Downloads|Advanced data to server modules]].
| Field | Value | Description |
|---|---|---|
| Type | HTTP | Azure IoT Hub (requires to install package from [[{{{name}}} Package Manager|Package Manager]]) | Lua | SMTP | Socket | FTP ; default: HTTP | Interval in seconds for collecting/sending data to destination. |
| Server address | Default: empty | Hostname or IP address of the broker to connect to. |
| HTTP headers | Default: empty | Allows to add custom headers to the HTTP requests. |
| Enable secure connection | off | on; default: off | Enables the use of TLS certificates. |
| Certificate files from device | off | on; default: off | Specify where the certificates will be used from. |
| Certificate authority 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. |
| 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. |
| Client private keyfile | .key file; default: none | File containing private key for this client. This file needs to be not encrypted. |
| Configuration type | Unique Azure Iot Hub configuration | Existing Azure Iot Hub configuration; default: Unique Azure Iot Hub configuration | |
| Configuration type | Unique Azure Iot Hub configuration | Existing Azure Iot Hub configuration; default: Unique Azure Iot Hub configuration | |
| Unique Azure Iot Hub configuration: Connection type | Shared Access Signature (SAS) key | Device Provisioning Service (DPS); default: Shared Access Signature (SAS) key | |
| Unique Azure Iot Hub configuration: Connection String | string; default: none | Connection string based on primary key used in API calls which allows device to communicate with IoT Hub. |
| Unique Azure Iot Hub configuration: ID Scope | string; default: none | Unique identifier that is assigned to an Azure IoT Hub during its creation and is used to uniquely identify the specific provisioning service the device will register through. |
| Unique Azure Iot Hub configuration: Registration ID | string; default: none | The registration ID is used to uniquely identify a device registration with the Device Provisioning Service. Registration ID is the X.509 certificate common name (CN) field of the individual device's certificate. |
| Unique Azure Iot Hub configuration: Global Device Endpoint | string; default: global.azure-devices-provisioning.net | Destination for messages sent by IoT devices to the Azure IoT Hub (will default to global.azure-devices-provisioning.net if not set). |
| Unique Azure Iot Hub configuration: Attestation mechanism | X.509 Certificates | Symmetric Key; default: X.509 Certificates | Method used to confirm a device's identity in Device Provisioning Service. |
| Unique Azure Iot Hub configuration: X.509 Certificates: X.509 Certificate | -(interactive) button; default: none | Upload the "leaf" certificate file. |
| Unique Azure Iot Hub configuration: X.509 Certificates: X.509 Private Key | -(interactive) button; default: none | Upload the "leaf" key file. |
| Unique Azure Iot Hub configuration: Symmetric Key: Symmetric Key | string; default: none | The the derived device key from the DPS Primary Key. |
| Lua data example script | -(interractive button) | Downloads an example of script. |
| Lua script | -(interractive button) | Path to the lua script. |
| Subject | string; default:none | Subject of an email. |
| Recipient's email address | A valid email address is accepted; default: none | Subject of an email. |
| Email account | list; default: none | Sender's email configuration. Configure email account [[{{{name}}}_Administration#Recipients | here]]. |
| Server address | string; default: none | Socket's server address. |
| Server port | integer [1..65535]; default: none | Socket's server port. |
| UDP | off | on; default: off | Use UDP as the protocol. |
| Timeout | integer; default: 10 | Specifies the receiving or sending data timeout. |
| The directory of the file | path; default: none | Remote FTP directory to upload file to. |
| Host | string; default: none | The domain name or IP address of the server. |
| Port | integer [1..65535]; default: 21 | The TCP/IP port of the server. |
| Username | string; default: none | The username of the FTP server. |
| Password | string; default: none | The password of the FTP server. |
| Extra prefix to file name | string; default: none | Extra information to be added to file name. |
| Buffer size | integer; default: 1024 | The size of the buffer to be used for uploading to FTP server. |
| Overflow | off | on; default: on | Upload file to FTP server if buffer overflowed. |
| Mode | Interval | Fixed; default: Interval | The schedule mode to be used for uploading to FTP server. |
| Interval: Interval | integer; default: 10 | Upload files to server every x seconds. |
| Fixed: Minute | minutes; default: every minute | Uploading will be performed on this specific minute only. |
| Fixed: Hour | hours; default: every minute | Uploading will be performed on this specific hour only. |
| Fixed: Day | days; default: every day | Uploading will be performed on this day only. |
| Directory traversing method | Multi CWD | No CWD | Single CWD; default: Multi CWD | Directory traversing method for FTP (multicwd, nocwd, cwd). |
| Recipients | Single | Group; default: Single | You can choose to add a single number or use a phone group list. |
| Single: Recipient's phone number | phone number; default: none | To whom the message will be sent. The number must be specified in full format, country code included. e.g., +37000000000. |
| Group: Phone group | list; default: none | Recipient's phone number users group. Configure it [[{{{name}}}_Administration#Recipients | here]]. |
[[Category:{{{name}}} Services section]]



