إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
في هذا التشغيل السريع، يمكنك استخدام أسلوب مباشر للتحكم في جهاز محاكاة متصل بمركز IoT الخاص بك. IoT Hub هي خدمة Azure تتيح لك إدارة أجهزة IoT الخاصة بك من السحابة واستيعاب كميات كبيرة من بيانات تتبع الاستخدام للجهاز إلى السحابة للتخزين أو المعالجة. يمكنك استخدام أساليب مباشرة لتغيير سلوك الأجهزة المتصلة بمركز IoT عن بعد.
يستخدم التشغيل السريع تطبيقين .NET مكتوبين مسبقا:
تطبيق جهاز محاكاة يستجيب للأساليب المباشرة التي يتم استدعاؤها من تطبيق خدمة. لتلقي استدعاءات الأسلوب المباشر، يتصل هذا التطبيق بنقطة نهاية خاصة بالجهاز على مركز IoT.
تطبيق خدمة يستدعي الأساليب المباشرة على جهاز المحاكاة. لاستدعاء أسلوب مباشر على جهاز، يتصل هذا التطبيق بنقطة النهاية من جانب الخدمة على مركز IoT الخاص بك.
المتطلبات الأساسية
حساب Azure مع اشتراك نشط. أنشئ حسابًا مجانًا.
تتم كتابة نموذج التطبيقين اللذين تقوم بتشغيلهما في هذا التشغيل السريع باستخدام C#. تحتاج إلى .NET SDK 6.0 أو أحدث على جهاز التطوير الخاص بك.
يمكنك تنزيل .NET Core SDK لمنصات متعددة من .NET.
يمكنك التحقق من الإصدار الحالي من C# على جهاز التطوير باستخدام الأمر التالي:
dotnet --versionاستنساخ أو تنزيل Microsoft Azure IoT SDK ل .NET من GitHub. يتم تضمين نماذج التطبيقات المستخدمة من قبل هذا التشغيل السريع في SDK.
تأكد من أن المنفذ 8883 مفتوح في جدار الحماية. يستخدم نموذج الجهاز في هذا التشغيل السريع بروتوكول MQTT، الذي يتصل عبر المنفذ 8883. قد يتم حظر هذا المنفذ في بعض بيئات الشبكة التعليمية والشركات. لمزيد من المعلومات وطرق حل هذه المشكلة، راجع قسم الاتصال بمركز IoT في الاتصال بمركز IoT باستخدام بروتوكول MQTT.
استخدم بيئة Bash في Azure Cloud Shell. لمزيد من المعلومات، راجع بدء استخدام Azure Cloud Shell.
إذا كنت تفضل تشغيل أوامر مرجع CLI محلياً قم بتثبيت CLI Azure. إذا كنت تعمل على نظام تشغيل Windows أو macOS، ففكر في تشغيل Azure CLI في حاوية Docker. لمزيد من المعلومات، راجع كيفية تشغيل Azure CLI في حاوية Docker.
إذا كنت تستخدم تثبيت محلي، يُرجى تسجيل الدخول إلى Azure CLI مستخدمًا أمر az login. لإنهاء عملية المصادقة، اتبع الخطوات المعروضة في جهازك. للحصول على خيارات تسجيل الدخول الأخرى، راجع المصادقة على Azure باستخدام Azure CLI.
عندما يُطلب منك، قم بتثبيت ملحق Azure CLI عند الاستخدام لأول مرة. لمزيد من المعلومات حول الملحقات، راجع استخدام الملحقات وإدارتها باستخدام Azure CLI.
يُرجى تشغيل إصدار az للوصول إلى الإصدار والمكتبات التابعة التي تم تثبيتها. للتحديث لآخر إصدار، يُرجى تشغيل تحديث az.
ملاحظة
تستخدم هذه المقالة أحدث إصدار من ملحق Azure IoT، ويطلق عليه azure-iot. يسمى azure-cli-iot-extالإصدار القديم . يجب أن يكون لديك نسخة واحدة فقط مثبتة في كل مرة. يمكنك استخدام الأمر az extension list للتحقق من صحة الملحقات المثبتة حالياً.
استخدم az extension remove --name azure-cli-iot-ext لإزالة الإصدار القديم من الملحق.
استخدم az extension add --name azure-iot لإضافة الإصدار الجديد من الملحق.
لمعرفة الملحقات المثبتة حاليا، استخدم az extension list.
في هذا المقطع، يمكنك استخدام Azure CLI لإنشاء مركز IoT ومجموعة موارد. مجموعة موارد Azure هي حاوية منطقية يتم بها نشر موارد Azure وإدارتها. يعمل IoT Hub كمركز مركزي للرسائل للاتصال ثنائي الاتجاه بين تطبيق IoT والأجهزة.
إذا كان لديك بالفعل IoT Hub في اشتراكك في Azure، يمكنك تخطي هذا القسم.
لإنشاء مركز IoT ومجموعة موارد:
قم بتشغيل تطبيق CLI الخاص بك. لتشغيل أوامر CLI في بقية هذه المقالة، انسخ بناء جملة الأمر، والصقه في تطبيق CLI، وقم بتحرير قيم المتغيرات، واضغط
Enterعلى .- إذا كنت تستخدم Cloud Shell، فحدد الزر Try It في أوامر CLI لتشغيل Cloud Shell في نافذة مستعرض منقسمة. أو يمكنك فتح Cloud Shell في علامة تبويب مستعرض منفصلة.
- إذا كنت تستخدم Azure CLI داخليًا، فابدأ تشغيل تطبيق وحدة تحكم CLI الخاص بك، ثم قم بتسجيل الدخول إلى Azure CLI.
قم بتشغيل «az extension add» لتثبيت أو ترقية ملحق azure-iot إلى الإصدار الحالي.
az extension add --upgrade --name azure-iotفي تطبيق CLI، قم بتشغيل الأمر az group create لإنشاء مجموعة موارد. يقوم الأمر التالي بإنشاء مجموعة موارد تسمى MyResourceGroup في موقعeastus.
ملاحظة
اختيارياً، يمكنك تعيين موقع مختلف. لمشاهدة المواقع المتوفرة، قم بتشغيل
az account list-locations. يستخدم هذا التشغيل السريع eastus كما هو موضح في مثال الأمر.az group create --name MyResourceGroup --location eastusقم بتشغيل الأمر «az iot hub create» لإنشاء مركز IoT. قد يستغرق إنشاء مركز IoT بضع دقائق.
YourIoTHubName. استبدل هذا العنصر النائب والأقواس المحيطة في الأمر التالي، باستخدام الاسم الذي اخترته لمركز IoT. يجب أن يكون اسم مركز IoT فريدًا بشكل عمومي في Azure. استخدم اسم مركز IoT الخاص بك في بقية هذا التشغيل السريعة أينما رأيت العنصر النائب.
az iot hub create --resource-group MyResourceGroup --name {YourIoTHubName}
استرداد سلسلة اتصال الخدمة
تحتاج أيضا إلى سلسلة اتصال خدمة مركز IoT لتمكين تطبيق الخدمة من الاتصال بلوحة التحكم واسترداد الرسائل. سلسلة اتصال الخدمة مخصصة لمركز IoT الخاص بك ككل، وتختلف عن سلسلة اتصال الجهاز التي قمت باستردادها في القسم السابق.
يسترد الأمر التالي سلسلة اتصال الخدمة لمركز IoT الخاص بك:
az iot hub connection-string show --policy-name service --hub-name {YourIoTHubName} --output table
دون ملاحظة عن سلسلة اتصال الخدمة، والتي تبدو كما يلي:
HostName={YourIoTHubName}.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey={YourSharedAccessKey}
يمكنك استخدام هذه القيمة لاحقا في التشغيل السريع.
محاكاة جهاز
يتصل تطبيق الجهاز المحاكي بنقطة نهاية خاصة بالجهاز على مركز IoT الخاص بك، ويرسل بيانات تتبع الاستخدام المحاكاة، ويستمع إلى مكالمات الأسلوب المباشر من المركز الخاص بك. في هذا التشغيل السريع، يخبر استدعاء الأسلوب المباشر من المركز الجهاز بتغيير الفاصل الزمني الذي يرسل فيه بيانات تتبع الاستخدام. يرسل الجهاز المحاكي إقرارا مرة أخرى إلى المركز الخاص بك بعد تنفيذ الأسلوب المباشر.
في نافذة المحطة الطرفية المحلية، انتقل إلى المجلد الجذر ل SDK. ثم انتقل إلى المجلد iothub\device\samples\getting started\SimulatedDeviceWithCommand .
قم بتشغيل الأمر التالي لتثبيت الحزم المطلوبة لتطبيق الجهاز المحاكي:
dotnet restoreقم بتشغيل الأمر التالي لإنشاء وتشغيل تطبيق الجهاز المحاكي.
{DeviceConnectionString}استبدل هذا العنصر النائب بسلسلة اتصال الجهاز التي لاحظتها سابقا.:dotnet run -- -c "{DeviceConnectionString}"تعرض لقطة الشاشة التالية الإخراج حيث يرسل تطبيق جهاز المحاكاة بيانات تتبع الاستخدام إلى مركز IoT:
استدعاء الأسلوب المباشر
يتصل تطبيق الخدمة بنقطة نهاية من جانب الخدمة على IoT Hub. يقوم التطبيق بإجراء استدعاءات الأسلوب المباشر إلى جهاز من خلال مركز IoT الخاص بك ويستمع إلى الإقرارات. عادة ما يتم تشغيل تطبيق خدمة IoT Hub في السحابة.
في نافذة طرفية محلية أخرى، انتقل إلى المجلد الجذر ل SDK. ثم انتقل إلى المجلد iothub\service\samples\getting started\InvokeDeviceMethod .
في نافذة المحطة الطرفية المحلية، قم بتشغيل الأوامر التالية لتثبيت المكتبات المطلوبة لتطبيق الخدمة:
dotnet buildفي نافذة المحطة الطرفية المحلية، قم بتشغيل الأوامر التالية لإنشاء تطبيق الخدمة وتشغيله.
{ServiceConnectionString}استبدل هذا العنصر النائب بسلسلة اتصال خدمة IoT Hub التي لاحظتها سابقا.:{DeviceName}استبدل هذا العنصر النائب باسم الجهاز الذي قمت بتسجيله.:dotnet run -- -c "{ServiceConnectionString}" -d {DeviceName}تظهر لقطة الشاشة التالية الإخراج حيث يقوم التطبيق بإجراء استدعاء أسلوب مباشر للجهاز ويتلقى إقرارا:
بعد تشغيل تطبيق الخدمة، سترى رسالة في نافذة المحطة الطرفية المحلية التي تقوم بتشغيل جهاز المحاكاة، ومعدل إرسال الرسائل يتغير:
يستخدم هذا التشغيل السريع تطبيقين Java:
- تطبيق جهاز محاكاة يستجيب للأساليب المباشرة التي يتم استدعاؤها من تطبيق خلفي.
- تطبيق خدمة يستدعي الأسلوب المباشر على جهاز المحاكاة.
المتطلبات الأساسية
حساب Azure مع اشتراك نشط. أنشئ حسابًا مجانًا.
طقم تطوير Java SE 8. في دعم Java طويل الأجل ل Azure وAzure Stack، ضمن الدعم طويل الأجل، حدد Java 8.
يمكنك التحقق من الإصدار الحالي من Java على جهاز التطوير الخاص بك باستخدام الأمر التالي:
java -version-
يمكنك التحقق من الإصدار الحالي من Maven على جهاز التطوير الخاص بك باستخدام الأمر التالي:
mvn --version استنساخ أو تنزيل نماذج Azure IoT ل Java من GitHub.
تأكد من أن المنفذ 8883 مفتوح في جدار الحماية. يستخدم نموذج الجهاز في هذا التشغيل السريع بروتوكول MQTT، الذي يتصل عبر المنفذ 8883. قد يتم حظر هذا المنفذ في بعض بيئات الشبكة التعليمية والشركات. لمزيد من المعلومات وطرق حل هذه المشكلة، راجع قسم الاتصال بمركز IoT في الاتصال بمركز IoT باستخدام بروتوكول MQTT.
استخدم بيئة Bash في Azure Cloud Shell. لمزيد من المعلومات، راجع بدء استخدام Azure Cloud Shell.
إذا كنت تفضل تشغيل أوامر مرجع CLI محلياً قم بتثبيت CLI Azure. إذا كنت تعمل على نظام تشغيل Windows أو macOS، ففكر في تشغيل Azure CLI في حاوية Docker. لمزيد من المعلومات، راجع كيفية تشغيل Azure CLI في حاوية Docker.
إذا كنت تستخدم تثبيت محلي، يُرجى تسجيل الدخول إلى Azure CLI مستخدمًا أمر az login. لإنهاء عملية المصادقة، اتبع الخطوات المعروضة في جهازك. للحصول على خيارات تسجيل الدخول الأخرى، راجع المصادقة على Azure باستخدام Azure CLI.
عندما يُطلب منك، قم بتثبيت ملحق Azure CLI عند الاستخدام لأول مرة. لمزيد من المعلومات حول الملحقات، راجع استخدام الملحقات وإدارتها باستخدام Azure CLI.
يُرجى تشغيل إصدار az للوصول إلى الإصدار والمكتبات التابعة التي تم تثبيتها. للتحديث لآخر إصدار، يُرجى تشغيل تحديث az.
ملاحظة
تستخدم هذه المقالة أحدث إصدار من ملحق Azure IoT، ويطلق عليه azure-iot. يسمى azure-cli-iot-extالإصدار القديم . يجب أن يكون لديك نسخة واحدة فقط مثبتة في كل مرة. يمكنك استخدام الأمر az extension list للتحقق من صحة الملحقات المثبتة حالياً.
استخدم az extension remove --name azure-cli-iot-ext لإزالة الإصدار القديم من الملحق.
استخدم az extension add --name azure-iot لإضافة الإصدار الجديد من الملحق.
لمعرفة الملحقات المثبتة حاليا، استخدم az extension list.
إنشاء مركز IoT
في هذا المقطع، يمكنك استخدام Azure CLI لإنشاء مركز IoT ومجموعة موارد. مجموعة موارد Azure هي حاوية منطقية يتم بها نشر موارد Azure وإدارتها. يعمل IoT Hub كمركز مركزي للرسائل للاتصال ثنائي الاتجاه بين تطبيق IoT والأجهزة.
إذا كان لديك بالفعل IoT Hub في اشتراكك في Azure، يمكنك تخطي هذا القسم.
لإنشاء مركز IoT ومجموعة موارد:
قم بتشغيل تطبيق CLI الخاص بك. لتشغيل أوامر CLI في بقية هذه المقالة، انسخ بناء جملة الأمر، والصقه في تطبيق CLI، وقم بتحرير قيم المتغيرات، واضغط
Enterعلى .- إذا كنت تستخدم Cloud Shell، فحدد الزر Try It في أوامر CLI لتشغيل Cloud Shell في نافذة مستعرض منقسمة. أو يمكنك فتح Cloud Shell في علامة تبويب مستعرض منفصلة.
- إذا كنت تستخدم Azure CLI داخليًا، فابدأ تشغيل تطبيق وحدة تحكم CLI الخاص بك، ثم قم بتسجيل الدخول إلى Azure CLI.
قم بتشغيل «az extension add» لتثبيت أو ترقية ملحق azure-iot إلى الإصدار الحالي.
az extension add --upgrade --name azure-iotفي تطبيق CLI، قم بتشغيل الأمر az group create لإنشاء مجموعة موارد. يقوم الأمر التالي بإنشاء مجموعة موارد تسمى MyResourceGroup في موقعeastus.
ملاحظة
اختيارياً، يمكنك تعيين موقع مختلف. لمشاهدة المواقع المتوفرة، قم بتشغيل
az account list-locations. يستخدم هذا التشغيل السريع eastus كما هو موضح في مثال الأمر.az group create --name MyResourceGroup --location eastusقم بتشغيل الأمر «az iot hub create» لإنشاء مركز IoT. قد يستغرق إنشاء مركز IoT بضع دقائق.
YourIoTHubName. استبدل هذا العنصر النائب والأقواس المحيطة في الأمر التالي، باستخدام الاسم الذي اخترته لمركز IoT. يجب أن يكون اسم مركز IoT فريدًا بشكل عمومي في Azure. استخدم اسم مركز IoT الخاص بك في بقية هذا التشغيل السريعة أينما رأيت العنصر النائب.
az iot hub create --resource-group MyResourceGroup --name {YourIoTHubName}
تسجيل جهاز
يجب أن يكون الجهاز مسجلاً في مركز إنترنت الأشياء الخاص بك قبل أن يتمكن من الاتصال. في هذا القسم، تستخدم Azure CLI لإنشاء معرّف الجهاز.
إذا كان لديك بالفعل جهاز مسجل في IoT Hub الخاص بك، يمكنك تخطي هذا القسم.
لإنشاء هوية الجهاز:
قم بتشغيل الأمر az iot hub device-identity create في غلاف CLI الخاص بك. يقوم هذا الأمر بإنشاء هوية الجهاز.
YourIoTHubName. استبدل هذا العنصر النائب والأقواس المحيطة في الأمر التالي، باستخدام الاسم الذي اخترته لمركز IoT. يجب أن يكون اسم مركز IoT فريدًا بشكل عمومي في Azure.
myDevice. يمكنك استخدام هذا الاسم لمعرف الجهاز خلال هذه المقالة، أو توفير اسم جهاز مختلف.
az iot hub device-identity create --device-id myDevice --hub-name {YourIoTHubName}قم بتشغيل الأمر az iot hub device-identity connection-string show.
az iot hub device-identity connection-string show --device-id myDevice --hub-name {YourIoTHubName}إخراج سلسلة الاتصال بالتنسيق التالي:
HostName=<your IoT Hub name>.azure-devices.net;DeviceId=<your device id>;SharedAccessKey=<some value>احفظ سلسلة الاتصال في موقع آمن.
ملاحظة
احتفظ بتطبيق CLI الخاص بك مفتوحاً. يمكنك استخدامه في خطوات لاحقة.
استرداد سلسلة اتصال الخدمة
تحتاج أيضا إلى سلسلة اتصال خدمة لتمكين التطبيق الخلفي من الاتصال بمركز IoT الخاص بك واسترداد الرسائل. يسترد الأمر التالي سلسلة اتصال الخدمة لمركز IoT الخاص بك:
YourIoTHubName: استبدل هذا العنصر النائب في الأمر التالي بالاسم الذي اخترته لمركز IoT الخاص بك.
az iot hub connection-string show --policy-name service --hub-name {YourIoTHubName} --output table
دون ملاحظة عن سلسلة اتصال الخدمة، والتي تبدو كما يلي:
HostName={YourIoTHubName}.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey={YourSharedAccessKey}
يمكنك استخدام هذه القيمة لاحقا في التشغيل السريع. تختلف سلسلة اتصال الخدمة هذه عن سلسلة اتصال الجهاز التي لاحظتها في الخطوة السابقة.
محاكاة جهاز
يتصل تطبيق الجهاز المحاكي بنقطة نهاية خاصة بالجهاز على مركز IoT الخاص بك، ويرسل بيانات تتبع الاستخدام المحاكاة، ويستمع إلى مكالمات الأسلوب المباشر من المركز الخاص بك. في هذا التشغيل السريع، يخبر استدعاء الأسلوب المباشر من المركز الجهاز بتغيير الفاصل الزمني الذي يرسل فيه بيانات تتبع الاستخدام. يرسل الجهاز المحاكي إقرارا مرة أخرى إلى المركز الخاص بك بعد تنفيذ الأسلوب المباشر.
في نافذة المحطة الطرفية المحلية، انتقل إلى المجلد الجذر لمشروع Java النموذجي. ثم انتقل إلى مجلد iot-hub\Quickstarts\simulated-device-2 .
افتح ملف src/main/java/com/microsoft/docs/iothub/samples/SimulatedDevice.java في محرر نصوص من اختيارك.
استبدل قيمة المتغير
connStringبسلسلة اتصال الجهاز التي قمت بتدوين ملاحظات عنها سابقا. ثم احفظ التغييرات في SimulatedDevice.java.في نافذة المحطة الطرفية المحلية، قم بتشغيل الأوامر التالية لتثبيت المكتبات المطلوبة وإنشاء تطبيق الجهاز المحاكي:
mvn clean packageفي نافذة المحطة الطرفية المحلية، قم بتشغيل الأوامر التالية لتشغيل تطبيق الجهاز المحاكي:
java -jar target/simulated-device-2-1.0.0-with-deps.jarتعرض لقطة الشاشة التالية الإخراج حيث يرسل تطبيق جهاز المحاكاة بيانات تتبع الاستخدام إلى مركز IoT:
استدعاء الأسلوب المباشر
يتصل التطبيق الخلفي بنقطة نهاية من جانب الخدمة على مركز IoT. يقوم التطبيق بإجراء استدعاءات الأسلوب المباشر إلى جهاز من خلال مركز IoT الخاص بك ويستمع إلى الإقرارات. عادة ما يتم تشغيل تطبيق IoT Hub الخلفي في السحابة.
في نافذة محطة طرفية محلية أخرى، انتقل إلى المجلد الجذر لمشروع Java النموذجي. ثم انتقل إلى مجلد iot-hub\Quickstarts\back-end-application .
افتح ملف src/main/java/com/microsoft/docs/iothub/samples/BackEndApplication.java في محرر نصوص من اختيارك.
استبدل قيمة المتغير
iotHubConnectionStringبسلسلة اتصال الخدمة التي قمت بتدوينها سابقا. ثم احفظ التغييرات في BackEndApplication.java.في نافذة المحطة الطرفية المحلية، قم بتشغيل الأوامر التالية لتثبيت المكتبات المطلوبة وإنشاء التطبيق الخلفي:
mvn clean packageفي نافذة المحطة الطرفية المحلية، قم بتشغيل الأوامر التالية لتشغيل التطبيق الخلفي:
java -jar target/back-end-application-1.0.0-with-deps.jarتظهر لقطة الشاشة التالية الإخراج حيث يقوم التطبيق بإجراء استدعاء أسلوب مباشر للجهاز ويتلقى إقرارا:
بعد تشغيل التطبيق الخلفي، سترى رسالة في نافذة المحطة الطرفية المحلية تقوم بتشغيل الجهاز المحاكي، ومعدل إرسال الرسائل يتغير:
يستخدم هذا التشغيل السريع تطبيقين Node.js:
- تطبيق جهاز محاكاة يستجيب للأساليب المباشرة التي يتم استدعاؤها من تطبيق خلفي. لتلقي استدعاءات الأسلوب المباشر، يتصل هذا التطبيق بنقطة نهاية خاصة بالجهاز على مركز IoT.
- تطبيق خلفي يستدعي الأساليب المباشرة على الجهاز المحاكي. لاستدعاء أسلوب مباشر على جهاز، يتصل هذا التطبيق بنقطة نهاية خاصة بالخدمة على مركز IoT.
المتطلبات الأساسية
حساب Azure مع اشتراك نشط. أنشئ حسابًا مجانًا.
-
يمكن التحقق من الإصدار الحالي من Node.js على جهاز التطوير باستخدام الأمر التالي:
node --version استنساخ أو تنزيل عينات Node.js Azure IoT من GitHub.
تأكد من أن المنفذ 8883 مفتوح في جدار الحماية. يستخدم نموذج الجهاز في هذا التشغيل السريع بروتوكول MQTT، الذي يتصل عبر المنفذ 8883. قد يتم حظر هذا المنفذ في بعض بيئات الشبكة التعليمية والشركات. لمزيد من المعلومات وطرق حل هذه المشكلة، راجع قسم الاتصال بمركز IoT في الاتصال بمركز IoT باستخدام بروتوكول MQTT.
استخدم بيئة Bash في Azure Cloud Shell. لمزيد من المعلومات، راجع بدء استخدام Azure Cloud Shell.
إذا كنت تفضل تشغيل أوامر مرجع CLI محلياً قم بتثبيت CLI Azure. إذا كنت تعمل على نظام تشغيل Windows أو macOS، ففكر في تشغيل Azure CLI في حاوية Docker. لمزيد من المعلومات، راجع كيفية تشغيل Azure CLI في حاوية Docker.
إذا كنت تستخدم تثبيت محلي، يُرجى تسجيل الدخول إلى Azure CLI مستخدمًا أمر az login. لإنهاء عملية المصادقة، اتبع الخطوات المعروضة في جهازك. للحصول على خيارات تسجيل الدخول الأخرى، راجع المصادقة على Azure باستخدام Azure CLI.
عندما يُطلب منك، قم بتثبيت ملحق Azure CLI عند الاستخدام لأول مرة. لمزيد من المعلومات حول الملحقات، راجع استخدام الملحقات وإدارتها باستخدام Azure CLI.
يُرجى تشغيل إصدار az للوصول إلى الإصدار والمكتبات التابعة التي تم تثبيتها. للتحديث لآخر إصدار، يُرجى تشغيل تحديث az.
ملاحظة
تستخدم هذه المقالة أحدث إصدار من ملحق Azure IoT، ويطلق عليه azure-iot. يسمى azure-cli-iot-extالإصدار القديم . يجب أن يكون لديك نسخة واحدة فقط مثبتة في كل مرة. يمكنك استخدام الأمر az extension list للتحقق من صحة الملحقات المثبتة حالياً.
استخدم az extension remove --name azure-cli-iot-ext لإزالة الإصدار القديم من الملحق.
استخدم az extension add --name azure-iot لإضافة الإصدار الجديد من الملحق.
لمعرفة الملحقات المثبتة حاليا، استخدم az extension list.
إنشاء مركز IoT
في هذا المقطع، يمكنك استخدام Azure CLI لإنشاء مركز IoT ومجموعة موارد. مجموعة موارد Azure هي حاوية منطقية يتم بها نشر موارد Azure وإدارتها. يعمل IoT Hub كمركز مركزي للرسائل للاتصال ثنائي الاتجاه بين تطبيق IoT والأجهزة.
إذا كان لديك بالفعل IoT Hub في اشتراكك في Azure، يمكنك تخطي هذا القسم.
لإنشاء مركز IoT ومجموعة موارد:
قم بتشغيل تطبيق CLI الخاص بك. لتشغيل أوامر CLI في بقية هذه المقالة، انسخ بناء جملة الأمر، والصقه في تطبيق CLI، وقم بتحرير قيم المتغيرات، واضغط
Enterعلى .- إذا كنت تستخدم Cloud Shell، فحدد الزر Try It في أوامر CLI لتشغيل Cloud Shell في نافذة مستعرض منقسمة. أو يمكنك فتح Cloud Shell في علامة تبويب مستعرض منفصلة.
- إذا كنت تستخدم Azure CLI داخليًا، فابدأ تشغيل تطبيق وحدة تحكم CLI الخاص بك، ثم قم بتسجيل الدخول إلى Azure CLI.
قم بتشغيل «az extension add» لتثبيت أو ترقية ملحق azure-iot إلى الإصدار الحالي.
az extension add --upgrade --name azure-iotفي تطبيق CLI، قم بتشغيل الأمر az group create لإنشاء مجموعة موارد. يقوم الأمر التالي بإنشاء مجموعة موارد تسمى MyResourceGroup في موقعeastus.
ملاحظة
اختيارياً، يمكنك تعيين موقع مختلف. لمشاهدة المواقع المتوفرة، قم بتشغيل
az account list-locations. يستخدم هذا التشغيل السريع eastus كما هو موضح في مثال الأمر.az group create --name MyResourceGroup --location eastusقم بتشغيل الأمر «az iot hub create» لإنشاء مركز IoT. قد يستغرق إنشاء مركز IoT بضع دقائق.
YourIoTHubName. استبدل هذا العنصر النائب والأقواس المحيطة في الأمر التالي، باستخدام الاسم الذي اخترته لمركز IoT. يجب أن يكون اسم مركز IoT فريدًا بشكل عمومي في Azure. استخدم اسم مركز IoT الخاص بك في بقية هذا التشغيل السريعة أينما رأيت العنصر النائب.
az iot hub create --resource-group MyResourceGroup --name {YourIoTHubName}
تسجيل جهاز
يجب أن يكون الجهاز مسجلاً في مركز إنترنت الأشياء الخاص بك قبل أن يتمكن من الاتصال. في هذا القسم، تستخدم Azure CLI لإنشاء معرّف الجهاز.
إذا كان لديك بالفعل جهاز مسجل في IoT Hub الخاص بك، يمكنك تخطي هذا القسم.
لإنشاء هوية الجهاز:
قم بتشغيل الأمر az iot hub device-identity create في غلاف CLI الخاص بك. يقوم هذا الأمر بإنشاء هوية الجهاز.
YourIoTHubName. استبدل هذا العنصر النائب والأقواس المحيطة في الأمر التالي، باستخدام الاسم الذي اخترته لمركز IoT. يجب أن يكون اسم مركز IoT فريدًا بشكل عمومي في Azure.
myDevice. يمكنك استخدام هذا الاسم لمعرف الجهاز خلال هذه المقالة، أو توفير اسم جهاز مختلف.
az iot hub device-identity create --device-id myDevice --hub-name {YourIoTHubName}قم بتشغيل الأمر az iot hub device-identity connection-string show.
az iot hub device-identity connection-string show --device-id myDevice --hub-name {YourIoTHubName}إخراج سلسلة الاتصال بالتنسيق التالي:
HostName=<your IoT Hub name>.azure-devices.net;DeviceId=<your device id>;SharedAccessKey=<some value>احفظ سلسلة الاتصال في موقع آمن.
ملاحظة
احتفظ بتطبيق CLI الخاص بك مفتوحاً. يمكنك استخدامه في خطوات لاحقة.
استرداد سلسلة اتصال الخدمة
تحتاج أيضا إلى سلسلة اتصال خدمة مركز IoT لتمكين التطبيق الخلفي من الاتصال بمركز IoT الخاص بك واسترداد الرسائل. يسترد الأمر التالي سلسلة اتصال الخدمة لمركز IoT الخاص بك:
YourIoTHubName: استبدل هذا العنصر النائب في الأمر التالي بالاسم الذي اخترته لمركز IoT الخاص بك.
az iot hub connection-string show \
--policy-name service --hub-name {YourIoTHubName} --output table
دون ملاحظة عن سلسلة اتصال الخدمة، والتي تبدو كما يلي:
HostName={YourIoTHubName}.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey={YourSharedAccessKey}
يمكنك استخدام هذه القيمة لاحقا في التشغيل السريع. تختلف سلسلة اتصال الخدمة هذه عن سلسلة اتصال الجهاز التي لاحظتها في الخطوة السابقة.
محاكاة جهاز
يتصل تطبيق الجهاز المحاكي بنقطة نهاية خاصة بالجهاز على مركز IoT الخاص بك، ويرسل بيانات تتبع الاستخدام المحاكاة، ويستمع إلى مكالمات الأسلوب المباشر من المركز الخاص بك. في هذا التشغيل السريع، يخبر استدعاء الأسلوب المباشر من المركز الجهاز بتغيير الفاصل الزمني الذي يرسل فيه بيانات تتبع الاستخدام. يرسل الجهاز المحاكي إقرارا مرة أخرى إلى المركز الخاص بك بعد تنفيذ الأسلوب المباشر.
في نافذة المحطة الطرفية المحلية، انتقل إلى المجلد الجذر لنموذج مشروع Node.js. ثم انتقل إلى مجلد iot-hub\Quickstarts\simulated-device-2 .
افتح ملف SimulatedDevice.js في محرر نصوص من اختيارك.
استبدل قيمة المتغير
connectionStringبسلسلة اتصال الجهاز التي قمت بتدوين ملاحظات عنها سابقا. ثم احفظ التغييرات إلى SimulatedDevice.js.في نافذة المحطة الطرفية المحلية، قم بتشغيل الأوامر التالية لتثبيت المكتبات المطلوبة وتشغيل تطبيق الجهاز المحاكي:
npm install node SimulatedDevice.jsتعرض لقطة الشاشة التالية الإخراج حيث يرسل تطبيق جهاز المحاكاة بيانات تتبع الاستخدام إلى مركز IoT:
استدعاء الأسلوب المباشر
يتصل التطبيق الخلفي بنقطة نهاية من جانب الخدمة على مركز IoT الخاص بك. يقوم التطبيق بإجراء استدعاءات الأسلوب المباشر إلى جهاز من خلال مركز IoT الخاص بك ويستمع إلى الإقرارات. عادة ما يتم تشغيل تطبيق IoT Hub الخلفي في السحابة.
في نافذة محطة طرفية محلية أخرى، انتقل إلى المجلد الجذر لنموذج مشروع Node.js. ثم انتقل إلى مجلد iot-hub\Quickstarts\back-end-application .
افتح ملف BackEndApplication.js في محرر نصوص من اختيارك.
استبدل قيمة المتغير
connectionStringبسلسلة اتصال الخدمة التي قمت بتدوينها سابقا. ثم احفظ التغييرات إلى BackEndApplication.js.في نافذة المحطة الطرفية المحلية، قم بتشغيل الأوامر التالية لتثبيت المكتبات المطلوبة وتشغيل التطبيق الخلفي:
npm install node BackEndApplication.jsتظهر لقطة الشاشة التالية الإخراج حيث يقوم التطبيق بإجراء استدعاء أسلوب مباشر للجهاز ويتلقى إقرارا:
بعد تشغيل التطبيق الخلفي، سترى رسالة في نافذة المحطة الطرفية المحلية تقوم بتشغيل الجهاز المحاكي، ومعدل إرسال الرسائل يتغير:
يستخدم هذا التشغيل السريع تطبيقين Python:
- تطبيق جهاز محاكاة يستجيب للأساليب المباشرة التي يتم استدعاؤها من تطبيق خلفي.
- تطبيق خلفي يستدعي الأساليب المباشرة على الجهاز المحاكي.
المتطلبات الأساسية
حساب Azure مع اشتراك نشط. أنشئ حسابًا مجانًا.
بايثون 3.7+. للحصول على الإصدارات الأخرى من Python المدعومة، راجع ميزات جهاز Azure IoT.
استنساخ أو تنزيل عينات Azure IoT Python من GitHub.
تأكد من أن المنفذ 8883 مفتوح في جدار الحماية. يستخدم نموذج الجهاز في هذا التشغيل السريع بروتوكول MQTT، الذي يتصل عبر المنفذ 8883. قد يتم حظر هذا المنفذ في بعض بيئات الشبكة التعليمية والشركات. لمزيد من المعلومات وطرق حل هذه المشكلة، راجع قسم الاتصال بمركز IoT في الاتصال بمركز IoT باستخدام بروتوكول MQTT.
استخدم بيئة Bash في Azure Cloud Shell. لمزيد من المعلومات، راجع بدء استخدام Azure Cloud Shell.
إذا كنت تفضل تشغيل أوامر مرجع CLI محلياً قم بتثبيت CLI Azure. إذا كنت تعمل على نظام تشغيل Windows أو macOS، ففكر في تشغيل Azure CLI في حاوية Docker. لمزيد من المعلومات، راجع كيفية تشغيل Azure CLI في حاوية Docker.
إذا كنت تستخدم تثبيت محلي، يُرجى تسجيل الدخول إلى Azure CLI مستخدمًا أمر az login. لإنهاء عملية المصادقة، اتبع الخطوات المعروضة في جهازك. للحصول على خيارات تسجيل الدخول الأخرى، راجع المصادقة على Azure باستخدام Azure CLI.
عندما يُطلب منك، قم بتثبيت ملحق Azure CLI عند الاستخدام لأول مرة. لمزيد من المعلومات حول الملحقات، راجع استخدام الملحقات وإدارتها باستخدام Azure CLI.
يُرجى تشغيل إصدار az للوصول إلى الإصدار والمكتبات التابعة التي تم تثبيتها. للتحديث لآخر إصدار، يُرجى تشغيل تحديث az.
ملاحظة
تستخدم هذه المقالة أحدث إصدار من ملحق Azure IoT، ويطلق عليه azure-iot. يسمى azure-cli-iot-extالإصدار القديم . يجب أن يكون لديك نسخة واحدة فقط مثبتة في كل مرة. يمكنك استخدام الأمر az extension list للتحقق من صحة الملحقات المثبتة حالياً.
استخدم az extension remove --name azure-cli-iot-ext لإزالة الإصدار القديم من الملحق.
استخدم az extension add --name azure-iot لإضافة الإصدار الجديد من الملحق.
لمعرفة الملحقات المثبتة حاليا، استخدم az extension list.
إنشاء مركز IoT
في هذا المقطع، يمكنك استخدام Azure CLI لإنشاء مركز IoT ومجموعة موارد. مجموعة موارد Azure هي حاوية منطقية يتم بها نشر موارد Azure وإدارتها. يعمل IoT Hub كمركز مركزي للرسائل للاتصال ثنائي الاتجاه بين تطبيق IoT والأجهزة.
إذا كان لديك بالفعل IoT Hub في اشتراكك في Azure، يمكنك تخطي هذا القسم.
لإنشاء مركز IoT ومجموعة موارد:
قم بتشغيل تطبيق CLI الخاص بك. لتشغيل أوامر CLI في بقية هذه المقالة، انسخ بناء جملة الأمر، والصقه في تطبيق CLI، وقم بتحرير قيم المتغيرات، واضغط
Enterعلى .- إذا كنت تستخدم Cloud Shell، فحدد الزر Try It في أوامر CLI لتشغيل Cloud Shell في نافذة مستعرض منقسمة. أو يمكنك فتح Cloud Shell في علامة تبويب مستعرض منفصلة.
- إذا كنت تستخدم Azure CLI داخليًا، فابدأ تشغيل تطبيق وحدة تحكم CLI الخاص بك، ثم قم بتسجيل الدخول إلى Azure CLI.
قم بتشغيل «az extension add» لتثبيت أو ترقية ملحق azure-iot إلى الإصدار الحالي.
az extension add --upgrade --name azure-iotفي تطبيق CLI، قم بتشغيل الأمر az group create لإنشاء مجموعة موارد. يقوم الأمر التالي بإنشاء مجموعة موارد تسمى MyResourceGroup في موقعeastus.
ملاحظة
اختيارياً، يمكنك تعيين موقع مختلف. لمشاهدة المواقع المتوفرة، قم بتشغيل
az account list-locations. يستخدم هذا التشغيل السريع eastus كما هو موضح في مثال الأمر.az group create --name MyResourceGroup --location eastusقم بتشغيل الأمر «az iot hub create» لإنشاء مركز IoT. قد يستغرق إنشاء مركز IoT بضع دقائق.
YourIoTHubName. استبدل هذا العنصر النائب والأقواس المحيطة في الأمر التالي، باستخدام الاسم الذي اخترته لمركز IoT. يجب أن يكون اسم مركز IoT فريدًا بشكل عمومي في Azure. استخدم اسم مركز IoT الخاص بك في بقية هذا التشغيل السريعة أينما رأيت العنصر النائب.
az iot hub create --resource-group MyResourceGroup --name {YourIoTHubName}
تسجيل جهاز
يجب أن يكون الجهاز مسجلاً في مركز إنترنت الأشياء الخاص بك قبل أن يتمكن من الاتصال. في هذا القسم، تستخدم Azure CLI لإنشاء معرّف الجهاز.
إذا كان لديك بالفعل جهاز مسجل في IoT Hub الخاص بك، يمكنك تخطي هذا القسم.
لإنشاء هوية الجهاز:
قم بتشغيل الأمر az iot hub device-identity create في غلاف CLI الخاص بك. يقوم هذا الأمر بإنشاء هوية الجهاز.
YourIoTHubName. استبدل هذا العنصر النائب والأقواس المحيطة في الأمر التالي، باستخدام الاسم الذي اخترته لمركز IoT. يجب أن يكون اسم مركز IoT فريدًا بشكل عمومي في Azure.
myDevice. يمكنك استخدام هذا الاسم لمعرف الجهاز خلال هذه المقالة، أو توفير اسم جهاز مختلف.
az iot hub device-identity create --device-id myDevice --hub-name {YourIoTHubName}قم بتشغيل الأمر az iot hub device-identity connection-string show.
az iot hub device-identity connection-string show --device-id myDevice --hub-name {YourIoTHubName}إخراج سلسلة الاتصال بالتنسيق التالي:
HostName=<your IoT Hub name>.azure-devices.net;DeviceId=<your device id>;SharedAccessKey=<some value>احفظ سلسلة الاتصال في موقع آمن.
ملاحظة
احتفظ بتطبيق CLI الخاص بك مفتوحاً. يمكنك استخدامه في خطوات لاحقة.
استرداد سلسلة اتصال الخدمة
تحتاج أيضا إلى سلسلة اتصال خدمة لتمكين التطبيق الخلفي من الاتصال بمركز IoT الخاص بك واسترداد الرسائل. يسترد الأمر التالي سلسلة اتصال الخدمة لمركز IoT الخاص بك:
YourIoTHubName: استبدل هذا العنصر النائب في الأمر التالي بالاسم الذي تختاره لمركز IoT.
az iot hub connection-string show \
--policy-name service \
--hub-name {YourIoTHubName} \
--output table
دون ملاحظة عن سلسلة اتصال الخدمة، والتي تبدو كما يلي:
HostName={YourIoTHubName}.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey={YourSharedAccessKey}
يمكنك استخدام هذه القيمة لاحقا في التشغيل السريع. تختلف سلسلة اتصال الخدمة هذه عن سلسلة اتصال الجهاز التي لاحظتها في الخطوة السابقة.
محاكاة جهاز
يتصل تطبيق الجهاز المحاكي بنقطة نهاية خاصة بالجهاز على مركز IoT الخاص بك، ويرسل بيانات تتبع الاستخدام المحاكاة، ويستمع إلى مكالمات الأسلوب المباشر من المركز الخاص بك. في هذا التشغيل السريع، يخبر استدعاء الأسلوب المباشر من المركز الجهاز بتغيير الفاصل الزمني الذي يرسل فيه بيانات تتبع الاستخدام. يرسل الجهاز المحاكي إقرارا مرة أخرى إلى المركز الخاص بك بعد تنفيذ الأسلوب المباشر.
في نافذة المحطة الطرفية المحلية، انتقل إلى المجلد الجذر لمشروع Python النموذجي. ثم انتقل إلى مجلد iot-hub\Quickstarts\simulated-device-2 .
افتح ملف SimulatedDeviceSync.py في محرر نصوص من اختيارك.
استبدل قيمة المتغير
CONNECTION_STRINGبسلسلة اتصال الجهاز التي قمت بتدوين ملاحظات عنها سابقا. ثم احفظ التغييرات في SimulatedDeviceSync.py.في نافذة المحطة الطرفية المحلية، قم بتشغيل الأوامر التالية لتثبيت المكتبات المطلوبة لتطبيق الجهاز المحاكي:
pip install azure-iot-deviceفي نافذة المحطة الطرفية المحلية، قم بتشغيل الأوامر التالية لتشغيل تطبيق الجهاز المحاكي:
python SimulatedDeviceSync.pyتعرض لقطة الشاشة التالية الإخراج حيث يرسل تطبيق جهاز المحاكاة بيانات تتبع الاستخدام إلى مركز IoT:
استدعاء الأسلوب المباشر
يتصل التطبيق الخلفي بنقطة نهاية من جانب الخدمة على مركز IoT. يقوم التطبيق بإجراء استدعاءات الأسلوب المباشر إلى جهاز من خلال مركز IoT الخاص بك ويستمع إلى الإقرارات. عادة ما يتم تشغيل تطبيق IoT Hub الخلفي في السحابة.
في نافذة طرفية محلية أخرى، انتقل إلى المجلد الجذر لمشروع Python النموذجي. ثم انتقل إلى مجلد iot-hub\Quickstarts\back-end-application .
افتح ملف BackEndApplication.py في محرر نصوص من اختيارك.
استبدل قيمة المتغير
CONNECTION_STRINGبسلسلة اتصال الخدمة التي قمت بتدوينها سابقا. ثم احفظ التغييرات في BackEndApplication.py.في نافذة المحطة الطرفية المحلية، قم بتشغيل الأوامر التالية لتثبيت المكتبات المطلوبة لتطبيق الجهاز المحاكي:
pip install azure-iot-hubفي نافذة المحطة الطرفية المحلية، قم بتشغيل الأوامر التالية لتشغيل التطبيق الخلفي:
python BackEndApplication.pyتظهر لقطة الشاشة التالية الإخراج حيث يقوم التطبيق بإجراء استدعاء أسلوب مباشر للجهاز ويتلقى إقرارا:
بعد تشغيل التطبيق الخلفي، سترى رسالة في نافذة وحدة التحكم تقوم بتشغيل جهاز المحاكاة، ويتغير معدل إرسال الرسائل:
تنظيف الموارد
إذا كنت تتابع المقالة الموصى بها التالية، يمكنك الاحتفاظ بالموارد التي أنشأتها بالفعل وإعادة استخدامها.
وإلا، يمكنك حذف موارد Azure التي تم إنشاؤها في هذه المقالة لتجنب الرسوم.
هام
حذف مجموعة الموارد لا يمكن التراجع عنه. يتم حذف مجموعة الموارد وكافة الموارد المضمنة فيها بشكل دائم. يُرجى التأكد من عدم حذف مجموعة الموارد أو الموارد غير الصحيحة عن طريق الخطأ. إذا قمت بإنشاء مركز IoT داخل مجموعة موارد موجودة تحتوي على الموارد التي تريد الاحتفاظ بها، فاحذف مورد IoT Hub نفسه فقط بدلا من حذف مجموعة الموارد.
لحذف مجموعة موارد حسب الاسم:
سجل الدخول إلىمدخل Azureوحددمجموعات الموارد.
في مربع النص تصفية لأي حقل ، اكتب اسم مجموعة الموارد التي تحتوي على مركز IoT.
في قائمة النتائج، حدد مجموعة الموارد التي تحتوي على مركز IoT.
في جزء العمل لمجموعة الموارد، حدد حذف مجموعة الموارد من شريط الأوامر.
يُطلب منك تأكيد حذف مجموعة الموارد. اكتب اسم مجموعة الموارد مرة أخرى لتأكيده، واختر Delete. بعد لحظات قليلة، يتم حذف مجموعة الموارد وكافة الموارد المضمنة.
الخطوات التالية
في هذا التشغيل السريع، قمت باستدعاء أسلوب مباشر على جهاز من تطبيق خدمة، واستجابت لاستدعاء الأسلوب المباشر في تطبيق جهاز محاكاة.
لمعرفة كيفية توجيه الرسائل من جهاز إلى سحابة إلى وجهات مختلفة في السحابة، تابع البرنامج التعليمي التالي.