Weiß jemand, was der Watson IoT Broker tut, wenn er eine QoS1 o 2 Nachricht veröffentlicht und nicht die entsprechende Bestätigung vom Client erhält? Implementiert es eine Zeitüberschreitung (etwa 20 Sekunden) und sendet die Nachricht dann erneut? Es scheint, dass einige Broker dies tun, während andere die Nachricht nur bei einer neuen Verbindung zurücksenden (wenn Retain auf 1 gesetzt ist). Die MQTT-Spezifikation ist in diesem Punkt etwas vage.Watson IoT QoS1/2 Wiederholungen
Antwort
die Nachricht für den Kunden im Flug angesehen werden würde, dass sie nicht anerkannt hat, und diese Botschaft Nachlieferung wird nur auftreten, wenn dieser Client die Verbindung trennt und verbindet (aber nur, wenn der Kunde war sauber session = 0)
Für QoS1 und 2: Mindestens einmal (QoS1)
Mit Quality of Service Level 1 (QoS1) wird die Nachricht immer mindestens einmal gesendet. Wenn ein Fehler auftritt, bevor eine Bestätigung vom Absender empfangen wurde, kann eine Nachricht mehrmals gesendet werden. Die Nachricht muss lokal beim Absender gespeichert werden, bis der Absender eine Bestätigung erhält, dass die Nachricht vom Empfänger veröffentlicht wurde. Die Nachricht wird gespeichert, falls die Nachricht erneut gesendet werden muss.
genau einmal (QoS2)
Die "genau einmal" Qualität der Service-Level-2 (QoS2) ist die sicherste, aber langsamste Art der Übertragung. Die Nachricht wird immer genau einmal geliefert und muss auch lokal beim Absender gespeichert werden, bis der Absender eine Bestätigung erhält, dass die Nachricht vom Empfänger veröffentlicht wurde. Die Nachricht wird gespeichert, falls die Nachricht erneut gesendet werden muss. Mit der Qualität der Service-Level-2, eine anspruchsvolleres Handshaking und Quittierungssequenz wird als für die Stufe 1 verwendet wird, um sicherzustellen, dass Nachrichten nicht
MQTT keep alive Intervall
Die MQTT keep alive Intervall dupliziert werden, die in Sekunden gemessen wird , definiert die maximale Zeit, die ohne Kommunikation zwischen Client und Broker verstreichen kann. Der MQTT-Client muss sicherstellen, dass bei fehlender anderer Kommunikation mit dem Broker ein PINGREQ-Paket gesendet wird. Das Keep-Alive-Intervall ermöglicht sowohl dem Client als auch dem Broker das Erkennen, dass das Netzwerk ausgefallen ist, was zu einer unterbrochenen Verbindung führt, ohne dass auf das Erreichen der TCP/IP-Zeitüberschreitung gewartet werden muss.
Wenn Ihre MQTT-Clients der Watson IoT Platform gemeinsam genutzte Subskriptionen verwenden, kann der Wert für die Aufrechterhaltung des Intervalls nur zwischen 1 und 3600 Sekunden festgelegt werden. Wenn ein Wert von 0 oder ein Wert größer als 3600 angefordert wird, legt der Watson IoT Platform-Broker das Keep-Alive-Intervall auf 3600 Sekunden fest.
Rückmeldungen
Watson IoT-Plattform bietet eingeschränkte Unterstützung für das Feature beibehalten Nachrichten von MQTT Messaging. Wenn das Flag für beibehaltene Nachrichten in einer MQTT-Nachricht, die von einem Gerät, Gateway oder einer Anwendung an die Watson IoT Platform gesendet wird, auf "true" gesetzt ist, wird die Nachricht als eine nicht zurückgeschriebene Nachricht behandelt. Watson IoT Platform-Organisationen sind nicht berechtigt, gespeicherte Nachrichten zu veröffentlichen. Der Watson IoT Platform-Dienst setzt das Flag für beibehaltene Nachrichten außer Kraft, wenn es auf "True" festgelegt ist, und verarbeitet die Nachricht so, als ob das Flag für die beibehaltene Nachricht auf "False" festgelegt ist.
- 1. IBM Watson-IOT Plattform Dashboard Öffentliche URL
- 2. Bluemix Watson IoT Blockchain mehrere Aufrufe in 1 Block
- 3. IBM Watson IoT-Plattform: Fehlende Funktion im Geräteverwaltungs-Framework?
- 4. Historian Gerätedaten in Watson IoT Platform visualisieren: Problem
- 5. IBM Watson IoT-Plattform: historische Daten sind leer
- 6. Verwenden von Mosquitto zum Experimentieren mit dem Watson Iot-Plattformdienst
- 7. Arduino verbindet sich nicht mit Watson IoT mit MQTT
- 8. Verbinden von IBM Containern (Dockers) mit der Watson IoT-Dienstinstanz
- 9. IOT, Raspberry Pi, Windows IOT
- 10. Themen, Geräte und Anwendung auf Watson
- 11. Warum funktioniert die mqtt-Verbindung über 1883-Port zur IBM Watson IoT Platform nicht?
- 12. Anschluss ibm Bluemix watson IoT mit erlang MQTT websocket Client auf Port 443
- 13. Was passiert, wenn ich den Job mehrmals in IBM Watson IoT Driver Insights einreiche?
- 14. So überprüfen Sie die vom registrierten Gerät empfangene Nachricht nur in IBM Watson IOT- Knoten Rot
- 15. Es werden keine Ereignisinformationen mit der queryEvent-REST-API in IBM Watson IoT Map Insights zurückgegeben
- 16. Wie kann ich die einzelnen Gerätedaten des Gateways im IBM-Watson-IoT-Dashboard anzeigen?
- 17. Kann ich eine Cloudant Db mit Watson Iot von der Befehlszeile auf Bluemix verbinden?
- 18. Android App zum Zugriff auf JSON-Daten von IBM Bluemix IoT Watson Cloud-Plattform
- 19. Warum kann ich keine Daten von Historian in Bluemix Watson IoT Platform abrufen?
- 20. Azure IOT Suites vs IOT Hubs
- 21. Watson Knowledge Studio Integration mit Watson Discovery
- 22. Watson Sprachidentifikation
- 23. Watson Konversationskontext
- 24. Watson Serviceinformationen
- 25. IEnumerable Wiederholungen Funktion
- 26. PostgreSQL-Kombinationen ohne Wiederholungen
- 27. Datenbank Normalisierung mehrere Wiederholungen
- 28. Netty: ClientBootstrap connect Wiederholungen
- 29. Max Wiederholungen überschritten - Elasticsearch
- 30. Wiederholungen eines Strings