Freigeben über


AMQP 1.0 in Microsoft Azure Service Bus: anforderungs-/antwortbasierte Vorgänge

In diesem Artikel wird die Liste der anforderungs-/antwortbasierten Vorgänge in Microsoft Azure Service Bus definiert. Diese Informationen basieren auf dem Entwurf der AMQP Management Version 1.0.

Eine ausführliche Anleitung zum AMQP 1.0-Wire-Protokoll, die erläutert, wie Service Bus die technische Spezifikation für OASIS AMQP implementiert und darauf aufbaut, finden Sie unter AMQP 1.0 in Azure Service Bus and Event Hubs protocol guide (AMQP 1.0 in Azure Service Bus und Event Hubs – Protokollleitfaden).

Konzepte

ServiceBusReceivedMessage / ServiceBusMessage

Stellt eine Nachricht in Service Bus dar, die einer AMQP-Nachricht zugeordnet ist. Die Zuordnung wird im Service Bus AMQP-Protokollhandbuch definiert.

Hinzufügen zum Entitätsverwaltungsknoten

Alle in diesem Dokument beschriebenen Vorgänge folgen einem Anforderungs-/Antwortmuster, beziehen sich auf eine Entität und erfordern das Hinzufügen zu einem Entitätsverwaltungsknoten.

Erstellt einen Link zum Verwaltungsknoten zum Senden von Anforderungen

