Jump to content

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

no edit summary
No edit summary
No edit summary
(39 intermediate revisions by 6 users not shown)
Line 1: Line 1:
<!-- Template uses {{{name}}}, {{{series}}}, {{{bluetooth}}}, {{{wifi}}}-->
<!-- Template uses {{{name}}}, {{{series}}}, {{{bluetooth}}}, {{{wifi}}}-->
{{Template: Networking_rutos_manual_fw_disclosure
{{Template: Networking_device_manual_fw_disclosure
| fw_version = {{{series}}}{{#ifeq:{{{name}}}|RUT241|M|}}_R_00.07.01
| series = {{{series}}}
| series    = {{{series}}}
| name  = {{{name}}}
| fw_version ={{Template: Networking_device_manual_latest_fw
| series = {{{series}}}
| 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 RUT9XX_R_00.06.08.5 and earlier) user manual page.</i>|}}
{{#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 |
{{#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>|}}
{{#switch: {{{name}}}
__TOC__
  | RUT241 =
  | #default =
<br><i><b>Note</b>: <b>[[{{{name}}} Modbus (legacy WebUI)#Modbus Data to Server|click here]]</b> for the old style WebUI (FW version RUT2XX_R_00.01.14.4 and earlier) user manual page.</i>}}
 
==Summary==
==Summary==


Line 16: Line 16:
{{#switch: {{{series}}}
{{#switch: {{{series}}}
| RUTX =
| RUTX =
| RUTM =
| RUTC =
| TCR1 =
| TRB1 =
| TRB1 =
| TRB2 =
| TRB2 =
| RUT9 =
| TRB2M =
| TRB5 =
| RUT2M =
| RUT2 =
| RUT30X =
| RUT36X =
| RUT9|RUT9M =
| RUT14X =
| #default =  
| #default =  
<u><b>
<u><b>


Note:</b> On {{{name}}}, Data to Server is additional software that can be installed from the <b>Services → [[{{{name}}} Package Manager|Package Manager]]</b> page.
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>}}
</u>}}
Line 33: Line 43:
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 data sender first. To add a new data sender, click the 'Add' button.
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 data sender first. To add a new data sender, click the 'Add' button.


[[File:Networking_rutos_manual_data_to_server_data_senders_add_button.png|border|class=tlt-border]]
[[File:Networking_rutos_manual_data_to_server_data_senders_add_button_v3.png|border|class=tlt-border]]


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


===Advanced Sender Settings===
===Sender Settings===
----
----
Refer to the table below for descriptions on data sender configuration fields.
Refer to the table below for descriptions on data sender configuration fields.
Line 43: Line 53:
<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_advanced_sender_settings.png|border|class=tlt-border]]
[[File:Networking rutos manual data to server data configuration.png|border|class=tlt-border]]


====General====
====General====
<table class="nd-mantable">
<table class="nd-mantable">
     <tr>
     <tr>
Line 52: Line 61:
       <th>Value</th>
       <th>Value</th>
       <th>Description</th>
       <th>Description</th>
    </tr>
    <tr>
      <td>Enabled</td>
      <td>off | on; default: <b>off</b></td>
      <td>Turns the data sender on or off.</td>
     </tr>
     </tr>
     <tr>
     <tr>
Line 64: Line 68:
     </tr>  
     </tr>  
     <tr>
     <tr>
       <td>Data source</td>
       <td>Type</td>
       <td><span style="color:red">Modbus data</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>; default: <b>Modbus data</b></td>
       <td><span>Base {{!}} {{#ifeq:{{{bluetooth}}}|1|<span style="color:green">Bluetooth</span> {{!}} |}}{{#ifeq:{{{mobile}}}|1| GSM {{!}} |}} {{#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>Protocol</td>
       <td>Format type</td>
       <td>HTTP(S) | MQTT{{#ifeq: {{{series}}} | RUTX || <span class="asterisk">*</span>}} | Kinesis; default: <b>HTTP(S)</b></td>
       <td>Json {{!}} <span style="color:limegreen">Custom</span>; default: <b>Json</b></td>
       <td>Protocol used for sending the data to server.</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>
     <tr>
     <tr>
       <td>JSON format</td>
       <td><span style="color:limegreen">Empty value</span></td>
       <td>string; default: </b>{"TS": "%t", "D": "%d", "data": %a}</b></td>
       <td>string; default: <b>N/A</b></td>
         <td>Arranges the format of the sent JSON segment.</td>  
        <td>A string which will be placed if any value cannot be received.</td>
    </tr>
    <tr>
      <td><span style="color:limegreen">Delimeter</span></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>
     <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>
     </tr>
    {{#ifeq:{{{Modbus}}}|1|
     <tr>
     <tr>
       <td>URL/Host/Connection string</td>
       <td><span style="color:grey">Data filtering</span></td>
      <td>string; default: <b>none</b></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>URL for HTTP(S); Host for MQTT; Connection string for Azure MQTT.</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>
      <td>Period</td>
      <td>integer [1..86400]; default: <b>60</b></td>
       <td>Data sending frequency (in seconds).</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>
      <td><span style="color:darkred">By slave ID:</span> Slave ID</td>
      <td>integer [1..255]; default: <b>none</b></td>
      <td>ID of the Modbus slave whose collected data will be sent to server.</td>
     </tr>
     </tr>
     <tr>
     |}}
      <td><span style="color:blue">By slave IP:</span> Slave IP</td>
     {{#ifeq:{{{bluetooth}}}|1|
      <td>ip; default: <b>none</b></td>
      <td>IP address of the Modbus slave whose collected data will be sent to server (for Modbus TCP slaves).</td>
     </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 <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:green">Device MAC address</span> {{!}} <span style="color:green">Device name</span>; default: <b>All</b></td>
       <td>If Data source: <span style="color:red">Bluetooth data</span>. Choose which data this sender will send to server.</td>
       <td>If Data type: <span style="color:green">Bluetooth</span>. Choose which data this sender will send to server.</td>
     </tr>
     </tr>|}}
   
    {{#ifeq:{{{wifi}}}|1|
     <tr>
     <tr>
       <td><span style="color:darkred">By MAC address:</span> MAC address</td>
       <td><span style="color:purple">Data filtering</span></td>
       <td>mac; default: <b>none</b></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>MAC address of bluetooth device whose collected data will be sent to server.</td>
       <td>If Data type: <span style="color:purple">Wifi scanner</span>. Choose which data this sender will send to server.</td>
    </tr>
    <tr>
      <td><span style="color:blue">By device name:</span> Device name</td>
      <td>string; default: <b>none</b></td>
       <td>Device name of bluetooth device whose collected data will be sent to server.</td>
     </tr>|}}
     </tr>|}}
   
    {{#ifeq:{{{mobile}}}|1|
     <tr>
     <tr>
       <td><span style="color:magenta">Data filtering</span></td>
       <td><span style="color:blue">Data period</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><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 source: <span style="color:magenta">DNP3</span>. Choose which data this sender will send to server.</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:darkred">DNP3 Address:</span> DNP3 Address</td>
       <td><span style="color:blue">Current</span></td>
       <td>integer [0..65519]; default: <b>none</b></td>
       <td><span style="color:blue>off</span> {{!}} <span style="color:blue>on</span>; default: <b>off</b></td>
       <td>DNP3 address of device whose collected data will be sent to server.</td>
       <td>If Data type: <span style="color:blue">Mobile usage</span>.</td>
     </tr>
     </tr>|}}
    {{#ifeq: {{{DLMS}}}|1|
     <tr>
     <tr>
       <td><span style="color:blue">DNP3 IP:</span> DNP3 IP</td>
       <td><span style="color:hotpink">Data filtering</span></td>
       <td>ip | domain; default: <b>none</b></td>
       <td>All {{!}} <span style="color:hotpink">Name</span>; default: <b>All</b></td>
       <td>IP address of DNP3 device whose collected data will be sent 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>
     <tr>
     <tr>
       <td>Retry on fail</td>
       <td><span style="color:hotpink">Invert file</span></td>
       <td>off | on; default: <b>off</b></td>
       <td><span style="color:hotpink">off</span> {{!}} <span style="color:hotpink">on</span>; default: <b>off</b></td>
       <td>When turned on, the data sender retries failed sending attempts until the are successfully delivered.</td>
       <td>If Data type: <span style="color:hotpink">DLMS</span>. Inverts filter condition.</td>
     </tr>
     </tr>
</table>
    |}}
<br>
    {{#ifeq: {{{DNP3}}}|1|
 
<span class="asterisk">*</span> This is additional software that can be installed from the <b>Services → [[{{{name}}} Package Manager|Package Manager]]</b> page.
====Protocol HTTP(S)====
 
<table class="nd-mantable">
     <tr>
     <tr>
        <th>Field</th>
      <td><span style="color:brown">Data filtering</span></td>
       <th>Value</th>
       <td>All {{!}} <span style="color:brown"> Address </span> {{!}} <span style="color:brown">IP</span>; default: <b>All</b></td>
      <th>Description</th>
        <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>Custom Header</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>Allows to add custom headers to the HTTP requests.</td>
        <td>Database location</td>  
    </tr>
     </tr>|}}
    <tr>
     {{#ifeq:{{{OPC}}}|1|
      <td>Use TLS</td>
    <tr>
      <td>off | <span style="color:red">on</span>; default: '''off'''</td>
       <td><span style="color:lightblue">Data filtering</span></td>
       <td>Enables the use of TSL certificates.</td>
       <td>All {{!}} <span style="color:lightblue"> Name </span>; default: <b>All</b></td>
    </tr>
         <td>If Data type: <span style="color:lightblue">OPC UA</span>. Choose which data this sender will send to server.</td>  
    <tr>
      <td><span style="color:red">On:</span> TLS type</td>
      <td>Certificate based; default: '''Certificate based'''</td>
      <td>Select type of TLS.</td>
     </tr>
     <tr>
       <td><span style="color:red">On:</span> CA File</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:red">On:</span> Client Certificate</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>
    <td><span style="color:red">On:</span> Private Key</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>
     </tr>
     </tr>
</table>
    |}}
<br>
====Protocol MQTT====
 
<table class="nd-mantable">
     <tr>
     <tr>
         <th>Field</th>
         <td><span style="color:orange">Server address</span></td>
      <th>Value</th>
        <td>Default: <b>empty</b></td>
      <th>Description</th>
        <td>Hostname or ip address of the broker to connect to.</td>
     </tr>
     </tr>
     <tr>
     <tr>
         <td>Port</td>
         <td><span style="color:orange">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:orange">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:orange">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:orange">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:orange">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 227: Line 202:
* 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>
      <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>
     <tr>
       <td>Use TLS</td>
       <td><span style="color:blue">On:</span> <span style="color:orange">TLS type</span></td>
      <td>off | <span style="color:red">on</span>; default: '''off'''</td>
      <td>Certificate based {{!}} Pre-shared key based; default: '''Certificate based'''</td>
       <td>Enables the use of TSL certificates.</td>
       <td>Select type of TLS.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td><span style="color:red">On:</span> TLS type</td>
       <td><span style="color:orange">Certificate based: Allow insecure connection</span></td>
       <td><span style="color:chocolate">Certificate based</span> {{!}} <span style="color:darkred">Pre-shared key based</span>; default: '''Certificate based'''</td>
       <td>off {{!}} on; default: '''off'''</td>
       <td>Select type of TLS.</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>
     <tr>
     <tr>
       <td><span style="color:chocolate">Certificate based:</span> CA File</td>
       <td><span style="color:orange">Certificate based: CA 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:orange">Certificate based: 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:orange">Certificate based: CLient private Key</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>
     </tr>
     <tr>
     <tr>
       <td><span style="color:darkred">Pre-shared key based:</span> Pre-Shared-Key</td>
       <td><span style="color:orange">Pre-shared key based: Pre-Shared-Key</span></td>
       <td>string; default: <b>none</b></td>
       <td>string; default: <b>none</b></td>
       <td>The pre-shared-key in hex format with no leading "0x".</td>
       <td>The pre-shared-key in hex format with no leading "0x".</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td><span style="color:darkred">Pre-shared key based:</span> Identity</td>
       <td><span style="color:orange">Pre-shared key based: Identity</span></td>
       <td>string; default: <b>none</b></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>
       <td>The identity of this client. May be used as the username depending on the server settings.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td>Use Credentials</td>
       <td><span style="color:orange">Username</span></td>
      <td>off | <span style="color:darkgreen">on</span>; default: '''off'''</td>
      <td>string; default: <b>none</b></td>
       <td>Enables use of username and password for authentication.</td>
       <td>Username used in authentication.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td><span style="color:darkgreen">On:</span> Username</td>
       <td><span style="color:orange">Require password</span></td>
       <td>string; default: <b>none</b></td>
       <td>on | off; default: <b>off</b></td>
       <td>Username used in authentication.</td>
       <td>Enables password for authentication.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td><span style="color:darkgreen">On:</span> Password</td>
       <td><span style="color:orange">Password</span></td>
       <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>
</br>
<br>
====Protocol Kinesis====
<span class="asterisk">*</span> This is additional software that can be installed from the <b>System → [[{{{name}}} Package Manager|Package Manager]]</b> page.
 
====Collection settings====
----
 
[[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 289: Line 279:
     </tr>
     </tr>
     <tr>
     <tr>
       <td>Stream name</td>
       <td>Enabled</td>
       <td>string; default: <b>none</b></td>
      <td>off {{!}} on; default: <b>on</b></td>
       <td>The name of the stream for which to start encrypting records.</td>
      <td>Enables data to server collection instance.</td>
    </tr>
    <tr>
      <td>Format type</td>
      <td>Json {{!}} <span style="color:red">custom</span>; default: <b>Json</b></td>
      <td>Data collection objects formatting.</td>
    </tr>
    <tr>
      <td><span style="color:red">Format string</span></td>
      <td>Default: <b>Instance name</b></td>
       <td>Specifies custom format string</td>
    </tr>
    <tr>
      <td><span style="color:red">Empty value </span></td>
      <td>Default: <b>N/A</b></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>
    <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>
     <tr>
       <td>Partition key</td>
       <td><span style="color:blue">Timeout</span></td>
       <td>string; default: <b>none</b></td>
       <td>Default: <b>1</b></td>
       <td>The partition key is used by Kinesis Data Streams as input to a hash function that maps the partitionkey and associated data to a specific shard.</td>
       <td>Timeout in second between retry attempts</td>
     </tr>
     </tr>
</table>
====Server configuration====
----
[[File:Networking rutos manual data to server server configuration.png|border|class=tlt-border]]
<table class="nd-mantable">
     <tr>
     <tr>
       <td>API version</td>
        <th>Field</th>
       <td>positive integer; default: <b>none</b></td>
      <th>Value</th>
       <td>Optional. Used version of the Kinesis API.</td>
      <th>Description</th>
    </tr> 
    <tr>
       <td>Type</td>
       <td>HTTP {{!}} <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>
      <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>
     <tr>
       <td>Region</td>
       <td>Enable secure connection</td>
       <td>string; default: <b>none</b></td>
       <td>on {{!}} off; default: <b>off</b></td>
       <td>Region code of the Kinesis server.</td>
       <td>Enables the use of TLS certificates.</td>
    </tr>
   
    <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>
     <tr>
     <tr>
    <td>Domain</td>
        <td><span style="color:red">Keepalive</span></td>
         <td>domain; default: <b>none</b></td>
         <td>integer [1..640]; default: <b>60</b></td>
         <td>Domain of the Kinesis server. E.g. 'amazonaws.com'</td>
         <td>MQTT Keepalive period in seconds.</td>
     </tr>
     </tr>
     <tr>
     <tr>
    <td>Access key</td>
        <td><span style="color:red">Topic</span></td>
         <td>string; default: <b>none</b></td>
         <td>string; default: <b>none</b></td>
         <td>Access key ID is a part of Access keys used for authentication.</td>
         <td>MQTT topic to be used for publishing the data.</td>
     </tr>
     </tr>
     <tr>
     <tr>
    <td>Secret key</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>Secret access key is a part of Access keys used for authentication.</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: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>
     <tr>
       <td>Use TLS</td>
       <td>Enable secure connection</td>
       <td>off | <span style="color:red">on</span>; default: '''off'''</td>
       <td>off {{!}} <span style="color:blue">on</span>; default: '''off'''</td>
       <td>Enables the use of TSL certificates.</td>
       <td>Enables the use of TLS certificates.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td><span style="color:red">On:</span> TLS type</td>
       <td><span style="color:blue">On:</span> TLS type</td>
       <td>Certificate based; default: '''Certificate based'''</td>
       <td>Certificate based {{!}} Pre-shared key based; default: '''Certificate based'''</td>
       <td>Select type of TLS.</td>
       <td>Select type of TLS.</td>
     </tr>
     </tr>
     <tr>
     <tr>
       <td><span style="color:red">On:</span> CA File</td>
       <td>Certificate based: Allow insecure connection</td>
      <td>off {{!}} on; default: '''off'''</td>
      <td>Allow not verifying server authentication.</td>
    </tr>
    <tr>
      <td>Certificate based: Certificate files from device</td>
      <td>off {{!}} on; default: '''off'''</td>
      <td>Specify where the certificates will be used from.</td>
    </tr>
    <tr>
      <td>Certificate based: 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:red">On:</span> Client Certificate</td>
     <td>Certificate based: 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:red">On:</span> Private Key</td>
     <td>Certificate based: Client 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>Pre-shared key based: 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>Pre-shared key based: 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>
      <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>
      <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>


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