مرجع MQTT 5 API لمستوى بيانات IoT Hub (مهمل)
يحدد هذا المستند العمليات المتاحة في الإصدار 2.0 (إصدار api: 2020-10-01-preview
) من واجهة برمجة تطبيقات مستوى بيانات IoT Hub.
إشعار
تم إهمال دعم MQTT 5 في IoT Hub ول IoT Hub دعم ميزات محدود ل MQTT. إذا كان الحل الخاص بك يحتاج إلى دعم MQTT v3.1.1 أو v5، نوصي بدعم MQTT في Azure Event Grid. لمزيد من المعلومات، راجع مقارنة دعم MQTT في مركز IoT وشبكة الأحداث.
العمليات
Get Twin
حالة Get Twin
طلب
اسم الموضوع: $iothub/twin/get
Properties: لا شيء
Payload: فارغة
استجابة النجاح
Properties: لا شيء
Payload: Twin
الردود البديلة
الحالة | Name | الوصف |
---|---|---|
0100 | طلب غير صالح | تم تكوين رسالة العملية بشكل غير صحيح ولا يمكن معالجتها. |
0101 | غير مصرح به | العميل غير مصرح له بتنفيذ العملية. |
0102 | غير مسموح | العملية غير مسموح بها. |
0501 | مقيد | معدل الطلب مرتفع جداً لكل SKU |
0502 | تم تجاوز الحصة | تم تجاوز الحصة اليومية لكل SKU الحالي |
0601 | Server Error | خطأ في الخادم الداخلي |
0602 | المهلة | انتهت مهلة العملية قبل أن تكتمل |
0603 | Server Busy | الخادم مشغول |
عينة تعليمة برمجية زائفة
-> PUBLISH
QoS: 0
Topic: $iothub/twin/get
<- PUBLISH
QoS: 0
Topic: $iothub/responses
تم الإبلاغ عن Patch Twin
حالة الإبلاغ عن Patch Twin
طلب
اسم الموضوع: $iothub/twin/patch/reported
الخصائص:
Name | نوع | مطلوبة | الوصف |
---|---|---|---|
if-version | u64 | no |
Payload: TwinState
استجابة النجاح
الخصائص:
Name | نوع | مطلوبة | الوصف |
---|---|---|---|
إصدار | u64 | yes | إصدار الحالة المبلغ عنها بعد تطبيق التصحيح |
Payload: فارغة
الردود البديلة
الحالة | Name | الوصف |
---|---|---|
0104 | فشل الشرط المسبق | لم يتم استيفاء الشرط المسبق مما أدى إلى إلغاء الطلب |
0100 | طلب غير صالح | تم تكوين رسالة العملية بشكل غير صحيح ولا يمكن معالجتها. |
0101 | غير مصرح به | العميل غير مصرح له بتنفيذ العملية. |
0102 | غير مسموح | العملية غير مسموح بها. |
0501 | مقيد | معدل الطلب مرتفع جداً لكل SKU |
0502 | تم تجاوز الحصة | تم تجاوز الحصة اليومية لكل SKU الحالي |
0601 | Server Error | خطأ في الخادم الداخلي |
0602 | المهلة | انتهت مهلة العملية قبل أن تكتمل |
0603 | Server Busy | الخادم مشغول |
عينة تعليمة برمجية زائفة
-> PUBLISH
QoS: 0
Topic: $iothub/twin/patch/reported
[if-version: <u64>]
<- PUBLISH
QoS: 0
Topic: $iothub/responses
تلقي الأوامر
تلقي الأوامر والتعامل معها
رسالة
اسم الموضوع: $iothub/commands
الخصائص:
Name | نوع | مطلوبة | الوصف |
---|---|---|---|
sequence-no | u64 | yes | رقم تسلسل الرسالة |
enqueued-time | time | yes | الطابع الزمني لوقت دخول الرسالة إلى النظام |
التسليم -العد | u32 | yes | عدد مرات محاولة تسليم الرسالة |
وقت الإنشاء | time | no | الطابع الزمني لوقت إنشاء الرسالة (مقدم من المرسل) |
message-id | سلسلة | no | هوية الرسالة (مقدمة من المرسل) |
user-id | سلسلة | no | هوية المستخدم (مقدمة من المرسل) |
correlation-id | سلسلة | no | هوية الارتباط (مقدمة من المرسل) |
نوع المحتوى | سلسلة | no | يحدد نوع محتوى الحمولة |
ترميز المحتوى | سلسلة | no | يحدد ترميز المحتوى للحمولة |
Payload: أي تسلسل بايت
Success Acknowledgment
يشير إلى أنه تم قبول الأمر للتعامل مع العميل
Properties: لا شيء
Payload: فارغة
شكر وتقدير بديل
كود السبب | الحالة | Name | الوصف |
---|---|---|---|
131 | 0603 | ترك | يشير إلى أنه لن تتم معالجة الأمر في هذا الوقت ويجب إعادة تسليمه في المستقبل. |
131 | 0100 | رفض | يشير إلى أن العميل رفض الأمر ولا يجب المحاولة مرة أخرى. |
عينة تعليمة برمجية زائفة
-> 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
تلقي طرق مباشرة
استقبال مكالمات الطريقة المباشرة والتعامل معها
طلب
اسم الموضوع: $iothub/methods/{name}
Properties: لا شيء
Payload: أي تسلسل بايت
استجابة النجاح
الخصائص:
Name | نوع | مطلوبة | الوصف |
---|---|---|---|
response-code | u32 | yes |
Payload: أي تسلسل بايت
الردود البديلة
الحالة | Name | الوصف |
---|---|---|
06A0 | غير متوفرة | يشير إلى أنه لا يمكن الوصول إلى العميل من خلال هذا الاتصال. |
عينة تعليمة برمجية زائفة
-> SUBSCRIBE
- Topic: methods/{name}
QoS: 0
<- SUBACK
<- PUBLISH
QoS: 0
Topic: $iothub/methods/{name}
-> PUBLISH
QoS: 0
Topic: $iothub/responses
تلقي تغييرات حالة Twin المرغوبة
تلقي تحديثات لحالة Twin المرغوبة
رسالة
اسم الموضوع: $iothub/twin/patch/desired
الخصائص:
Name | نوع | مطلوبة | الوصف |
---|---|---|---|
إصدار | u64 | yes | نسخة الحالة المطلوبة تطابق هذا التحديث |
Payload: TwinState
عينة تعليمة برمجية زائفة
-> SUBSCRIBE
- Topic: $iothub/twin/patch/desired
QoS: 0
<- PUBLISH
QoS: 0
Topic: $iothub/twin/patch/desired
version: <u64>
Payload: ...
إرسال القياس عن بعد
نشر رسالة إلى قناة بيانات تتبع الاستخدام - مراكز الأحداث بشكل افتراضي أو نقطة نهاية أخرى عبر تكوين التوجيه.
رسالة
اسم الموضوع: $iothub/telemetry
الخصائص:
Name | نوع | مطلوبة | الوصف |
---|---|---|---|
نوع المحتوى | سلسلة | no | يترجم إلى خاصية نظام content-type في الرسالة المنشورة |
ترميز المحتوى | سلسلة | no | يترجم إلى خاصية نظام content-encoding في الرسالة المنشورة |
message-id | سلسلة | no | يترجم إلى خاصية نظام message-id في الرسالة المنشورة |
user-id | سلسلة | no | يترجم إلى خاصية نظام user-id في الرسالة المنشورة |
correlation-id | سلسلة | no | يترجم إلى خاصية نظام correlation-id في الرسالة المنشورة |
وقت الإنشاء | time | no | يترجم إلى خاصية iothub-creation-time-utc في الرسالة المنشورة |
تلميح
يجب أن يكون تنسيق creation-time
بالتوقيت العالمي المتفق عليه (UTC) دون معلومات عن المنطقة الزمنية. على سبيل المثال، 2021-04-21T11:30:16Z
صالح، و2021-04-21T11:30:16-07:00
غير صالح.
Payload: أي تسلسل بايت
Success Acknowledgment
تم إرسال الرسالة بنجاح إلى قناة القياس عن بعد
Properties: لا شيء
Payload: فارغة
شكر وتقدير بديل
كود السبب | الحالة | Name | الوصف |
---|---|---|---|
131 | 0100 | طلب غير صالح | تم تكوين رسالة العملية بشكل غير صحيح ولا يمكن معالجتها. |
135 | 0101 | غير مصرح به | العميل غير مصرح له بتنفيذ العملية. |
131 | 0102 | غير مسموح | العملية غير مسموح بها. |
131 | 0601 | Server Error | خطأ في الخادم الداخلي |
151 | 0501 | مقيد | معدل الطلب مرتفع جداً لكل SKU |
151 | 0502 | تم تجاوز الحصة | تم تجاوز الحصة اليومية لكل SKU الحالي |
131 | 0602 | المهلة | انتهت مهلة العملية قبل أن تكتمل |
131 | 0603 | Server Busy | الخادم مشغول |
عينة تعليمة برمجية زائفة
-> 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
الاستجابات
طلب غير صالح
تم تكوين رسالة العملية بشكل غير صحيح ولا يمكن معالجتها.
رمز السبب: 131
حالة: 0100
الخصائص:
Name | نوع | مطلوبة | الوصف |
---|---|---|---|
السبب | سلسلة | no | يحتوي على معلومات حول ما هو غير صالح على وجه التحديد حول الرسالة |
Payload: فارغة
Conflict
العملية تتعارض مع عملية أخرى جارية.
رمز السبب: 131
حالة: 0103
الخصائص:
Name | نوع | مطلوبة | الوصف |
---|---|---|---|
trace-id | سلسلة | no | معرف التتبع للارتباط مع التشخيصات الأخرى للخطأ |
السبب | سلسلة | no | يحتوي على معلومات حول ما هو غير صالح على وجه التحديد حول الرسالة |
Payload: فارغة
غير مسموح
العملية غير مسموح بها.
رمز السبب: 131
حالة: 0102
الخصائص:
Name | نوع | مطلوبة | الوصف |
---|---|---|---|
السبب | سلسلة | no | يحتوي على معلومات حول ما هو غير صالح على وجه التحديد حول الرسالة |
Payload: فارغة
غير مصرح به
العميل غير مصرح له بتنفيذ العملية.
رمز السبب: 135
حالة: 0101
الخصائص:
Name | نوع | مطلوبة | الوصف |
---|---|---|---|
trace-id | سلسلة | no | معرف التتبع للارتباط مع التشخيصات الأخرى للخطأ |
Payload: فارغة
غير موجود
المورد المطلوب غير موجود
رمز السبب: 131
حالة: 0504
الخصائص:
Name | نوع | مطلوبة | الوصف |
---|---|---|---|
السبب | سلسلة | no | يحتوي على معلومات حول ما هو غير صالح على وجه التحديد حول الرسالة |
Payload: فارغة
لم يتم تعديله
لم يتم تعديل المورد بناء على الشرط المسبق المقدم.
رمز السبب: 0
حالة: 0001
Properties: لا شيء
Payload: فارغة
فشل الشرط المسبق
لم يتم استيفاء الشرط المسبق مما أدى إلى إلغاء الطلب
رمز السبب: 131
حالة: 0104
Properties: لا شيء
Payload: فارغة
تم تجاوز الحصة
تم تجاوز الحصة اليومية لكل SKU الحالي
رمز السبب: 151
حالة: 0502
Properties: لا شيء
Payload: فارغة
استنفاد الموارد
المورد ليست لديه القدرة على إتمام العملية
رمز السبب: 131
حالة: 0503
الخصائص:
Name | نوع | مطلوبة | الوصف |
---|---|---|---|
السبب | سلسلة | no | يحتوي على معلومات حول ما هو غير صالح على وجه التحديد حول الرسالة |
Payload: فارغة
Server Busy
الخادم مشغول
رمز السبب: 131
حالة: 0603
الخصائص:
Name | نوع | مطلوبة | الوصف |
---|---|---|---|
trace-id | سلسلة | no | معرف التتبع للارتباط مع التشخيصات الأخرى للخطأ |
Payload: فارغة
Server Error
خطأ في الخادم الداخلي
رمز السبب: 131
حالة: 0601
الخصائص:
Name | نوع | مطلوبة | الوصف |
---|---|---|---|
trace-id | سلسلة | no | معرف التتبع للارتباط مع التشخيصات الأخرى للخطأ |
Payload: فارغة
Target Failed
تم الرد على الهدف ولكن الاستجابة كانت غير صالحة أو مشوهة
رمز السبب: 131
حالة: 06A2
الخصائص:
Name | نوع | مطلوبة | الوصف |
---|---|---|---|
السبب | سلسلة | no | يحتوي على معلومات حول ما هو غير صالح على وجه التحديد حول الرسالة |
Payload: فارغة
مهلة الهدف
انتهت مهلة انتظار الهدف لإكمال الطلب
رمز السبب: 131
حالة: 06A1
الخصائص:
Name | نوع | مطلوبة | الوصف |
---|---|---|---|
trace-id | سلسلة | no | معرف التتبع للارتباط مع التشخيصات الأخرى للخطأ |
السبب | سلسلة | no | يحتوي على معلومات حول ما هو غير صالح على وجه التحديد حول الرسالة |
Payload: فارغة
الهدف غير متوفر
الهدف لا يمكن الوصول إليه لإكمال الطلب
رمز السبب: 131
حالة: 06A0
Properties: لا شيء
Payload: فارغة
مقيد
معدل الطلب مرتفع جداً لكل SKU
رمز السبب: 151
حالة: 0501
Properties: لا شيء
Payload: فارغة
المهلة
انتهت مهلة العملية قبل أن تكتمل
رمز السبب: 131
حالة: 0602
الخصائص:
Name | نوع | مطلوبة | الوصف |
---|---|---|---|
trace-id | سلسلة | no | معرف التتبع للارتباط مع التشخيصات الأخرى للخطأ |
Payload: فارغة