ملاحظة
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
إثراء الرسائل هو قدرة مركز إنترنت الأشياء على ختم الرسائل بمعلومات إضافية قبل إرسال الرسائل إلى نقطة النهاية المحددة. أحد أسباب استخدام إثراء الرسائل هو تضمين البيانات التي يمكن استخدامها لتبسيط المعالجة النهائية. على سبيل المثال، يمكن أن يؤدي إثراء رسائل بيانات تتبع الاستخدام للجهاز باستخدام علامة مزدوجة للجهاز إلى تقليل الحمل على العملاء لإجراء استدعاءات واجهة برمجة تطبيقات مزدوجة للجهاز للحصول على هذه المعلومات.
يحتوي إثراء الرسالة على ثلاثة عناصر رئيسية:
اسم الإثراء أو المفتاح
قيمة
نقطة نهاية واحدة أو أكثر يجب تطبيق الإثراء عليها.
المفتاح هو سلسلة. يمكن أن يحتوي المفتاح فقط على أحرف أبجدية رقمية أو هذه الأحرف الخاصة: الواصلة (-
) ، الشرطة السفلية (_
) ، والنقطة (.
).
يمكن أن تكون القيمة أيا من الأمثلة التالية:
أي سلسلة ثابتة. لا يسمح بالقيم الديناميكية مثل الشروط والمنطق والعمليات والوظائف. على سبيل المثال، إذا قمت بتطوير تطبيق SaaS يستخدمه العديد من العملاء، فيمكنك تعيين معرف لكل عميل وإتاحة هذا المعرف في التطبيق. عند تشغيل التطبيق، سيقوم IoT Hub بختم رسائل القياس عن بعد للجهاز بمعرف العميل، مما يجعل من الممكن معالجة الرسائل بشكل مختلف لكل عميل.
اسم مركز إنترنت الأشياء الذي يرسل الرسالة. هذه القيمة هي $iothubname.
معلومات من الجهاز المزدوج، مثل مساره. ومن الأمثلة على ذلك $twin.tags.field و $twin.tags.latitude.
إشعار
في الوقت الحالي، $iothubname و$twin.tags و$twin.properties.desired و$twin.properties.reported هي فقط المتغيرات المدعومة لإثراء الرسائل. بالإضافة إلى ذلك ، يتم دعم الأنواع البدائية فقط للتخصيب. لا يمكن إثراء الرسائل بأنواع الكائنات.
تتم إضافة إثراء الرسائل كخصائص تطبيق للرسائل المرسلة إلى نقطة (نهاية) المختارة.
تطبيق الإثراء
يمكن أن تأتي الرسائل من أي مصدر بيانات مدعوم من خلال توجيه رسائل IoT Hub، بما في ذلك الأمثلة التالية:
- القياس عن بعد للجهاز ، مثل درجة الحرارة أو الضغط
- إشعارات تغيير الجهاز المزدوج -- التغييرات في الجهاز المزدوج
- أحداث دورة حياة الجهاز، مثل وقت إنشاء الجهاز أو حذفه
يمكنك إضافة عمليات إثراء إلى الرسائل التي تنتقل إلى نقطة النهاية المضمنة لمركز إنترنت الأشياء، أو إلى الرسائل التي يتم توجيهها إلى نقاط نهاية مخصصة مثل تخزين Azure Blob أو قائمة انتظار ناقل خدمة Microsoft Azure أو موضوع ناقل الخدمة.
يمكنك أيضا إضافة إثراءات إلى الرسائل التي يتم نشرها في Event Grid عن طريق إنشاء اشتراك Event Grid أولا باستخدام نوع رسالة بيانات تتبع الاستخدام الخاصة بالجهاز. استنادا إلى هذا الاشتراك، سنقوم بإنشاء مسار افتراضي في Azure IoT Hub للقياس عن بعد. يمكن لهذا المسار الفردي التعامل مع جميع اشتراكات Event Grid الخاصة بك. يمكنك بعد ذلك تكوين عمليات الإثراء لنقطة النهاية باستخدام علامة التبويب إثراء الرسائل في قسم توجيه رسائل IoT Hub. للحصول على معلومات حول التفاعل مع الأحداث باستخدام Event Grid، راجع IoT Hub وEvent Grid.
يتم تطبيق عمليات الإثراء لكل نقطة نهاية. إذا قمت بتحديد خمسة عمليات إثراء ليتم ختمها لنقطة نهاية معينة، ختم جميع الرسائل التي تنتقل إلى نقطة النهاية هذه بنفس عمليات الإثراء الخمسة.
يمكن تكوين عمليات الإثراء باستخدام الطرق التالية:
الطريقة | الأمر |
---|---|
المدخل | مدخل Microsoft Azure اطلع على البرنامج التعليمي لإثراء الرسائل |
Azure CLI | az iot hub message-enrichment |
Azure PowerShell | Add-AzIotHubMessageEnrichment |
لا تؤدي إضافة إثراء الرسائل إلى إضافة زمن انتقال إلى توجيه الرسائل.
لتجربة إثراء الرسائل، راجع البرنامج التعليمي لإثراء الرسائل
القيود
يمكنك إضافة ما يصل إلى 10 عمليات إثراء لكل مركز إنترنت الأشياء لتلك المراكز في المستوى القياسي أو الأساسي. بالنسبة لمراكز إنترنت الأشياء في الطبقة المجانية ، يمكنك إضافة ما يصل إلى 2 عمليات إثراء.
في بعض الحالات، إذا كنت تقوم بإثراء رسالة بقيمة تم تعيينها إلى علامة أو خاصية في الجهاز المزدوج، ختم القيمة بالمسار المزدوج المحدد للجهاز. على سبيل المثال، إذا تم تعيين قيمة إثراء إلى $twin.tags.field، ختم الرسائل بالسلسلة "$twin.tags.field"، بدلا من قيمة هذا الحقل من التوأم. يحدث هذا السلوك في الحالات التالية:
مركز إنترنت الأشياء الخاص بك في المستوى الأساسي. لا تدعم مراكز إنترنت الأشياء الأساسية توائم الجهاز.
يوجد مركز إنترنت الأشياء في المستوى القياسي، ولكن المسار المزدوج للجهاز المستخدم لقيمة التخصيب غير موجود. على سبيل المثال، إذا تم تعيين قيمة الإثراء إلى $twin.tags.location، ولم يكن لدى الجهاز المزدوج خاصية موقع ضمن العلامات، ختم الرسالة بالسلسلة "$twin.tags.location".
يوجد مركز IoT الخاص بك في المستوى القياسي، ولكن يتم حل المسار المزدوج للجهاز المستخدم لقيمة التخصيب إلى كائن، بدلا من خاصية بسيطة. على سبيل المثال، إذا تم تعيين قيمة الإثراء إلى $twin.tags.location، وكانت خاصية الموقع ضمن العلامات كائنا يحتوي على خصائص تابعة مثل
{"building": 43, "room": 503}
، يتم ختم الرسالة بالسلسلة "$twin.tags.location".
يمكن أن تستغرق تحديثات الجهاز المزدوج ما يصل إلى خمس دقائق حتى تنعكس في قيمة التخصيب المقابلة.
لا يمكن أن يتجاوز الحجم الإجمالي للرسالة، بما في ذلك عمليات الإثراء، 256 كيلوبايت. إذا تجاوز حجم الرسالة 256 كيلوبايت، فسيقوم مركز إنترنت الأشياء بإسقاط الرسالة. يمكنك استخدام مقاييس IoT Hub لتحديد الأخطاء وتصحيحها عند إسقاط الرسائل. على سبيل المثال، يمكنك مراقبة مقياس رسائل القياس عن بعد غير المتوافقة (d2c.telemetry.egress.invalid) في مقاييس التوجيه. لمعرفة المزيد، راجع مراقبة IoT Hub.
لا تنطبق إثراء الرسائل على أحداث تغيير التوأم الرقمي.
لا ترث الوحدات النمطية علامات مزدوجة من أجهزتها المقابلة. يجب أن تستخدم عمليات الإثراء للرسائل التي تنشأ من الوحدات النمطية للجهاز (على سبيل المثال من وحدات IoT Edge) العلامات المزدوجة التي تم تعيينها على الوحدة النمطية المزدوجة.
التسعير
تتوفر إثراء الرسائل بدون رسوم إضافية. حاليا، يتم تحصيل رسوم منك عند إرسال رسالة إلى مركز إنترنت الأشياء. يتم تحصيل رسوم منك مرة واحدة فقط مقابل هذه الرسالة، حتى إذا انتقلت الرسالة إلى نقاط نهاية متعددة.
الخطوات التالية
راجع هذه المقالات للحصول على مزيد من المعلومات حول توجيه الرسائل إلى مركز إنترنت الأشياء: