UNSUBSCRIBE Subskription angegebener Themen kündigen

Eine UNSUBSCRIBE-Nachricht wird vom Client an den Broker gesendet, um die Subskription angegebener Themen zu kündigen.

Fester Header

Die nachfolgende Tabelle zeigt ein Beispiel zum Format des festen Headers.

Bit 7 6 5 4 3 2 1 0
Byte 1 Nachrichtenart (10) DUP-Argument QoS-Stufe RETAIN
  1 0 1 0 0 0 1 x
Byte 2 Verbleibende Länge
QoS-Stufe
Die QoS-Stufe 1 bestätigt mehrere Kündigungsanforderungen. Die entsprechende UNSUBACK-Nachricht wird durch die Nachrichten-ID identifiziert. Wiederholungen werden entsprechend wie PUBLISH-Nachrichten gehandhabt.
DUP-Argument
In diesem Beispiel steht das DUP-Argument auf Null (0) und zeigt somit an, dass die Nachricht zum ersten Mal gesendet wird.

Wenn die Nachricht erneut gesendet wird, weil eine SUBACK-Nachricht nach einer bestimmten Zeitdauer nicht eingetroffen ist, wird das DUP-Bit gesetzt. Es zeigt dem Broker an, dass die Nachricht unter Umständen das Duplikat einer bereits empfangenen Nachricht ist.

RETAIN-Argument
Nicht verwendet.
Verbleibende Länge
Dies ist die Länge der Nutzlast. Dies kann ein Mehrfachbytefeld sein.

Variabler Header

Der variable Header enthält eine Nachrichten-ID, da eine UNSUBSCRIBE-Nachricht die QoS-Stufe 1 hat.

Für gewöhnlich generiert die Protokollbibliothek die Nachrichten-ID und gibt sie an die veröffentlichende Anwendung zurück, beispielsweise als Rückgabe-Handle. Auf diese Weise wird vermieden, dass mehrere Anwendungen oder Veröffentlichungs-Threads auf einem einzelnen Client ausgeführt werden und doppelte Nachrichten-IDs generieren.

Die Nachrichten-ID 0 (0x0000) ist als ungültige Nachrichten-ID reserviert und darf nicht verwendet werden. Die Nachrichten-ID ist eine ganze 16-Bit-Zahl ohne Vorzeichen, die sich üblicherweise mit jeder Nachricht genau um den Wert von 1 erhöht. Dies ist jedoch nicht zwingend erforderlich. Die beiden Bytes der Nachrichten-ID werden in der Reihenfolge MSB, gefolgt von LSB (Big Endian), sortiert.

Die nachfolgende Tabelle zeigt ein Beispielformat des variablen Headers mit der Nachrichten-ID 10.

  Beschreibung: 7 6 5 4 3 2 1 0
Nachrichten-ID
Byte 1 Nachrichten-ID MSB (0) 0 0 0 0 0 0 0 0
Byte 2 Nachrichten-ID LSB (10) 0 0 0 0 1 0 1 0

Nutzlast

Der Client kündigt die Subskription der in der Nutzlast angegebenen Themenliste. Die Zeichenfolgen sind UTF-verschlüsselt und werden zusammenhängend gepackt. Themennamen in einer UNSUBSCRIBE-Nachricht werden nicht komprimiert. Die nachfolgende Tabelle zeigt ein Nutzlast-Beispiel.

Themenname "a/b"
Themenname "c/d"

Die nachfolgende Tabelle zeigt das Format dieser Nutzlast.

  Beschreibung: 7 6 5 4 3 2 1 0
Themenname
Byte 1 Länge MSB (0) 0 0 0 0 0 0 0 0
Byte 2 Länge LSB (3) 0 0 0 0 0 0 1 1
Byte 3 'a' (0x61) 0 1 1 0 0 0 0 1
Byte 4 '/' (0x2F) 0 0 1 0 1 1 1 1
Byte 5 'b' (0x62) 0 1 1 0 0 0 1 0
Themenname
Byte 6 Länge MSB (0) 0 0 0 0 0 0 0 0
Byte 7 Länge LSB (3) 0 0 0 0 0 0 1 1
Byte 8 'c' (0x63) 0 1 1 0 0 0 1 1
Byte 9 '/' (0x2F) 0 0 1 0 1 1 1 1
Byte 10 'd' (0x64) 0 1 1 0 0 1 0 0

Antwort

Der Broker sendet eine UNSUBACK-Nachricht als Antwort auf eine UNSUBSCRIBE-Nachricht an den Client.

Zugehörige Konzepte
WebSphere MQ Telemetry Transport
Bemerkungen | Marken | Downloads | Bibliothek | Unterstützung | Rückmeldung
Copyright IBM Corporation 1999, 2006 Letzte Aktualisierung: 23. Aug. 2006
ac11030_