requestLink = session.attach(
role: SENDER,
   	target: { address: "<entity address>/$management" },
   	source: { address: ""<my request link unique address>" }
)

Erstellt einen Link zum Empfangen von Antworten vom Verwaltungsknoten

responseLink = session.attach(
role: RECEIVER,
	source: { address: "<entity address>/$management" }
   	target: { address: "<my response link unique address>" }
)

Übertragen einer Anforderungsnachricht

Überträgt eine Anforderungsnachricht
Ein Transaktionsstatus kann optional für Vorgänge hinzugefügt werden, die Transaktionen unterstützen.

requestLink.sendTransfer(
        Message(
                properties: {
                        message-id: <request id>,
                        reply-to: "<my response link unique address>"
                },
                application-properties: {
                        "operation" -> "<operation>",
                }
        ),
        [Optional] State = transactional-state: {
                txn-id: <txn-id>
        }
)

Empfangen einer Antwortnachricht

Empfängt die Antwortnachricht über den Antwortlink

responseMessage = responseLink.receiveTransfer()

Die Antwortnachricht hat folgende Form:

Message(
properties: {
		correlation-id: <request id>
	},
	application-properties: {
			"statusCode" -> <status code>,
			"statusDescription" -> <status description>,
           },
)

Adresse der Service Bus-Entität

Service Bus-Entitäten müssen wie folgt adressiert werden:

Entitätstyp Adresse Beispiel
queue <queue_name> “myQueue”

“site1/myQueue”
topic <topic_name> “myTopic”

“site2/page1/myQueue”
Abonnement <topic_name>/Subscriptions/<subscription_name> “myTopic/Subscriptions/MySub”

Nachrichtenvorgänge

Erneuerung der Nachrichtensperrung auf Nachrichtenebene

Erweitert die Sperre einer Nachricht um die für die Warteschlange oder das Abonnement festgelegte Sperrdauer.

Anforderung

Die Anforderungsnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
operation Zeichenfolge Ja com.microsoft:renew-lock
com.microsoft:server-timeout uint Nein Timeout des für „operation“ zuständigen Servers in Millisekunden

Der Nachrichtentext der Anforderung muss aus einem amqp-value-Abschnitt bestehen, der eine Zuordnung zu den folgenden Einträgen enthält:

Schlüssel Werttyp Erforderlich Wertinhalt
lock-tokens UUID-Array Ja Zu erneuernde Token für die Nachrichtensperre

Hinweis

Das Sperrtoken bezieht sich hier auf die delivery-tag-Eigenschaft für die empfangene AMQP-Nachricht. Wenn Sie eine verzögerte Nachricht erhalten haben und ihre Sperre erneuern möchten, verwenden Sie die lock-token-Eigenschaft für die Nachricht anstelle von delivery-tag.

Antwort

Die Antwortnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
statusCode INT Ja HTTP-Antwortcode [RFC2616]

200: OK – Erfolg, andernfalls fehlgeschlagen
statusDescription Zeichenfolge Nein Beschreibung des Status

Der Nachrichtentext der Antwort muss aus einem amqp-value-Abschnitt bestehen, der eine Zuordnung zu den folgenden Einträgen enthält:

Schlüssel Werttyp Erforderlich Wertinhalt
expirations Timestamp-Array Ja Neues Verfallsdatum für Token der Nachrichtensperre gemäß dem Sperrtoken der Anfrage.

Nachricht einsehen

Ermöglicht das Einsehen von Nachrichten ohne Sperren

Anforderung

Die Anforderungsnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
operation Zeichenfolge Ja com.microsoft:peek-message
com.microsoft:server-timeout uint Nein Timeout des für „operation“ zuständigen Servers in Millisekunden

Der Nachrichtentext der Anforderung muss aus einem amqp-value-Abschnitt bestehen, der eine Zuordnung zu den folgenden Einträgen enthält:

Schlüssel Werttyp Erforderlich Wertinhalt
from-sequence-number long Ja Die Sequenznummer, von der aus das Einsehen gestartet wird
message-count INT Ja Die maximale Anzahl von einsehbaren Nachrichten

Antwort

Die Antwortnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
statusCode INT Ja HTTP-Antwortcode [RFC2616]

200: OK – verfügt über weitere Nachrichten

204: Kein Inhalt – keine weiteren Nachrichten
statusDescription Zeichenfolge Nein Beschreibung des Status

Der Nachrichtentext der Antwort muss aus einem amqp-value-Abschnitt bestehen, der eine Zuordnung zu den folgenden Einträgen enthält:

Schlüssel Werttyp Erforderlich Wertinhalt
Cloud an das Gerät Liste der Zuordnungen Ja Liste der Nachrichten, in denen jede Zuordnung eine Nachricht darstellt.

Die Zuordnung, die eine Nachricht darstellt, muss die folgenden Einträge enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
message Byte-Array Ja AMQP 1.0 Wire-Encoding-Nachricht

Nachricht planen

Plant Nachrichten Dieser Vorgang unterstützt die Transaktion.

Anforderung

Die Anforderungsnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
operation Zeichenfolge Ja com.microsoft:schedule-message
com.microsoft:server-timeout uint Nein Timeout des für „operation“ zuständigen Servers in Millisekunden

Der Nachrichtentext der Anforderung muss aus einem amqp-value-Abschnitt bestehen, der eine Zuordnung zu den folgenden Einträgen enthält:

Schlüssel Werttyp Erforderlich Wertinhalt
Cloud an das Gerät Liste der Zuordnungen Ja Liste der Nachrichten, in denen jede Zuordnung eine Nachricht darstellt.

Die Zuordnung, die eine Nachricht darstellt, muss die folgenden Einträge enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
message-id Zeichenfolge Ja amqpMessage.Properties.MessageId als Zeichenfolge
session-id Zeichenfolge Nein amqpMessage.Properties.GroupId as string
partition-key Zeichenfolge Nein amqpMessage.MessageAnnotations.”x-opt-partition-key"
via-partition-key Zeichenfolge Nein amqpMessage.MessageAnnotations."x-opt-via-partition-key"
message Byte-Array Ja AMQP 1.0 Wire-Encoding-Nachricht

Antwort

Die Antwortnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
statusCode INT Ja HTTP-Antwortcode [RFC2616]

200: OK – Erfolg, andernfalls fehlgeschlagen
statusDescription Zeichenfolge Nein Beschreibung des Status

Der Nachrichtentext der Antwort muss aus einem amqp-value-Abschnitt bestehen, der eine Zuordnung zu den folgenden Einträgen enthält:

Schlüssel Werttyp Erforderlich Wertinhalt
sequence-numbers Long-Array Ja Sequenznummer der geplanten Nachrichten. Sequenznummer wird zum Abbrechen verwendet.

Geplante Nachricht abbrechen

Bricht geplante Nachrichten ab

Anforderung

Die Anforderungsnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
operation Zeichenfolge Ja com.microsoft:cancel-scheduled-message
com.microsoft:server-timeout uint Nein Timeout des für „operation“ zuständigen Servers in Millisekunden

Der Nachrichtentext der Anforderung muss aus einem amqp-value-Abschnitt bestehen, der eine Zuordnung zu den folgenden Einträgen enthält:

Schlüssel Werttyp Erforderlich Wertinhalt
sequence-numbers Long-Array Ja Sequenznummern der abzubrechenden, geplanten Nachrichten

Antwort

Die Antwortnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
statusCode INT Ja HTTP-Antwortcode [RFC2616]

200: OK – Erfolg, andernfalls fehlgeschlagen
statusDescription Zeichenfolge Nein Beschreibung des Status

Sitzungsvorgänge

Erneuerung der Nachrichtensperrung auf Sitzungsebene

Erweitert die Sperre einer Nachricht um die für die Warteschlange oder das Abonnement festgelegte Sperrdauer.

Anforderung

Die Anforderungsnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
operation Zeichenfolge Ja com.microsoft:renew-session-lock
com.microsoft:server-timeout uint Nein Timeout des für „operation“ zuständigen Servers in Millisekunden

Der Nachrichtentext der Anforderung muss aus einem amqp-value-Abschnitt bestehen, der eine Zuordnung zu den folgenden Einträgen enthält:

Schlüssel Werttyp Erforderlich Wertinhalt
session-id Zeichenfolge Ja Sitzungs-ID.

Antwort

Die Antwortnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
statusCode INT Ja HTTP-Antwortcode [RFC2616]

200: OK – verfügt über weitere Nachrichten

204: Kein Inhalt – keine weiteren Nachrichten
statusDescription Zeichenfolge Nein Beschreibung des Status

Der Nachrichtentext der Antwort muss aus einem amqp-value-Abschnitt bestehen, der eine Zuordnung zu den folgenden Einträgen enthält:

Schlüssel Werttyp Erforderlich Wertinhalt
expiration timestamp Ja Neuer Ablauf

Sitzungsnachricht einsehen

Ermöglicht das Einsehen von Sitzungsnachrichten ohne Sperren

Anforderung

Die Anforderungsnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
operation Zeichenfolge Ja com.microsoft:peek-message
com.microsoft:server-timeout uint Nein Timeout des für „operation“ zuständigen Servers in Millisekunden

Der Nachrichtentext der Anforderung muss aus einem amqp-value-Abschnitt bestehen, der eine Zuordnung zu den folgenden Einträgen enthält:

Schlüssel Werttyp Erforderlich Wertinhalt
from-sequence-number long Ja Die Sequenznummer, von der aus das Einsehen gestartet wird
message-count INT Ja Die maximale Anzahl von einsehbaren Nachrichten
session-id Zeichenfolge Ja Sitzungs-ID.

Antwort

Die Antwortnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
statusCode INT Ja HTTP-Antwortcode [RFC2616]

200: OK – verfügt über weitere Nachrichten

204: Kein Inhalt – keine weiteren Nachrichten
statusDescription Zeichenfolge Nein Beschreibung des Status

Der Nachrichtentext der Antwort muss aus einem amqp-value-Abschnitt bestehen, der eine Zuordnung zu den folgenden Einträgen enthält:

Schlüssel Werttyp Erforderlich Wertinhalt
Cloud an das Gerät Liste der Zuordnungen Ja Liste der Nachrichten, in denen jede Zuordnung eine Nachricht darstellt.

Die Zuordnung, die eine Nachricht darstellt, muss die folgenden Einträge enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
message Byte-Array Ja AMQP 1.0 Wire-Encoding-Nachricht

Sitzungsstatus festlegen

Legt den Status einer Sitzung fest

Anforderung

Die Anforderungsnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
operation Zeichenfolge Ja com.microsoft:set-session-state
com.microsoft:server-timeout uint Nein Timeout des für „operation“ zuständigen Servers in Millisekunden

Der Nachrichtentext der Anforderung muss aus einem amqp-value-Abschnitt bestehen, der eine Zuordnung zu den folgenden Einträgen enthält:

Schlüssel Werttyp Erforderlich Wertinhalt
session-id Zeichenfolge Ja Sitzungs-ID.
session-state Byte-Array Ja Nicht transparente Binärdaten

Antwort

Die Antwortnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
statusCode INT Ja HTTP-Antwortcode [RFC2616]

200: OK – Erfolg, andernfalls fehlgeschlagen
statusDescription Zeichenfolge Nein Beschreibung des Status

Sitzungsstatus abrufen

Ruft den Status einer Sitzung ab

Anforderung

Die Anforderungsnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
operation Zeichenfolge Ja com.microsoft:get-session-state
com.microsoft:server-timeout uint Nein Timeout des für „operation“ zuständigen Servers in Millisekunden

Der Nachrichtentext der Anforderung muss aus einem amqp-value-Abschnitt bestehen, der eine Zuordnung zu den folgenden Einträgen enthält:

Schlüssel Werttyp Erforderlich Wertinhalt
session-id Zeichenfolge Ja Sitzungs-ID.

Antwort

Die Antwortnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
statusCode INT Ja HTTP-Antwortcode [RFC2616]

200: OK – Erfolg, andernfalls fehlgeschlagen
statusDescription Zeichenfolge Nein Beschreibung des Status

Der Nachrichtentext der Antwort muss aus einem amqp-value-Abschnitt bestehen, der eine Zuordnung zu den folgenden Einträgen enthält:

Schlüssel Werttyp Erforderlich Wertinhalt
session-state Byte-Array Ja Nicht transparente Binärdaten

Sitzungen aufzählen

Zählt die Sitzungen in einer Nachrichtenentität auf

Anforderung

Die Anforderungsnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
operation Zeichenfolge Ja com.microsoft:get-message-sessions
com.microsoft:server-timeout uint Nein Timeout des für „operation“ zuständigen Servers in Millisekunden

Der Nachrichtentext der Anforderung muss aus einem amqp-value-Abschnitt bestehen, der eine Zuordnung zu den folgenden Einträgen enthält:

Schlüssel Werttyp Erforderlich Wertinhalt
last-updated-time timestamp Ja Filtern Sie, um nur nach einem bestimmten Zeitpunkt aktualisierte Sitzungen einzuschließen.
skip INT Ja Überspringen von Sitzungen
top INT Ja Maximale Sitzungsanzahl

Hinweis

Wenn Sie LastUpdatedTime auf DateTime.MaxValue (in .NET) festlegen, gibt die Enumerate Sessions-Methode alle Sitzungen zurück, unabhängig davon, ob sie über einen Status verfügen oder nicht. DateTime.MaxValue in .NET ist in anderen Programmiersprachen möglicherweise nicht vorhanden. Verwenden Sie in solchen Fällen einen Zeitstempel, der den 253402300800000 Millisekunden der Epoche entspricht (1. Januar 1970, 00:00:00 GMT), die DateTime.MaxValue in .NET entspricht.

Antwort

Die Antwortnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
statusCode INT Ja HTTP-Antwortcode [RFC2616]

200: OK – verfügt über weitere Nachrichten

204: Kein Inhalt – keine weiteren Nachrichten
statusDescription Zeichenfolge Nein Beschreibung des Status

Der Nachrichtentext der Antwort muss aus einem amqp-value-Abschnitt bestehen, der eine Zuordnung zu den folgenden Einträgen enthält:

Schlüssel Werttyp Erforderlich Wertinhalt
skip INT Ja Anzahl der übersprungenen Sitzungen, wenn der Statuscode 200 lautet
sessions-ids array of strings Ja Array von Sitzungs-IDs, wenn der Statuscode 200 lautet

Regelvorgänge

Regel hinzufügen

Anforderung

Die Anforderungsnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
operation Zeichenfolge Ja com.microsoft:add-rule
com.microsoft:server-timeout uint Nein Timeout des für „operation“ zuständigen Servers in Millisekunden

Der Nachrichtentext der Anforderung muss aus einem amqp-value-Abschnitt bestehen, der eine Zuordnung zu den folgenden Einträgen enthält:

Schlüssel Werttyp Erforderlich Wertinhalt
rule-name Zeichenfolge Ja Regelname, außer Abonnement- und Themennamen
rule-description map Ja Die Regelbeschreibung entsprechend den Angaben im nächsten Abschnitt

Die Zuordnung rule-description muss die folgenden Einträge enthalten, in denen sql-filter und correlation-filter sich gegenseitig ausschließen:

Schlüssel Werttyp Erforderlich Wertinhalt
sql-filter map Ja sql-filter, wie im nächsten Abschnitt angegeben
correlation-filter map Ja correlation-filter, wie im nächsten Abschnitt angegeben
sql-rule-action map Ja sql-rule-action, wie im nächsten Abschnitt angegeben

Die Zuordnung „sql-filter“ muss die folgenden Einträge enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
expression Zeichenfolge Ja SQL-Filterausdruck

Die Zuordnung correlation-filter muss mindestens einen der folgenden Einträge enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
correlation-id Zeichenfolge No
message-id Zeichenfolge Nein
zu Zeichenfolge No
reply-to Zeichenfolge No
label Zeichenfolge No
session-id Zeichenfolge No
reply-to-session-id Zeichenfolge No
content-type Zeichenfolge No
properties Karte Nein Maps zu Service Bus BrokeredMessage.Properties

Die Zuordnung sql-rule-action muss die folgenden Einträge enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
expression Zeichenfolge Ja SQL-Aktionsausdruck.

Antwort

Die Antwortnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
statusCode INT Ja HTTP-Antwortcode [RFC2616]

200: OK – Erfolg, andernfalls fehlgeschlagen
statusDescription Zeichenfolge Nein Beschreibung des Status

Regel entfernen

Anforderung

Die Anforderungsnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
operation Zeichenfolge Ja com.microsoft:remove-rule
com.microsoft:server-timeout uint Nein Timeout des für „operation“ zuständigen Servers in Millisekunden

Der Nachrichtentext der Anforderung muss aus einem amqp-value-Abschnitt bestehen, der eine Zuordnung zu den folgenden Einträgen enthält:

Schlüssel Werttyp Erforderlich Wertinhalt
rule-name Zeichenfolge Ja Regelname, außer Abonnement- und Themennamen

Antwort

Die Antwortnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
statusCode INT Ja HTTP-Antwortcode [RFC2616]

200: OK – Erfolg, andernfalls fehlgeschlagen
statusDescription Zeichenfolge Nein Beschreibung des Status

Regeln zum Abrufen

Anforderung

Die Anforderungsnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
operation Zeichenfolge Ja com.microsoft:enumerate-rules
com.microsoft:server-timeout uint Nein Timeout des für „operation“ zuständigen Servers in Millisekunden

Der Nachrichtentext der Anforderung muss aus einem amqp-value-Abschnitt bestehen, der eine Zuordnung zu den folgenden Einträgen enthält:

Schlüssel Werttyp Erforderlich Wertinhalt
top INT Ja Die Anzahl der auf der Seite abzurufenden Regeln.
skip INT Ja Die Anzahl der auszulassenden Regeln. Definiert den Startindex (+ 1) auf der Liste der Regeln.

Antwort

Die Antwortnachricht umfasst die folgenden Eigenschaften:

Schlüssel Werttyp Erforderlich Wertinhalt
statusCode INT Ja HTTP-Antwortcode [RFC2616]

200: OK – Erfolg, andernfalls fehlgeschlagen
rules Liste der Zuordnungen Ja Liste der Regeln. Jede Regel wird durch eine Zuordnung dargestellt.

Jeder Zuordnungseintrag in der Liste enthält die folgenden Eigenschaften:

Schlüssel Werttyp Erforderlich Wertinhalt
rule-description Beschriebenes Objekt Ja com.microsoft:rule-description mit AMQP beschriebener Code 0x0000013700000004

com.microsoft.rule-description selbst ist eine beschriebene Liste. Es stehen folgende Eigenschaften zur Verfügung:

Index Werttyp Erforderlich Wertinhalt
0 Beschriebene Liste Ja filter, wie in der nächsten Tabelle angegeben.
1 Beschriebene Liste Ja ruleAction wie weiter unten in diesem Abschnitt angegeben.
2 Zeichenfolge Ja Name der Regel.
3 timestamp Ja Zeitstempel.

filter kann einen der folgenden Typen aufweisen:

Deskriptorname Deskriptorcode Wert
com.microsoft:sql-filter:list 0x000001370000006 SQL-Filter
com.microsoft:correlation-filter:list 0x000001370000009 Korrelationsfilter
com.microsoft:true-filter:list 0x000001370000007 True-Filter, der 1=1 darstellt
com.microsoft:false-filter:list 0x000001370000008 False-Filter, der 1=0 darstellt

com.microsoft:sql-filter:list ist eine beschriebene Liste, die Folgendes enthält:

Index Werttyp Erforderlich Wertinhalt
0 Zeichenfolge Ja SQL-Filterausdruck
1 INT Ja Immer 20. Diese ganze Zahl ist der Kompatibilitätsgrad des SQL-Filters. Sie gibt die Syntaxversion des SQL-Filters an.

com.microsoft:correlation-filter:list ist eine beschriebene Liste, die Folgendes enthält:

Index (falls vorhanden) Werttyp Wertinhalt
0 Zeichenfolge Korrelations-ID
1 Zeichenfolge Meldungs-ID
2 Zeichenfolge Beschreibung
3 Zeichenfolge Antworten an
4 Zeichenfolge Bezeichnung
5 Zeichenfolge Sitzungs-ID
6 Zeichenfolge Antwort an Sitzungs-ID
7 Zeichenfolge Inhaltstyp
8 Zuordnung Zuordnung der Anwendung definierter Eigenschaften

ruleAction kann einer der folgenden Typen sein:

Deskriptorname Deskriptorcode Wert
com.microsoft:empty-rule-action:list 0x0000013700000005 Aktion bei leerer Regel – keine Regelaktion vorhanden
com.microsoft:sql-rule-action:list 0x0000013700000006 SQL-Regelaktion

com.microsoft:sql-rule-action:list ist eine beschriebene Liste mit zwei Elementen.

Index Werttyp Erforderlich Wertinhalt
0 Zeichenfolge Ja Ausdruck der SQL-Regelaktion
1 INT Ja Immer 20. Diese ganze Zahl ist der Kompatibilitätsgrad des SQL-Filters. Sie gibt die Syntaxversion des SQL-Filters an.

Vorgänge zurückgestellter Nachrichten

Nach Sequenznummer empfangen

Empfängt Vorgänge zurückgestellter Nachrichten nach Sequenznummer

Anforderung

Die Anforderungsnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
operation Zeichenfolge Ja com.microsoft:receive-by-sequence-number
com.microsoft:server-timeout uint Nein Timeout des für „operation“ zuständigen Servers in Millisekunden

Der Nachrichtentext der Anforderung muss aus einem amqp-value-Abschnitt bestehen, der eine Zuordnung zu den folgenden Einträgen enthält:

Schlüssel Werttyp Erforderlich Wertinhalt
sequence-numbers Long-Array Yes Sequenznummern
receiver-settle-mode ubyte Yes Behandlungsrichtline des Empfängers den Angaben in AMQP Core v1.0 entsprechend.

Antwort

Die Antwortnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
statusCode INT Ja HTTP-Antwortcode [RFC2616]

200: OK – Erfolg, andernfalls fehlgeschlagen
statusDescription Zeichenfolge Nein Beschreibung des Status

Der Nachrichtentext der Antwort muss aus einem amqp-value-Abschnitt bestehen, der eine Zuordnung zu den folgenden Einträgen enthält:

Schlüssel Werttyp Erforderlich Wertinhalt
Cloud an das Gerät Liste der Zuordnungen Yes Liste der Nachrichten, in denen jede Zuordnung eine Nachricht darstellt

Die Zuordnung, die eine Nachricht darstellt, muss die folgenden Einträge enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
lock-token uuid Ja Token sperren, wenn receiver-settle-mode 1 beträgt
message Byte-Array Ja AMQP 1.0 Wire-Encoding-Nachricht

Dispositionsstatus aktualisieren

Aktualisiert den Dipositionsstatus zurückgestellter Nachrichten Dieser Vorgang unterstützt Transaktionen.

Anforderung

Die Anforderungsnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
operation Zeichenfolge Ja com.microsoft:update-disposition
com.microsoft:server-timeout uint Nein Timeout des für „operation“ zuständigen Servers in Millisekunden

Der Nachrichtentext der Anforderung muss aus einem amqp-value-Abschnitt bestehen, der eine Zuordnung zu den folgenden Einträgen enthält:

Schlüssel Werttyp Erforderlich Wertinhalt
disposition-status Zeichenfolge Ja completed

Vorzeitig beendet

Angehalten
lock-tokens UUID-Array Yes Sperrtoken-Nachricht, um den Dispositionsstatus zu aktualisieren.
deadletter-reason Zeichenfolge No Ist festgelegt, wenn der Dispositionsstatus auf angehalten festgelegt wird.
deadletter-description Zeichenfolge No Ist festgelegt, wenn der Dispositionsstatus auf angehalten festgelegt wird.
properties-to-modify Karte No Liste zu ändernder Eigenschaften der im Broker gespeicherten Service Bus-Nachrichten.

Antwort

Die Antwortnachricht muss die folgenden Anwendungseigenschaften enthalten:

Schlüssel Werttyp Erforderlich Wertinhalt
statusCode INT Ja HTTP-Antwortcode [RFC2616]

200: OK – Erfolg, andernfalls fehlgeschlagen
statusDescription Zeichenfolge Nein Beschreibung des Status

Nächste Schritte

Klicken Sie auf die folgenden Links, um mehr über AMQP und Service Bus zu erfahren: