Megosztás a következőn keresztül:


IoT Hub-adatsík MQTT 5 API-referencia (elavult)

Ez a dokumentum az IoT Hub adatsík API 2.0-s (api-verzió: 2020-10-01-preview) verziójában elérhető műveleteket határozza meg.

Feljegyzés

Az IoT Hub MQTT 5 támogatása elavult, és az IoT Hub korlátozott funkciótámogatással rendelkezik az MQTT-hez. Ha a megoldáshoz MQTT 3.1.1-es vagy v5-ös támogatás szükséges, javasoljuk az MQTT támogatását az Azure Event Gridben. További információ: MQTT-támogatás összehasonlítása az IoT Hubban és az Event Gridben.

Üzemeltetés

Ikerpéldány lekérése

Ikerállapot lekérése

Kérés

Témakör neve: $iothub/twin/get

Tulajdonságok: nincs

Hasznos adat: üres

Sikeres válasz

Tulajdonságok: nincs

Hasznos adat: Ikerpéldány

Alternatív válaszok

Állapot Név Leírás
0100 Hibás kérés A műveleti üzenet helytelenül van formázva, és nem dolgozható fel.
0101 Nem jogosult Az ügyfél nem jogosult a művelet végrehajtására.
0102 Tilos A művelet nem engedélyezett.
0501 Szabályozva A kérelem sebessége termékváltozatonként túl magas
0502 Kvóta túllépve az aktuális termékváltozatonkénti napi kvóta túllépve
0601 Kiszolgálóhiba belső kiszolgálóhiba
0602 Időkorlát a művelet időtúllépéssel fejezhető be
0603 Kiszolgáló foglalt kiszolgáló foglalt

Pszeudokód minta


-> PUBLISH
    QoS: 0
    Topic: $iothub/twin/get
<- PUBLISH
    QoS: 0
    Topic: $iothub/responses

Jelentett ikerpéldány javítása

Az ikerpéldány jelentett állapota

Kérés

Témakör neve: $iothub/twin/patch/reported

Tulajdonságok:

Név Típus Kötelező Leírás
if-version u64 nem

Hasznos adat: TwinState

Sikeres válasz

Tulajdonságok:

Név Típus Kötelező Leírás
Verzió u64 igen A jelentett állapot verziója a javítás alkalmazása után

Hasznos adat: üres

Alternatív válaszok

Állapot Név Leírás
0104 Az előfeltétel nem sikerült előfeltétel nem teljesült, ezért a kérés megszakadt
0100 Hibás kérés A műveleti üzenet helytelenül van formázva, és nem dolgozható fel.
0101 Nem jogosult Az ügyfél nem jogosult a művelet végrehajtására.
0102 Tilos A művelet nem engedélyezett.
0501 Szabályozva A kérelem sebessége termékváltozatonként túl magas
0502 Kvóta túllépve az aktuális termékváltozatonkénti napi kvóta túllépve
0601 Kiszolgálóhiba belső kiszolgálóhiba
0602 Időkorlát a művelet időtúllépéssel fejezhető be
0603 Kiszolgáló foglalt kiszolgáló foglalt

Pszeudokód minta


-> PUBLISH
    QoS: 0
    Topic: $iothub/twin/patch/reported
    [if-version: <u64>]
<- PUBLISH
    QoS: 0
    Topic: $iothub/responses

Parancsok fogadása

Parancsok fogadása és kezelése

Üzenet

Témakör neve: $iothub/commands

Tulajdonságok:

Név Típus Kötelező Leírás
szekvencia-nem u64 igen Az üzenet sorszáma
enqueued-time time igen Az üzenet rendszerbe való belépésének időbélyege
kézbesítések száma u32 igen Az üzenetkézbesítés megkísérlésének száma
létrehozási idő time nem Az üzenet létrehozásának időbélyege (a feladó adta meg)
üzenetazonosító húr nem Üzenetidentitás (feladó által megadva)
felhasználó-azonosító húr nem Felhasználói identitás (feladó által megadva)
korrelációs azonosító húr nem Korrelációs identitás (feladó által megadott)
Tartalomtípus húr nem meghatározza a hasznos adat tartalomtípusát
tartalomkódolás húr nem meghatározza a hasznos adatok tartalomkódolását

Hasznos adat: bármely bájtsorozat

Sikeres visszaigazolás

Azt jelzi, hogy az ügyfél elfogadta a parancsot a kezeléshez

Tulajdonságok: nincs

Hasznos adat: üres

Alternatív visszaigazolások

Okkód Állapot Név Leírás
131 0603 Megszakítás Azt jelzi, hogy a parancs jelenleg nem lesz feldolgozva, és a jövőben újra kell kézbesíteni.
131 0100 Elutasítás Azt jelzi, hogy az ügyfél elutasította a parancsot, és nem szabad újra megkísérelni.

Pszeudokód minta


-> 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

Közvetlen metódusok fogadása

Közvetlen metódushívások fogadása és kezelése

Kérés

Témakör neve: $iothub/methods/{name}

Tulajdonságok: nincs

Hasznos adat: bármely bájtsorozat

Sikeres válasz

Tulajdonságok:

Név Típus Kötelező Leírás
válaszkód u32 igen

Hasznos adat: bármely bájtsorozat

Alternatív válaszok

Állapot Név Leírás
06A0 Nem érhető el Azt jelzi, hogy az ügyfél nem érhető el ezen a kapcsolaton keresztül.

Pszeudokód minta


-> SUBSCRIBE
    - Topic: methods/{name}
      QoS: 0
<- SUBACK
<- PUBLISH
    QoS: 0
    Topic: $iothub/methods/{name}
-> PUBLISH
    QoS: 0
    Topic: $iothub/responses

Ikerállapot-módosítások fogadása

Frissítések fogadása ikerpéldány kívánt állapotához

Üzenet

Témakör neve: $iothub/twin/patch/desired

Tulajdonságok:

Név Típus Kötelező Leírás
Verzió u64 igen A frissítésnek megfelelő kívánt állapot verziója

Hasznos adat: TwinState

Pszeudokód minta


-> SUBSCRIBE
    - Topic: $iothub/twin/patch/desired
      QoS: 0
<- PUBLISH
    QoS: 0
    Topic: $iothub/twin/patch/desired
    version: <u64>
    Payload: ...

Telemetriai adatok küldése

Üzenet küldése telemetriai csatornára – Event Hubs alapértelmezés szerint vagy más végpont útválasztási konfiguráción keresztül.

Üzenet

Témakör neve: $iothub/telemetry

Tulajdonságok:

Név Típus Kötelező Leírás
Tartalomtípus húr nem lefordítja a rendszertulajdonságra content-type a közzétett üzenetben
tartalomkódolás húr nem lefordítja a rendszertulajdonságra content-encoding a közzétett üzenetben
üzenetazonosító húr nem lefordítja a rendszertulajdonságra message-id a közzétett üzenetben
felhasználó-azonosító húr nem lefordítja a rendszertulajdonságra user-id a közzétett üzenetben
korrelációs azonosító húr nem lefordítja a rendszertulajdonságra correlation-id a közzétett üzenetben
létrehozási idő time nem lefordítja a közzétett üzenet tulajdonságává iothub-creation-time-utc

Tipp.

A formátumnak utc-nek creation-time kell lennie időzón-információ nélkül. Például 2021-04-21T11:30:16Z érvényes, 2021-04-21T11:30:16-07:00 érvénytelen.

Hasznos adat: bármely bájtsorozat

Sikeres visszaigazolás

Az üzenet sikeresen fel lett adva a telemetriai csatornára

Tulajdonságok: nincs

Hasznos adat: üres

Alternatív visszaigazolások

Okkód Állapot Név Leírás
131 0100 Hibás kérés A műveleti üzenet helytelenül van formázva, és nem dolgozható fel.
135 0101 Nem jogosult Az ügyfél nem jogosult a művelet végrehajtására.
131 0102 Tilos A művelet nem engedélyezett.
131 0601 Kiszolgálóhiba belső kiszolgálóhiba
151 0501 Szabályozva A kérelem sebessége termékváltozatonként túl magas
151 0502 Kvóta túllépve az aktuális termékváltozatonkénti napi kvóta túllépve
131 0602 Időkorlát a művelet időtúllépéssel fejezhető be
131 0603 Kiszolgáló foglalt kiszolgáló foglalt

Pszeudokód minta

-> 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

Válaszok

Hibás kérés

A műveleti üzenet helytelenül van formázva, és nem dolgozható fel.

Okkód: 131

Állapot: 0100

Tulajdonságok:

Név Típus Kötelező Leírás
reason húr nem információkat tartalmaz arról, hogy mi nem érvényes az üzenetre vonatkozóan

Hasznos adat: üres

Ütközés

A művelet ütközik egy másik folyamatban lévő művelettel.

Okkód: 131

Állapot: 0103

Tulajdonságok:

Név Típus Kötelező Leírás
nyomkövetési azonosító húr nem nyomkövetési azonosító a hiba más diagnosztikáival való korrelációhoz
reason húr nem információkat tartalmaz arról, hogy mi nem érvényes az üzenetre vonatkozóan

Hasznos adat: üres

Tilos

A művelet nem engedélyezett.

Okkód: 131

Állapot: 0102

Tulajdonságok:

Név Típus Kötelező Leírás
reason húr nem információkat tartalmaz arról, hogy mi nem érvényes az üzenetre vonatkozóan

Hasznos adat: üres

Nem jogosult

Az ügyfél nem jogosult a művelet végrehajtására.

Okkód: 135

Állapot: 0101

Tulajdonságok:

Név Típus Kötelező Leírás
nyomkövetési azonosító húr nem nyomkövetési azonosító a hiba más diagnosztikáival való korrelációhoz

Hasznos adat: üres

Nem található

a kért erőforrás nem létezik

Okkód: 131

Állapot: 0504

Tulajdonságok:

Név Típus Kötelező Leírás
reason húr nem információkat tartalmaz arról, hogy mi nem érvényes az üzenetre vonatkozóan

Hasznos adat: üres

Nincs módosítva

Az erőforrás nem a megadott előfeltételek alapján lett módosítva.

Okkód: 0

Állapot: 0001

Tulajdonságok: nincs

Hasznos adat: üres

Az előfeltétel nem sikerült

Az előfeltétel nem teljesült, ezért a kérés megszakadt

Okkód: 131

Állapot: 0104

Tulajdonságok: nincs

Hasznos adat: üres

Kvóta túllépve

az aktuális termékváltozatonkénti napi kvóta túllépve

Okkód: 151

Állapot: 0502

Tulajdonságok: nincs

Hasznos adat: üres

Erőforrás kimerült

az erőforrás nem rendelkezik kapacitással a művelet végrehajtásához

Okkód: 131

Állapot: 0503

Tulajdonságok:

Név Típus Kötelező Leírás
reason húr nem információkat tartalmaz arról, hogy mi nem érvényes az üzenetre vonatkozóan

Hasznos adat: üres

Kiszolgáló foglalt

kiszolgáló foglalt

Okkód: 131

Állapot: 0603

Tulajdonságok:

Név Típus Kötelező Leírás
nyomkövetési azonosító húr nem nyomkövetési azonosító a hiba más diagnosztikáival való korrelációhoz

Hasznos adat: üres

Kiszolgálóhiba

belső kiszolgálóhiba

Okkód: 131

Állapot: 0601

Tulajdonságok:

Név Típus Kötelező Leírás
nyomkövetési azonosító húr nem nyomkövetési azonosító a hiba más diagnosztikáival való korrelációhoz

Hasznos adat: üres

A cél nem sikerült

A cél válaszolt, de a válasz érvénytelen volt vagy helytelenül lett formázva

Okkód: 131

Állapot: 06A2

Tulajdonságok:

Név Típus Kötelező Leírás
reason húr nem információkat tartalmaz arról, hogy mi nem érvényes az üzenetre vonatkozóan

Hasznos adat: üres

Cél időtúllépése

időtúllépés a célra való várakozásra a kérés befejezéséhez

Okkód: 131

Állapot: 06A1

Tulajdonságok:

Név Típus Kötelező Leírás
nyomkövetési azonosító húr nem nyomkövetési azonosító a hiba más diagnosztikáival való korrelációhoz
reason húr nem információkat tartalmaz arról, hogy mi nem érvényes az üzenetre vonatkozóan

Hasznos adat: üres

A cél nem érhető el

A cél nem érhető el a kérés teljesítéséhez

Okkód: 131

Állapot: 06A0

Tulajdonságok: nincs

Hasznos adat: üres

Szabályozva

A kérelem sebessége termékváltozatonként túl magas

Okkód: 151

Állapot: 0501

Tulajdonságok: nincs

Hasznos adat: üres

Időkorlát

a művelet időtúllépéssel fejezhető be

Okkód: 131

Állapot: 0602

Tulajdonságok:

Név Típus Kötelező Leírás
nyomkövetési azonosító húr nem nyomkövetési azonosító a hiba más diagnosztikáival való korrelációhoz

Hasznos adat: üres