TsgcWSPClient_sgc › Eigenschaften › 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 — "Höchstens einmal": Die Nachricht wird nach bestem Bemühen über TCP ohne Wiederholung und ohne Bestätigung zugestellt. Sie kommt einmal oder gar nicht an.
- Level 1 — "Mindestens einmal": Der Empfang der Nachricht wird mit einem Acknowledgment bestätigt. Wenn das Ack nicht innerhalb von Timeout Sekunden empfangen wird, sendet der Sender die Nachricht erneut; ein Id-Feld ist enthalten, sodass Duplikate erkannt werden können.
- Level 2 — "Genau einmal": Die Nachricht trifft garantiert über einen zweistufigen Handshake genau einmal ein. Verwenden Sie dies für Vorgänge wie Abrechnungen, bei denen doppelte oder verlorene Nachrichten nicht akzeptabel sind.
Interval steuert, wie oft der interne QoS-Timer ausstehende Nachrichten durchsucht; Timeout ist die Anzahl der Sekunden ohne Bestätigung, nach denen eine Nachricht erneut gesendet wird.
Beispiel
oProtocol.QoS.Level := qosLevel1;
oProtocol.QoS.Interval := 60;
oProtocol.QoS.Timeout := 300;
Zurück zu Eigenschaften