توجيه أحداث Azure Digital Twins

توضح هذه المقالة العملية التي يستخدمها Azure Digital Twins لإرسال بيانات الحدث، سواء لتوجيه الأحداث داخليا داخل Azure Digital Twins، أو لإرسال بيانات الحدث خارجيا إلى خدمات انتقال البيانات من الخادم أو موارد الحوسبة المتصلة خارج الخدمة.

يعد توجيه إعلامات الأحداث من Azure Digital Twins عملية من خطوتين: إنشاء نقاط نهاية، ثم إنشاء مسارات الأحداث لإرسال البيانات إلى نقاط النهاية هذه. تتناول هذه المقالة المزيد من التفاصيل حول كل من هذه المفاهيم. كما يشرح ما يحدث عندما تفشل نقطة النهاية في تسليم حدث في الوقت المناسب (عملية تعرف باسم الرسائل غير المستخدمة).

نظرة عامة على توجيه الأحداث

هناك سيناريوهان رئيسيان لإرسال بيانات Azure Digital Twins، ويتم استخدام مسارات الأحداث لإنجاز كليهما:

  • إرسال بيانات الحدث من توأم واحد في الرسم البياني Azure Digital Twins إلى آخر. على سبيل المثال، عندما تتغير خاصية على توأم رقمي واحد، قد تحتاج إلى إعلام وتحديث توأم رقمي آخر استنادا إلى البيانات المحدثة.
  • إرسال البيانات خارج Azure Digital Twins إلى خدمات البيانات النهائية لمزيد من التخزين أو المعالجة. على سبيل المثال، إذا كنت تستخدم خرائط Azure بالفعل، فقد ترغب في المساهمة ببيانات Azure Digital Twins لتحسين الحل الخاص بك باستخدام النمذجة أو الاستعلامات المتكاملة.

بالنسبة لأي وجهة حدث، يعمل مسار الحدث عن طريق إرسال بيانات الحدث من Azure Digital Twins إلى نقاط النهاية المحددة خصيصا في اشتراكاتك. يتم دعم ثلاث خدمات Azure حاليا لنقاط النهاية: مراكز الأحداث وشبكة الأحداثوناقل خدمة Microsoft Azure. يمكن توصيل كل من خدمات Azure هذه بخدمات أخرى وتعمل كوسطاء، أو إرسال البيانات إلى الوجهات النهائية مثل خرائط Azure، أو العودة إلى Azure Digital Twins لتحديثات الرسم البياني التابعة.

يوضح الرسم التخطيطي التالي تدفق بيانات الحدث من خلال حل IoT أكبر، والذي يتضمن إرسال بيانات Azure Digital Twins من خلال نقاط النهاية إلى خدمات Azure الأخرى، بالإضافة إلى العودة إلى Azure Digital Twins:

رسم تخطيطي لبيانات توجيه Azure Digital Twins من خلال نقاط النهاية إلى العديد من خدمات انتقال البيانات من الخادم.

بالنسبة إلى خروج البيانات خارج Azure Digital Twins، فإن أهداف انتقال البيانات من الخادم النموذجية لمسارات الأحداث هي Time Series Insights، خرائط Azure، والتخزين، وحلول التحليلات. ينفذ Azure Digital Twins تسليما مرة واحدة على الأقل للبيانات المنبعثة إلى خدمات الخروج.

لتوجيه أحداث التوأم الرقمي الداخلي داخل نفس حل Azure Digital Twins، تابع إلى القسم التالي.

توجيه الأحداث المزدوجة الرقمية الداخلية

مسارات الأحداث هي الآلية المستخدمة لمعالجة الأحداث داخل الرسم البياني المزدوج، وإرسال البيانات من التوأم الرقمي إلى التوأم الرقمي. يتم هذا النوع من معالجة الأحداث عن طريق توصيل مسارات الأحداث من خلال Event Grid بحساب الموارد، مثل Azure Functions. ثم تحدد هذه الدالات كيفية تلقي التوائم للأحداث والاستجابة لها.

عندما يريد مورد حساب تعديل الرسم البياني المزدوج استنادا إلى حدث استلمه عبر مسار الحدث، فمن المفيد له معرفة التوأم الذي يجب تعديله مسبقا. تحتوي رسالة الحدث أيضا على معرف التوأم المصدر الذي أرسل الرسالة، بحيث يمكن لمورد الحساب استخدام الاستعلامات أو اجتياز العلاقات للعثور على التوأم الهدف للعملية المطلوبة.

يحتاج مورد الحساب أيضا إلى إنشاء أذونات الأمان والوصول بشكل مستقل.

للتنقل عبر عملية إعداد دالة Azure لمعالجة أحداث التوأم الرقمي، راجع إعداد معالجة الأحداث المزدوجة إلى المزدوجة.

إنشاء نقاط النهاية

لتعريف مسار حدث، يجب على المطورين أولاً تحديد نقاط النهاية. نقطة النهاية هي وجهة خارج Azure Digital Twins تدعم اتصال المسار. تشمل الوجهات المدعومة ما يلي:

  • مواضيع مخصصة لشبكة الأحداث
  • مراكز الأحداث
  • ناقل الخدمة

لإنشاء نقطة نهاية، يمكنك استخدام واجهات برمجة تطبيقات AZURE Digital Twins REST أو أوامر CLI أو مدخل Microsoft Azure.

عند تعريف نقطة نهاية، ستحتاج إلى توفير:

  • اسم نقطة النهاية
  • نوع نقطة النهاية (شبكة الأحداث أو مراكز الأحداث أو ناقل خدمة Microsoft Azure)
  • سلسلة الاتصال الأساسية وسلسلة الاتصال الثانوية للمصادقة
  • مسار الموضوع لنقطة النهاية، مثل your-topic.westus2.eventgrid.azure.net

اختياريا، يمكنك اختيار إنشاء نقطة النهاية الخاصة بك باستخدام المصادقة المستندة إلى الهوية، لاستخدام نقطة النهاية مع هوية مدارة معينة من قبل النظام أو معينة من قبل المستخدم. يتوفر هذا الخيار فقط لمراكز الأحداث ونقاط النهاية من نوع ناقل خدمة Microsoft Azure (وهو غير مدعوم لشبكة الأحداث).

واجهات برمجة تطبيقات نقطة النهاية المتوفرة في وحدة التحكم هي:

  • قم بإنشاء نقطة نهاية
  • الحصول على قائمة بنقاط النهاية
  • الحصول على نقطة النهاية بالاسم
  • حذف نقطة النهاية بالاسم

للحصول على إرشادات مفصلة حول إنشاء نقطة نهاية، راجع إنشاء نقاط نهاية.

إنشاء مسارات الأحداث

لإنشاء مسار حدث، يمكنك استخدام واجهات برمجة تطبيقات AZURE Digital Twins REST أو أوامر CLI أو مدخل Microsoft Azure.

فيما يلي مثال على إنشاء مسار حدث داخل تطبيق عميل، باستخدام CreateOrReplaceEventRouteAsync استدعاء .NET (C#) SDK:

string eventFilter = "$eventType = 'DigitalTwinTelemetryMessages' or $eventType = 'DigitalTwinLifecycleNotification'";
var er = new DigitalTwinsEventRoute("endpointName", eventFilter);
await client.CreateOrReplaceEventRouteAsync("routeId", er);
  1. أولا، يتم إنشاء كائن DigitalTwinsEventRoute ، ويأخذ الدالة الإنشائية اسم نقطة نهاية. يعرف هذا endpointName الحقل نقطة نهاية مثل مراكز الأحداث أو شبكة الأحداث أو ناقل خدمة Microsoft Azure. يجب إنشاء نقاط النهاية هذه في اشتراكك وإرفاقها ب Azure Digital Twins باستخدام واجهات برمجة تطبيقات وحدة التحكم قبل إجراء استدعاء التسجيل هذا.

  2. يحتوي كائن مسار الحدث أيضا على حقل عامل تصفية ، والذي يمكن استخدامه لتقييد أنواع الأحداث التي تتبع هذا المسار. يمكن عامل تصفية true المسار من دون تصفية إضافية (عامل تصفية false يعطل المسار).

  3. ثم يتم تمرير كائن مسار الحدث هذا إلى CreateOrReplaceEventRouteAsync، جنبا إلى جنب مع اسم للمسار.

تلميح

تأتي جميع وظائف SDK في إصدارات متزامنة وغير متزامنة.

للحصول على إرشادات مفصلة حول إنشاء مسارات الأحداث، راجع إنشاء المسارات وعوامل التصفية.

أحداث الرسائل المهملة

عندما لا تتمكن نقطة النهاية من تسليم حدث خلال فترة زمنية معينة أو بعد محاولة تسليم الحدث عدة مرات، يمكنها إرسال الحدث الذي لم يتم تسليمه إلى حساب تخزين. تُعرف هذه العملية بالرسائل المهملة. سيقوم Azure Digital Twins برسائل غير مستخدمة لحدث عند استيفاء أحد الشروط التالية:

  • لا يتم تسليم الحدث خلال فترة البقاء
  • تجاوز عدد محاولات تسليم الحدث الحد

إذا تم استيفاء أي من الشروط، يتم إسقاط الحدث أو إهماله. بشكل افتراضي، لا تقوم كل نقطة نهاية بتشغيل الكتابة غير المستخدمة. لتمكينه، يجب تحديد حساب تخزين للاحتفاظ بأحداث لم يتم تسليمها عند إنشاء نقطة النهاية. يمكنك بعد ذلك سحب الأحداث من حساب التخزين هذا لحل عمليات التسليم.

قبل تعيين موقع مهمل، يجب أن يكون لديك حساب تخزين مع حاوية. يمكنك توفير عنوان URL لهذه الحاوية عند إنشاء نقطة النهاية. يتم توفير الرسائل غير المستخدمة كعنون URL للحاوية مع رمز SAS المميز. يحتاج هذا الرمز المميز إلى إذن فقط write للحاوية الوجهة داخل حساب التخزين. سيكون عنوان URL الذي تم تكوينه بالكامل بتنسيق: https://<storage-account-name>.blob.core.windows.net/<container-name>?<SAS-token>

لمعرفة المزيد حول رموز SAS المميزة، راجع: منح وصول محدود إلى موارد Azure Storage باستخدام توقيعات الوصول المشترك (SAS)

لمعرفة كيفية إعداد نقطة نهاية باستخدام الكتابة غير المستخدمة، راجع خيارات نقطة النهاية: الكتابة غير المستخدمة.

أنواع رسائل الأحداث

تنتج أنواع مختلفة من الأحداث في IoT Hub وAzure Digital Twins أنواعا مختلفة من رسائل الإعلام، كما هو موضح أدناه.

نوع الإشعار اسم مصدر التوجيه تم إنشاؤها من...
الإعلام بتغيير النسخة المتماثلة الرقمية الإعلام بتغيير النسخة المتماثلة الرقمية أي تغيير في خاصية التوأم الرقمي
إعلام دورة حياة النسخة المتماثلة الرقمية إعلام دورة حياة النسخة المتماثلة الرقمية أي عملية إنشاء أو حذف التوأم الرقمي
إعلام بتغيير علاقة النسخة المتماثلة الرقمية إعلام بتغيير علاقة النسخة المتماثلة الرقمية أي تغيير في علاقة التوأم الرقمي
رسائل القياس عن بعد للنسخة المتماثلة الرقمي رسائل القياس عن بعد أي رسالة بيانات تتبع الاستخدام

الخطوات التالية

تابع إلى الإرشادات خطوة بخطوة لإعداد نقاط النهاية ومسارات الأحداث:

أو اتبع هذه المعاينة لإعداد وظيفة Azure لمعالجة الأحداث المزدوجة إلى المزدوجة داخل Azure Digital Twins: