تكوين القواعد
تعمل القواعد في IoT Central كأداة استجابة قابلة للتخصيص تعمل على تشغيل الأحداث المراقبة بنشاط من الأجهزة المتصلة. تصف الأقسام التالية كيفية تقييم القواعد. يمكنك تحديد إجراء واحد أو أكثر يحدث عند تشغيل قاعدة، وتوضح هذه المقالة مجموعات إجراءات البريد الإلكتروني وwebhook وAzure Monitor. للتعرف على أنواع الإجراءات الأخرى، راجع استخدام مهام سير العمل لدمج تطبيق Azure IoT Central مع الخدمات السحابية الأخرى.
اختيار الأجهزة المستهدفة
استخدم قسم الأجهزة المستهدفة لتحديد نوع الأجهزة التي سيتم تطبيق هذه القاعدة عليها. تسمح لك التصفية بتحسين الأجهزة التي يجب تضمينها. تستخدم التصفية خصائص على قالب الجهاز لتصفية مجموعة الأجهزة. لا تؤدي التصفية نفسها إلى إجراء. في لقطة الشاشة التالية، تكون الأجهزة التي يتم استهدافها من نوع قالب الجهاز Refrigerator. ينص المرشح على أن القاعدة يجب أن تشمل فقط الثلاجات التي تساوي فيها ممتلكات الدولة المصنعةواشنطن.
استخدام شروط متعددة
الشروط هي ما تنطلق عليه القواعد. يمكنك إضافة شروط متعددة إلى القاعدة وتحديد ما إذا كان يجب تشغيل القاعدة عندما تكون جميع الشروط صحيحة أو أن أيا من الشروط يكون صحيحا.
في لقطة الشاشة التالية ، تتحقق الشروط عندما تكون درجة الحرارة أكبر من 70 درجة فهرنهايت والرطوبة أقل من 10. عندما يكون أي من هذه العبارات صحيحا، يتم تقييم القاعدة إلى صحيحة وتؤدي إلى اتخاذ إجراء.
ملاحظة
حاليا يتم دعم شروط القياس عن بعد فقط.
استخدام خاصية سحابة في حقل قيمة
يمكنك الرجوع إلى خاصية سحابة من قالب الجهاز في حقل القيمة لشرط. يجب أن يكون لخاصية السحابة وقيمة القياس عن بعد أنواع مماثلة. على سبيل المثال، إذا كانت درجة الحرارة مزدوجة، فستظهر خصائص السحابة من النوع المزدوج فقط كخيارات في القائمة المنسدلة القيمة .
إذا اخترت قيمة القياس عن بعد من نوع الحدث، فستتضمن القائمة المنسدلة القيمة الخيار أي. يعني الخيار " أي" أن القاعدة يتم تشغيلها عندما يتلقى تطبيقك حدثا من هذا النوع، مهما كانت الحمولة.
استعمال النوافذ التجميعية
يمكنك تحديد تجميع زمني لتشغيل قاعدتك بناء على نافذة زمنية. تقيِّم شروط القاعدة نوافذ الوقت المجمعة لبيانات تتبع الاستخدام كنوافذ متقلبة. إذا كانت هناك أي تصفية خصائص في القاعدة، يتم تطبيقها في نهاية الإطار الزمني. في لقطة الشاشة أدناه، تكون النافذة الزمنية خمس دقائق. كل خمس دقائق، تقيم القاعدة على الدقائق الخمس الأخيرة من بيانات تتبع الاستخدام. يتم تقييم البيانات مرة واحدة فقط في النافذة التي تتوافق معها.
أنشئ إجراء البريد الإلكتروني
عند إنشاء إجراء بريد إلكتروني، يجب أن يكون عنوان البريد الإلكتروني معرف مستخدم في التطبيق، ويجب أن يكون المستخدم قد سجل الدخول إلى التطبيق مرة واحدة على الأقل. يمكنك أيضا تحديد ملاحظة لتضمينها في البريد الإلكتروني. يعرض IoT Central مثالا على الشكل الذي سيبدو عليه البريد الإلكتروني عند تشغيل القاعدة:
إنشاء إجراء خطاف ويب
تتيح لك Webhooks توصيل تطبيق IoT Central بالتطبيقات والخدمات الأخرى للمراقبة والإشعارات عن بعد. تقوم Webhooks تلقائيا بإخطار التطبيقات والخدمات الأخرى التي تتصل بها كلما تم تشغيل قاعدة في تطبيق IoT Central الخاص بك. يرسل تطبيق IoT Central طلب POST إلى نقطة نهاية HTTP الخاصة بالتطبيق الآخر كلما تم تشغيل قاعدة. تحتوي الحمولة على تفاصيل الجهاز وتفاصيل مشغل القاعدة.
في هذا المثال، يمكنك الاتصال ب RequestBin للحصول على إعلام عند تشغيل قاعدة:
افتح RequestBin.
قم بإنشاء سلة طلبات جديدة وانسخ عنوان URL لسلة المهملات.
إضافة إجراء إلى قاعدتك:
اختر إجراء webhook وأدخل اسم عرض والصق عنوان URL ل RequestBin كعنوان URL لمعاودة الاتصال.
احفظ القاعدة.
الآن عند تشغيل القاعدة، سترى طلبا جديدا يظهر في RequestBin.
حمولة
عند تشغيل قاعدة، فإنها تقدم طلب HTTP POST إلى عنوان URL لمعاودة الاتصال. يحتوي الطلب على حمولة JSON مع تفاصيل القياس عن بعد والجهاز والقاعدة والتطبيق. تبدو الحمولة مثل مقتطف JSON التالي:
{
"timestamp": "2020-04-06T00:20:15.06Z",
"action": {
"id": "<id>",
"type": "WebhookAction",
"rules": [
"<rule_id>"
],
"displayName": "Webhook 1",
"url": "<callback_url>"
},
"application": {
"id": "<application_id>",
"displayName": "Contoso",
"subdomain": "contoso",
"host": "contoso.azureiotcentral.com"
},
"device": {
"id": "<device_id>",
"etag": "<etag>",
"displayName": "MXChip IoT DevKit - 1yl6vvhax6c",
"instanceOf": "<device_template_id>",
"simulated": true,
"provisioned": true,
"approved": true,
"cloudProperties": {
"City": {
"value": "Seattle"
}
},
"properties": {
"deviceinfo": {
"firmwareVersion": {
"value": "1.0.0"
}
}
},
"telemetry": {
"<interface_instance_name>": {
"humidity": {
"value": 47.33228889360127
}
}
}
},
"rule": {
"id": "<rule_id>",
"displayName": "Humidity monitor"
}
}
إذا كانت القاعدة تراقب القياس عن بعد المجمع على مدى فترة زمنية، فإن الحمولة تحتوي على قسم القياس عن بعد الذي يبدو:
{
"telemetry": {
"<interface_instance_name>": {
"Humidity": {
"avg": 39.5
}
}
}
}
إشعار تغيير تنسيق البيانات
إذا كان لديك خطاف ويب واحد أو أكثر تم إنشاؤه وحفظه قبل 3 أبريل 2020، فاحذف خطاف الويب وأنشئ خطافا جديدا. تستخدم خطافات الويب القديمة تنسيق حمولة مهمل:
{
"id": "<id>",
"displayName": "Webhook 1",
"timestamp": "2019-10-24T18:27:13.538Z",
"rule": {
"id": "<id>",
"displayName": "High temp alert",
"enabled": true
},
"device": {
"id": "mx1",
"displayName": "MXChip IoT DevKit - mx1",
"instanceOf": "<device-template-id>",
"simulated": true,
"provisioned": true,
"approved": true
},
"data": [{
"@id": "<id>",
"@type": ["Telemetry"],
"name": "temperature",
"displayName": "Temperature",
"value": 66.27310467496761,
"interfaceInstanceName": "sensors"
}],
"application": {
"id": "<id>",
"displayName": "x - Store Analytics Checkout",
"subdomain": "<subdomain>",
"host": "<host>"
}
}
إنشاء إجراء جماعي ل Azure Monitor
يوضح هذا القسم كيفية استخدام مجموعات إجراءات مراقبة Azure لإرفاق إجراءات متعددة بقاعدة IoT Central. يمكنك إرفاق مجموعة إجراءات بقواعد متعددة. مجموعة الإجراءات هي مجموعة من تفضيلات الإعلام التي يحددها مالك اشتراك Azure.
يمكنك إنشاء مجموعات إجراءات وإدارتها في مدخل Azure أو باستخدام قالب Azure Resource Manager.
يمكن لمجموعة العمل القيام بما يلي:
- أرسل إشعارات مثل بريد إلكتروني أو رسالة نصية قصيرة أو إجراء مكالمة صوتية.
- قم بتشغيل إجراء مثل الاتصال بخطاف ويب.
تعرض لقطة الشاشة التالية مجموعة إجراءات ترسل إشعارات بالبريد الإلكتروني والرسائل النصية القصيرة وتتصل بخطاف ويب:
لاستخدام مجموعة عمل في قاعدة IoT Central، يجب أن تكون مجموعة العمل في نفس اشتراك Azure مثل تطبيق IoT Central.
عند إضافة إجراء إلى القاعدة في IoT Central، حدد مجموعات إجراءات مراقبة Azure.
اختر مجموعة إجراءات من اشتراكك في Azure:
حدد حفظ. تظهر مجموعة الإجراءات الآن في قائمة الإجراءات التي يجب تشغيلها عند تشغيل القاعدة.
يلخص الجدول التالي المعلومات المرسلة إلى أنواع الإجراءات المدعومة:
| نوع الإجراء | نموذج الإخراج |
|---|---|
| بريد إلكتروني | قالب البريد الإلكتروني القياسي لإنترنت الأشياء المركزي |
| رسالة SMS | Azure IoT Central alert: ${applicationName} - "${ruleName}" تم تشغيله على "${deviceName}" at ${triggerDate} ${triggerTime} |
| الصوت | Azure I.O.T Central alert: rule "${ruleName}" تم تشغيله على الجهاز "${deviceName}" في ${triggerDate} ${triggerTime}, in application ${applicationName} |
| إخطار على الويب | { "schemaId" : "AzureIoTCentralRuleWebhook", "data": {regular webhook payload}} |
النص التالي هو مثال على رسالة SMS من مجموعة إجراءات:
iotcentral: Azure IoT Central alert: Contoso - "Low pressure alert" triggered on "Motion sensor 2" at March 20, 2019 10:12 UTC
استعمال القواعد مع وحدات IoT Edge
يتم تطبيق التقييد على القواعد التي يتم تطبيقها على وحدات IoT Edge. لا يتم تقييم القواعد الخاصة ببيانات تتبع الاستخدام من وحدات نمطية مختلفة كقواعد صالحة. خذ المثال التالي ، الشرط الأول للقاعدة هو على قياس درجة الحرارة عن بعد من الوحدة A. الشرط الثاني للقاعدة هو على القياس عن بعد للرطوبة في الوحدة B. نظرا لأن الشرطين من وحدات مختلفة، لديك مجموعة غير صالحة من الشروط. القاعدة غير صالحة وتلقي خطأ عند محاولة حفظ القاعدة.
الخطوات التالية
الآن بعد أن تعلمت كيفية تكوين قاعدة في تطبيق Azure IoT Central، يمكنك معرفة كيفية تكوين القواعد المتقدمة باستخدام Power Automate أو Azure Logic Apps.
