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.
Erstellen eines Links zum Senden von Anforderungen
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>" }
)
Erstellen eines Links zum Empfangen von Antworten
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: