مشاركة عبر


مرجع 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: فارغة