You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: source/external-interface-design/external-interface-design.rst
+25Lines changed: 25 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -443,6 +443,31 @@ exponential back-off. Or an API exposing all messages which have not
443
443
been acknowledged by the receiver, for a short period of time (for
444
444
instance 3 days like SigFox).
445
445
446
+
MQTT
447
+
^^^^^^^^^^^^^^^^
448
+
449
+
OS2iot supports publishing data to a broker when it's received using MQTT. MQTT is a standard, lightweight messaging protocol based on the publish/subscribe pattern.
450
+
451
+
When configuring such a data-target, there's a few terms and keywords to be aware of:
452
+
453
+
- **QoS**: The QoS (Quality of Service) level determines the guarantee of delivery for a specific message. Different network environments may require different QoS levels.
454
+
Ideally, the level should be set to match the network reliability and application logic. This is the main point of MQTT.
455
+
456
+
There are 3 QoS levels:
457
+
458
+
- 0 (at most once)
459
+
- 1 (at least once)
460
+
- 2 (exactly once)
461
+
462
+
There are a number of well written articles regarding QoS. One such example is
463
+
`this blog entry <https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels/>`_.
464
+
- **Topic**: The MQTT data-target must be provided a topic with which it can label the data. This is used by the MQTT broker to filter messages from
465
+
MQTT clients. Here, OS2iot is a client.
466
+
- **Connection authentication**: The most common methods of authentication are username and password and/or client certificates. At the time of writing, username and password
467
+
authentication is supported, but it can be extended to implement other methods.
468
+
469
+
You can read more on MQTT `here <https://mqtt.org/>`_
0 commit comments