TsgcWSPServer_sgc › Properties › QoS
QoS Eigenschaft
Quality-of-Service-Optionen (Level, Interval, Timeout) für die bestätigte Zustellung.
Syntax
property QoS: TsgcWSQoS_Options read FQoS write SetQoS;
Standardwert
—
Hinweise
Es werden drei Zustellgarantien unterstützt, äquivalent zum MQTT-Modell:
- Level 0 — "At most once": Vom Server gesendete Nachrichten werden nach bestem Bemühen über TCP zugestellt, ohne Wiederholung und ohne Bestätigung.
- Level 1 — "At least once": ausgehende Nachrichten tragen eine Id; der Server behält sie in einer ausstehenden Liste und sendet sie erneut, wenn der Client nicht innerhalb von Timeout Sekunden bestätigt. Duplikate werden anhand der Id erkannt.
- Level 2 — "Genau einmal": der Server führt einen zweistufigen PubRec/PubRel-Handshake durch, bevor er die Nachricht für die Abonnenten freigibt. Verwenden Sie dies für Operationen, bei denen doppelte oder verlorene Nachrichten nicht akzeptabel sind.
Interval steuert, wie oft der interne QoS-Timer ausstehende Nachrichten scannt; Timeout ist die Anzahl der Sekunden ohne Bestätigung, nach denen eine Nachricht erneut an den Client gesendet wird.
Beispiel
oProtocol.QoS.Level := qosLevel1;
oProtocol.QoS.Interval := 60;
oProtocol.QoS.Timeout := 300;
Zurück zu Eigenschaften