IoT Hub-gegevensvlak MQTT 5 API-verwijzing (afgeschaft)
In dit document worden bewerkingen gedefinieerd die beschikbaar zijn in versie 2.0 (api-versie: 2020-10-01-preview
) van ioT Hub-gegevensvlak-API.
Notitie
MQTT 5-ondersteuning in IoT Hub is afgeschaft en IoT Hub heeft beperkte functieondersteuning voor MQTT. Als voor uw oplossing MQTT v3.1.1- of v5-ondersteuning nodig is, wordt MQTT-ondersteuning aanbevolen in Azure Event Grid. Zie MQTT-ondersteuning vergelijken in IoT Hub en Event Grid voor meer informatie.
Operations
Dubbel ophalen
Status van dubbel ophalen
Aanvraag
Onderwerpnaam: $iothub/twin/get
Eigenschappen: geen
Nettolading: leeg
Geslaagd antwoord
Eigenschappen: geen
Nettolading: dubbel
Alternatieve antwoorden
Status | Name | Beschrijving |
---|---|---|
0100 | Onjuiste aanvraag | Het bewerkingsbericht is ongeldig en kan niet worden verwerkt. |
0101 | Niet gemachtigd | Client is niet gemachtigd om de bewerking uit te voeren. |
0102 | Niet toegestaan | Bewerking is niet toegestaan. |
0501 | Beperkt | aanvraagsnelheid is te hoog per SKU |
0502 | Quotum overschreden | dagelijks quotum per huidige SKU wordt overschreden |
0601 | Serverfout | interne serverfout |
0602 | Timeout | er is een time-out opgetreden voordat de bewerking kon worden voltooid |
0603 | Server bezet | server bezet |
Voorbeeld van pseudocode
-> PUBLISH
QoS: 0
Topic: $iothub/twin/get
<- PUBLISH
QoS: 0
Topic: $iothub/responses
Gerapporteerde patchdubbel
Gerapporteerde status van patchdubbel
Aanvraag
Onderwerpnaam: $iothub/twin/patch/reported
Eigenschappen:
Name | Type | Vereist | Beschrijving |
---|---|---|---|
if-version | u64 | nee |
Payload: TwinState
Geslaagd antwoord
Eigenschappen:
Name | Type | Vereist | Beschrijving |
---|---|---|---|
version | u64 | ja | Versie van gerapporteerde status nadat de patch is toegepast |
Nettolading: leeg
Alternatieve antwoorden
Status | Name | Beschrijving |
---|---|---|
0104 | Voorwaarde is mislukt | voorwaarde is niet voldaan, waardoor de aanvraag wordt geannuleerd |
0100 | Onjuiste aanvraag | Het bewerkingsbericht is ongeldig en kan niet worden verwerkt. |
0101 | Niet gemachtigd | Client is niet gemachtigd om de bewerking uit te voeren. |
0102 | Niet toegestaan | Bewerking is niet toegestaan. |
0501 | Beperkt | aanvraagsnelheid is te hoog per SKU |
0502 | Quotum overschreden | dagelijks quotum per huidige SKU wordt overschreden |
0601 | Serverfout | interne serverfout |
0602 | Timeout | er is een time-out opgetreden voordat de bewerking kon worden voltooid |
0603 | Server bezet | server bezet |
Voorbeeld van pseudocode
-> PUBLISH
QoS: 0
Topic: $iothub/twin/patch/reported
[if-version: <u64>]
<- PUBLISH
QoS: 0
Topic: $iothub/responses
Opdrachten ontvangen
Opdrachten ontvangen en afhandelen
Bericht
Onderwerpnaam: $iothub/commands
Eigenschappen:
Name | Type | Vereist | Beschrijving |
---|---|---|---|
reeks-nee | u64 | ja | Volgnummer van het bericht |
enqueued-time | tijd | ja | Tijdstempel van wanneer het bericht het systeem heeft ingevoerd |
leveringsaantal | u32 | ja | Aantal keren dat de bezorging van het bericht is geprobeerd |
aanmaaktijd | tijd | nee | Tijdstempel van het moment waarop het bericht is gemaakt (geleverd door de afzender) |
message-id | tekenreeks | nee | Berichtidentiteit (geleverd door afzender) |
user-id | tekenreeks | nee | Gebruikersidentiteit (geleverd door afzender) |
correlatie-id | tekenreeks | nee | Correlatie-identiteit (geleverd door afzender) |
Inhoudstype | tekenreeks | nee | bepaalt het inhoudstype van de nettolading |
inhoudscodering | tekenreeks | nee | bepaalt inhoudscodering van de nettolading |
Nettolading: elke bytereeks
Bevestiging van geslaagde bewerking
Geeft aan dat de opdracht is geaccepteerd voor verwerking door de client
Eigenschappen: geen
Nettolading: leeg
Alternatieve bevestigingen
Redencode | Status | Name | Beschrijving |
---|---|---|---|
131 | 0603 | Afbreken | Geeft aan dat de opdracht op dit moment niet wordt verwerkt en in de toekomst opnieuw moet worden verzonden. |
131 | 0100 | Verwerpen | Geeft aan dat de client de opdracht heeft afgewezen en dat deze niet opnieuw moet worden geprobeerd. |
Voorbeeld van pseudocode
-> SUBSCRIBE
- Topic: $iothub/commands
QoS: 1
<- PUBLISH
QoS: 1
Topic: $iothub/commands
sequence-no: <u64>enqueued-time: <time>delivery-count: <u32>[creation-time: <time>][message-id: <string>][user-id: <string>][correlation-id: <string>][Content Type: <string>][content-encoding: <string>]
Payload: ...
-> PUBACK
Directe methoden ontvangen
Directe methode-aanroepen ontvangen en afhandelen
Aanvraag
Onderwerpnaam: $iothub/methods/{name}
Eigenschappen: geen
Nettolading: elke bytereeks
Geslaagd antwoord
Eigenschappen:
Name | Type | Vereist | Beschrijving |
---|---|---|---|
response-code | u32 | ja |
Nettolading: elke bytereeks
Alternatieve antwoorden
Status | Name | Beschrijving |
---|---|---|
06A0 | Niet beschikbaar | Geeft aan dat de client niet bereikbaar is via deze verbinding. |
Voorbeeld van pseudocode
-> SUBSCRIBE
- Topic: methods/{name}
QoS: 0
<- SUBACK
<- PUBLISH
QoS: 0
Topic: $iothub/methods/{name}
-> PUBLISH
QoS: 0
Topic: $iothub/responses
Gewenste statuswijzigingen ontvangen
Updates ontvangen voor de gewenste status van Twin
Bericht
Onderwerpnaam: $iothub/twin/patch/desired
Eigenschappen:
Name | Type | Vereist | Beschrijving |
---|---|---|---|
version | u64 | ja | Versie van de gewenste status die overeenkomt met deze update |
Payload: TwinState
Voorbeeld van pseudocode
-> SUBSCRIBE
- Topic: $iothub/twin/patch/desired
QoS: 0
<- PUBLISH
QoS: 0
Topic: $iothub/twin/patch/desired
version: <u64>
Payload: ...
Telemetrie verzenden
Bericht posten naar telemetriekanaal - Event Hubs standaard of een ander eindpunt via routeringsconfiguratie.
Bericht
Onderwerpnaam: $iothub/telemetry
Eigenschappen:
Name | Type | Vereist | Beschrijving |
---|---|---|---|
Inhoudstype | tekenreeks | nee | wordt omgezet in content-type systeemeigenschap bij gepost bericht |
inhoudscodering | tekenreeks | nee | wordt omgezet in content-encoding systeemeigenschap bij gepost bericht |
message-id | tekenreeks | nee | wordt omgezet in message-id systeemeigenschap bij gepost bericht |
user-id | tekenreeks | nee | wordt omgezet in user-id systeemeigenschap bij gepost bericht |
correlatie-id | tekenreeks | nee | wordt omgezet in correlation-id systeemeigenschap bij gepost bericht |
aanmaaktijd | tijd | nee | wordt omgezet in iothub-creation-time-utc eigenschap op gepost bericht |
Tip
De notatie moet creation-time
UTC zijn zonder tijdzonegegevens. Is bijvoorbeeld 2021-04-21T11:30:16Z
geldig, 2021-04-21T11:30:16-07:00
is ongeldig.
Nettolading: elke bytereeks
Bevestiging van geslaagde bewerking
Bericht is gepost naar telemetriekanaal
Eigenschappen: geen
Nettolading: leeg
Alternatieve bevestigingen
Redencode | Status | Name | Beschrijving |
---|---|---|---|
131 | 0100 | Onjuiste aanvraag | Het bewerkingsbericht is ongeldig en kan niet worden verwerkt. |
135 | 0101 | Niet gemachtigd | Client is niet gemachtigd om de bewerking uit te voeren. |
131 | 0102 | Niet toegestaan | Bewerking is niet toegestaan. |
131 | 0601 | Serverfout | interne serverfout |
151 | 0501 | Beperkt | aanvraagsnelheid is te hoog per SKU |
151 | 0502 | Quotum overschreden | dagelijks quotum per huidige SKU wordt overschreden |
131 | 0602 | Timeout | er is een time-out opgetreden voordat de bewerking kon worden voltooid |
131 | 0603 | Server bezet | server bezet |
Voorbeeld van pseudocode
-> PUBLISH
QoS: 1
Topic: $iothub/telemetry
[Content Type: <string>]
[content-encoding: <string>]
[message-id: <string>]
[user-id: <string>]
[correlation-id: <string>]
[creation-time: <time>]
<- PUBACK
Antwoorden
Onjuiste aanvraag
Het bewerkingsbericht is ongeldig en kan niet worden verwerkt.
Redencode: 131
Status: 0100
Eigenschappen:
Name | Type | Vereist | Beschrijving |
---|---|---|---|
reason | tekenreeks | nee | bevat informatie over wat specifiek niet geldig is over het bericht |
Nettolading: leeg
Conflict
De bewerking is in conflict met een andere lopende bewerking.
Redencode: 131
Status: 0103
Eigenschappen:
Name | Type | Vereist | Beschrijving |
---|---|---|---|
trace-id | tekenreeks | nee | tracerings-id voor correlatie met andere diagnostische gegevens voor de fout |
reason | tekenreeks | nee | bevat informatie over wat specifiek niet geldig is over het bericht |
Nettolading: leeg
Niet toegestaan
Bewerking is niet toegestaan.
Redencode: 131
Status: 0102
Eigenschappen:
Name | Type | Vereist | Beschrijving |
---|---|---|---|
reason | tekenreeks | nee | bevat informatie over wat specifiek niet geldig is over het bericht |
Nettolading: leeg
Niet gemachtigd
Client is niet gemachtigd om de bewerking uit te voeren.
Redencode: 135
Status: 0101
Eigenschappen:
Name | Type | Vereist | Beschrijving |
---|---|---|---|
trace-id | tekenreeks | nee | tracerings-id voor correlatie met andere diagnostische gegevens voor de fout |
Nettolading: leeg
Niet gevonden
aangevraagde resource bestaat niet
Redencode: 131
Status: 0504
Eigenschappen:
Name | Type | Vereist | Beschrijving |
---|---|---|---|
reason | tekenreeks | nee | bevat informatie over wat specifiek niet geldig is over het bericht |
Nettolading: leeg
Niet gewijzigd
Resource is niet gewijzigd op basis van de opgegeven voorwaarde.
Redencode: 0
Status: 0001
Eigenschappen: geen
Nettolading: leeg
Voorwaarde is mislukt
Voorwaarde is niet voldaan, waardoor de aanvraag wordt geannuleerd
Redencode: 131
Status: 0104
Eigenschappen: geen
Nettolading: leeg
Quotum overschreden
dagelijks quotum per huidige SKU wordt overschreden
Redencode: 151
Status: 0502
Eigenschappen: geen
Nettolading: leeg
Resource uitgeput
resource heeft geen capaciteit om de bewerking te voltooien
Redencode: 131
Status: 0503
Eigenschappen:
Name | Type | Vereist | Beschrijving |
---|---|---|---|
reason | tekenreeks | nee | bevat informatie over wat specifiek niet geldig is over het bericht |
Nettolading: leeg
Server bezet
server bezet
Redencode: 131
Status: 0603
Eigenschappen:
Name | Type | Vereist | Beschrijving |
---|---|---|---|
trace-id | tekenreeks | nee | tracerings-id voor correlatie met andere diagnostische gegevens voor de fout |
Nettolading: leeg
Serverfout
interne serverfout
Redencode: 131
Status: 0601
Eigenschappen:
Name | Type | Vereist | Beschrijving |
---|---|---|---|
trace-id | tekenreeks | nee | tracerings-id voor correlatie met andere diagnostische gegevens voor de fout |
Nettolading: leeg
Doel is mislukt
Doel gereageerd, maar het antwoord is ongeldig of onjuist ingedeeld
Redencode: 131
Status: 06A2
Eigenschappen:
Name | Type | Vereist | Beschrijving |
---|---|---|---|
reason | tekenreeks | nee | bevat informatie over wat specifiek niet geldig is over het bericht |
Nettolading: leeg
Time-out van doel
er is een time-out opgetreden bij het wachten op het doel om de aanvraag te voltooien
Redencode: 131
Status: 06A1
Eigenschappen:
Name | Type | Vereist | Beschrijving |
---|---|---|---|
trace-id | tekenreeks | nee | tracerings-id voor correlatie met andere diagnostische gegevens voor de fout |
reason | tekenreeks | nee | bevat informatie over wat specifiek niet geldig is over het bericht |
Nettolading: leeg
Doel niet beschikbaar
Het doel is onbereikbaar om de aanvraag te voltooien
Redencode: 131
Status: 06A0
Eigenschappen: geen
Nettolading: leeg
Beperkt
aanvraagsnelheid is te hoog per SKU
Redencode: 151
Status: 0501
Eigenschappen: geen
Nettolading: leeg
Timeout
er is een time-out opgetreden voordat de bewerking kon worden voltooid
Redencode: 131
Status: 0602
Eigenschappen:
Name | Type | Vereist | Beschrijving |
---|---|---|---|
trace-id | tekenreeks | nee | tracerings-id voor correlatie met andere diagnostische gegevens voor de fout |
Nettolading: leeg