Difference between revisions of "Template:Networking rutos manual data to server"

From Teltonika Networks Wiki
 
(31 intermediate revisions by 4 users not shown)
Line 17: Line 17:
 
| RUTX =
 
| RUTX =
 
| RUTM =
 
| RUTM =
 +
| RUTC =
 +
| TCR1 =
 
| TRB1 =
 
| TRB1 =
 
| TRB2 =
 
| TRB2 =
 +
| TRB2M =
 +
| TRB5 =
 +
| RUT2M =
 +
| RUT2 =
 +
| RUT30X =
 +
| RUT36X =
 
| RUT9|RUT9M =
 
| RUT9|RUT9M =
 +
| RUT14X =
 +
| TAP100 | TAP200 =
 
| #default =  
 
| #default =  
 
<u><b>
 
<u><b>
Line 44: Line 54:
 
<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:Networking rutos manual data to server data configuration.png|border|class=tlt-border]]
+
{{#switch: {{{series}}}
 
+
| TAP100 | TAP200 =  [[File:Networking rutos manual data to server data configuration_tap.png|border|class=tlt-border]]
====Data configuration====
+
| #default = [[File:Networking rutos manual data to server data configuration.png|border|class=tlt-border]]
 +
}}
  
 +
====General====
 
<table class="nd-mantable">
 
<table class="nd-mantable">
 
     <tr>
 
     <tr>
Line 61: Line 73:
 
     <tr>
 
     <tr>
 
       <td>Type</td>
 
       <td>Type</td>
       <td><span style="color:red">Modbus</span><span style="color:blue">Modbus alarms</span>{{#ifeq:{{{series}}}|RUT36X|<span class="asterisk">*</span>|}}{{#ifeq:{{{series}}}|RUT30X|<span class="asterisk">*</span>|}} {{#ifeq:{{{bluetooth}}}|1|<nowiki>|</nowiki> <span style="color:green">Bluetooth data</span> |}} {{#ifeq:{{{wifi}}}|1|<nowiki>|</nowiki> WiFi scanner data{{#ifeq: {{{series}}} | RUTX | | <span class="asterisk">*</span>}}|}} | <span style="color:magenta">DNP3</span><span class="asterisk">*</span> {{!}} DNP3 data flash<span class="asterisk">*</span>; default: <b>Modbus data</b></td>
+
       <td><span>Base {{!}} {{#ifeq:{{{bluetooth}}}|1|<span style="color:green">Bluetooth</span> {{!}} |}}{{#ifeq:{{{mobile}}}|1| GSM {{!}} |}} Lua script {{!}} {{#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> {{!}} |}}{{#ifeq:{{{DLMS}}}|1|<span style="color:hotpink">DLMS</span><span class="asterisk">*</span>|}}; default: <b>Base</b></span>   
 +
        </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>Format type</td>
 
       <td>Format type</td>
       <td>Json, custom; default: <b>Json</b></td>
+
       <td>Json {{!}} <span style="color:limegreen">Custom</span>; default: <b>Json</b></td>
         <td>Arranges the format of the sent segment.</td>  
+
         <td>Arranges the format of the sent JSON segment.</td>
 +
    </tr>
 +
    <tr>
 +
      <td><span style="color:limegreen">Format string</span></td>
 +
      <td>string; default: <b>none</b></td>
 +
        <td>Specifies custom format string.</td>
 +
    </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>JSON format</td>
+
       <td><span style="color:limegreen">Delimeter</span></td>
       <td>string; default: <b>{"TS": "%t", "D": "%d", "data": %a}</b></td>
+
       <td>string (Maximum length of value is 1 bytes); default: <b>N/A</b></td>
         <td>Arranges the format of the sent JSON segment.</td>  
+
         <td>Specifies delimiters for multiple data segments.</td>  
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
 
       <td>Segment count</td>
 
       <td>Segment count</td>
       <td>integer [1..10]; default: <b>1</b></td>
+
       <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 | on; default: <b>off</b></td>
+
       <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.</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><span style="color:red">Data filtering</span></td>
 
       <td><span style="color:red">Data filtering</span></td>
       <td>All data | <span style="color:darkred">By slave ID</span> | <span style="color:blue">By slave IP</span>; default: <b>All data</b></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>If Data source: <span style="color:red">Modbus data</span>. Choose which data this sender will send to server.</td>
+
       <td>If Data type: <span style="color:red">Modbus data</span>. Choose which data this sender will send to server.</td>
 
     </tr>
 
     </tr>
 +
    |}}
 +
    {{#ifeq:{{{bluetooth}}}|1|
 
     <tr>
 
     <tr>
       <td><span style="color:darkred">By slave ID:</span> Slave ID</td>
+
       <td><span style="color:green">Data filtering</span></td>
       <td>integer [1..255]; default: <b>none</b></td>
+
      <td>All {{!}} <span style="color:green">Device MAC address</span> {{!}} <span style="color:green">Device name</span>; default: <b>All</b></td>
       <td>ID of the Modbus slave whose collected data will be sent to server.</td>
+
       <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><span style="color:blue>Day</span> {{!}} <span style="color:blue>Week</span> {{!}} <span style="color:blue>Month</span>; default: <b>Day</b></td>
 +
      <td>If Data type: <span style="color:blue">Mobile usage</span>. Choose for which time period to send info from.</td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td><span style="color:blue">By slave IP:</span> Slave IP</td>
+
       <td><span style="color:blue">Current</span></td>
       <td>ip; default: <b>none</b></td>
+
       <td><span style="color:blue>off</span> {{!}} <span style="color:blue>on</span>; default: <b>off</b></td>
       <td>IP address of the Modbus slave whose collected data will be sent to server (for Modbus TCP slaves).</td>
+
       <td>If Data type: <span style="color:blue">Mobile usage</span>.</td>
     </tr>{{#ifeq:{{{bluetooth}}}|1|
+
     </tr>|}}
 +
    {{#ifeq: {{{DLMS}}}|1|
 
     <tr>
 
     <tr>
       <td><span style="color:green">Data filtering</span></td>
+
       <td><span style="color:hotpink">Data filtering</span></td>
       <td>All data <nowiki>|</nowiki> <span style="color:darkred">By MAC address</span> <nowiki>|</nowiki> <span style="color:blue">By device name</span>; default: <b>All data</b></td>
+
       <td>All {{!}} <span style="color:hotpink">Name</span>; default: <b>All</b></td>
       <td>If Data source: <span style="color:green">Bluetooth data</span>. Choose which data this sender will send to server.</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 file</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>
 
     </tr>
 +
    |}}
 +
    {{#ifeq: {{{DNP3}}}|1|
 
     <tr>
 
     <tr>
       <td><span style="color:darkred">By MAC address:</span> MAC address</td>
+
       <td><span style="color:brown">Data filtering</span></td>
       <td>mac; default: <b>none</b></td>
+
       <td>All {{!}} <span style="color:brown"> Address </span> {{!}} <span style="color:brown">IP</span>; default: <b>All</b></td>
      <td>MAC address of bluetooth device whose collected data will be sent to server.</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:blue">By device name:</span> Device name</td>
+
       <td><span style="color:brown">Database</span></td>
       <td>string; default: <b>none</b></td>
+
       <td>RAM {{!}} Flash; default: <b>RAM</b></td>
      <td>Device name of bluetooth device whose collected data will be sent to server.</td>
+
        <td>Database location</td>  
 
     </tr>|}}
 
     </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>
 +
    |}}
 +
    {{#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>
 
     <tr>
       <td><span style="color:magenta">Data filtering</span></td>
+
       <td><span style="color:blue">On:</span> <span style="color:orange">TLS type</span></td>
      <td>All data <nowiki>|</nowiki> <span style="color:darkred">DNP3 Address</span> <nowiki>|</nowiki> <span style="color:blue">DNP3 IP</span>; default: <b>All data</b></td>
+
      <td>Certificate based {{!}} Pre-shared key based; default: '''Certificate based'''</td>
       <td>If Data source: <span style="color:magenta">DNP3</span>. Choose which data this sender will send to server.</td>
+
       <td>Select type of TLS.</td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td><span style="color:darkred">DNP3 Address:</span> DNP3 Address</td>
+
       <td><span style="color:orange">Certificate based: Allow insecure connection</span></td>
       <td>integer [0..65519]; default: <b>none</b></td>
+
       <td>off {{!}} on; default: '''off'''</td>
       <td>DNP3 address of device whose collected data will be sent to server.</td>
+
       <td>Allow not verifying server authentication.</td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td><span style="color:blue">DNP3 IP:</span> DNP3 IP</td>
+
       <td><span style="color:orange">Certificate based: Certificate files from device</span></td>
       <td>ip | domain; default: <b>none</b></td>
+
       <td>off {{!}} on; default: '''off'''</td>
       <td>IP address of DNP3 device whose collected data will be sent to server.</td>
+
       <td>Specify where the certificates will be used from.</td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td>Retry on fail</td>
+
       <td><span style="color:orange">Certificate based: CA File</span></td>
       <td>off | on; default: <b>off</b></td>
+
       <td>.ca file; default: <b>none</b></td>
       <td>When turned on, the data sender retries failed sending attempts until the are successfully delivered.</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>
</table>
 
<br>
 
 
====Collection general settings====
 
----
 
 
[[File:Networking rutos manual data to server collection configuration general settings.png|border|class=tlt-border]]
 
 
<table class="nd-mantable">
 
 
     <tr>
 
     <tr>
        <th>Field</th>
+
    <td><span style="color:orange">Certificate based: CLient private Key</span></td>
      <th>Value</th>
+
        <td>.key file; default: <b>none</b></td>
      <th>Description</th>
+
        <td>File containing private key for this client. This file needs to be not encrypted.</td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td>Enable</td>
+
       <td><span style="color:orange">Pre-shared key based: Pre-Shared-Key</span></td>
       <td>on, off; default: <b>on</b></td>
+
       <td>string; default: <b>none</b></td>
       <td>Enables instance.</td>
+
       <td>The pre-shared-key in hex format with no leading "0x".</td>
 
     </tr>
 
     </tr>
        <tr>
+
    <tr>
       <td>Type</td>
+
       <td><span style="color:orange">Pre-shared key based: Identity</span></td>
      <td><span style="color:red">Json</span>, <span style="color:blue">custom</span>; default: <b>Json</b></td>
+
      <td>string; default: <b>none</b></td>
        <td>Data input type.</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:red">Json</span></td>
+
       <td><span style="color:orange">Username</span></td>
       <td>string; default: <b>{"TS": "%t", "D": "%d", "data": %a}</b></td>
+
       <td>string; default: <b>none</b></td>
        <td>Arranges the format of the sent JSON segment.</td>  
+
      <td>Username used in authentication.</td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td><span style="color:blue">custom</span></td>
+
       <td><span style="color:orange">Require password</span></td>
       <td>string; default: <b>empty</b></td>
+
       <td>on {{!}} off; default: <b>off</b></td>
        <td>Type of data formatting.</td>
+
       <td>Enables password for authentication.</td>
    </tr>    <tr>
 
      <td><span style="color:blue">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>
 +
      <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>
 +
<span class="asterisk">*</span> This is additional software that can be installed from the <b>System → [[{{{name}}} Package Manager|Package Manager]]</b> page.
  
====Collection advanced settings====
+
====Collection settings====
 
----
 
----
  
[[File:Networking rutos manual data to server collection configuration advanced settings.png|border|class=tlt-border]]
+
[[File:Networking rutos manual data to server collection configuration general settings_v1.png|border|class=tlt-border]]
  
 
<table class="nd-mantable">
 
<table class="nd-mantable">
Line 186: Line 283:
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td>Period</td>
+
       <td>Enabled</td>
       <td>integer [1..86400]; default: <b>60</b></td>
+
       <td>off {{!}} on; default: <b>on</b></td>
       <td>Data sending frequency (in seconds).</td>
+
       <td>Enables data to server collection instance.</td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td>Retry</td>
+
       <td>Format type</td>
       <td>off | <span style="color:darkgreen">on</span>; default: <b>off</b></td>
+
       <td>JSON {{!}} <span style="color:red">custom</span>; default: <b>JSON</b></td>
       <td>When turned on, the data sender retries failed sending attempts until the are successfully delivered.</td>
+
       <td>Data collection objects formatting.</td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td><span style="color:darkgreen">Retry count</span></td>
+
       <td><span style="color:red">Format string</span></td>
       <td>integer [1..10]; default: <b>10</b></td>
+
       <td>Default: <b>Instance name</b></td>
       <td>Retry to send the same data N times.</td>
+
       <td>Specifies custom format string</td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td><span style="color:darkgreen">Timeout</span></td>
+
       <td><span style="color:red">Empty value </span></td>
       <td>integer [1..60]; default: <b>1</b></td>
+
       <td>Default: <b>N/A</b></td>
       <td>Timeout in second between retry attempts.</td>
+
      <td>A string which will be placed if any value cannot be received</td>
 +
    </tr>
 +
    <tr>
 +
      <td>Period</td>
 +
      <td>Default: <b>60</b></td>
 +
      <td>Interval in seconds for collecting/sending data to destination.</td>
 +
    </tr>
 +
    <tr>
 +
      <td>Retry</td>
 +
      <td>off {{!}} <span style="color:blue">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:blue">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:blue">Timeout</span></td>
 +
      <td>Default: <b>1</b></td>
 +
       <td>Timeout in second between retry attempts</td>
 
     </tr>
 
     </tr>
 
</table>
 
</table>
Line 217: Line 334:
 
       <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>}}; default: <b>HTTP</b></td>
 +
      <td>Interval in seconds for collecting/sending data to destination.</td>
 
     </tr>
 
     </tr>
        <tr>
+
    <tr>
       <td>Protocol</td>
+
      <td>Server address</td>
       <td>HTTP(S) | MQTT{{#ifeq: {{{series}}} | RUTX || <span class="asterisk">*</span>}} | Kinesis; default: <b>HTTP(S)</b></td>
+
      <td>Default: <b>empty</b></td>
      <td>Protocol used for sending the data to server.</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>on {{!}} off; default: <b>off</b></td>
 +
      <td>Enables the use of TLS certificates.</td>
 +
    </tr>
 +
    {{#ifeq:{{{MQTT}}}|1|
 +
    <tr>
 +
        <td><span style="color:red">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:red">Keepalive</span></td>
 +
        <td>integer [1..640]; default: <b>60</b></td>
 +
        <td>MQTT Keepalive period in seconds.</td>
 
     </tr>
 
     </tr>
        <tr>
+
    <tr>
      <td>Server address</td>
+
        <td><span style="color:red">Topic</span></td>
      <td>string; default: <b>none</b></td>
+
        <td>string; default: <b>none</b></td>
      <td>URL for HTTP(S); Host for MQTT; Connection string for Azure MQTT.</td>
+
        <td>MQTT topic to be used for publishing the data.</td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
      <td>HTTP Header</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>Allows to add custom headers to the HTTP requests.</td>
+
        <td>Client ID to send with the data. If empty, a random client ID will be generated</td>
 
     </tr>
 
     </tr>
 +
    <tr>
 +
        <td><span style="color:red">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>
 
     <tr>
 
       <td>Enable secure connection</td>
 
       <td>Enable secure connection</td>
       <td><span style="color:chocolate">on</span>, off; default: <b>off</b></td>
+
       <td>off {{!}} <span style="color:blue">on</span>; default: '''off'''</td>
       <td>Enables use of TLS certificates</td>
+
       <td>Enables the use of TLS certificates.</td>
     </tr>
+
    </tr>{{#ifeq:{{{MQTT}}}|1|
 +
    <tr>
 +
      <td>Allow insecure connection</td>
 +
      <td>off {{!}} on; default: '''off'''</td>
 +
      <td>Allow not verifying server authentication.</td>
 +
     </tr>}}
 
     <tr>
 
     <tr>
       <td>Certificate files from device</td>
+
       <td><span style="color:blue">Certificate files from device</span></td>
       <td>on, off; default: <b>off</b></td>
+
       <td>off {{!}} on; default: '''off'''</td>
       <td>Choose this option if you want to select certificate files from device.</td>
+
       <td>Specify where the certificates will be used from.</td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td><span style="color:chocolate">Certificate based:</span> CA File</td>
+
       <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:chocolate">Certificate based:</span> Client Certificate</td>
+
     <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:chocolate">Certificate based:</span> Private Key</td>
+
     <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>Use credentials</td>
 +
      <td>off {{!}} <span style="color:darkgreen">on</span>; default: '''off'''</td>
 +
      <td>Enables use of username and password for authentication.</td>
 
     </tr>
 
     </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>}}
 +
   
 
</table>
 
</table>
 
<span class="asterisk">*</span> This is additional software that can be installed from the <b>System → [[{{{name}}} Package Manager|Package Manager]]</b> page.
 
  
 
[[Category:{{{name}}} Services section]]
 
[[Category:{{{name}}} Services section]]

Latest revision as of 13:47, 23 July 2024

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.

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.

Networking rutos manual webui basic advanced mode 75.gif

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 data sender first. To add a new data sender, click the 'Add' button.

Networking rutos manual data to server data senders add button v3.png

After this you should be redirected to the newly added data sender's configuration page.

Sender Settings


Refer to the table below for descriptions on data sender configuration fields.

Note: these tables have coloring schemes to indicate which fields can be seen with different configuration.

Networking rutos manual data to server data configuration.png

General

Field Value Description
Name string; default: none Name of the data sender. Used for easier data senders management purposes only (optional).
Type Base | Lua script | ; default: Base Source of the data to be sent to server.
Format type Json | Custom; default: Json Arranges the format of the sent JSON segment.
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.
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.


* This is additional software that can be installed from the System → [[{{{name}}} Package Manager|Package Manager]] page.

Collection settings


Networking rutos manual data to server collection configuration general settings v1.png

Field Value Description
Enabled off | on; default: on Enables data to server collection instance.
Format type JSON | custom; 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
Period Default: 60 Interval in seconds for collecting/sending data to destination.
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

Server configuration


Networking rutos manual data to server server configuration.png

Field Value Description
Type HTTP ; 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 on | off; default: off Enables the use of TLS certificates.
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.

[[Category:{{{name}}} Services section]]