ننصحك بإنشاء تطبيق خدمة التوصيل داخل المتجر باستخدام الخطوات الموضّحة سابقًا، ثم اختبار عملية دمج المنزل الذكي في بيئة الاستضافة الخاصة بك باستخدام الخطوات التالية:
في بيئة الاستضافة الخاصة بك، يمكنك عرض صفحة HTML التي تعمل على تنفيذ تطبيقك للتوصيل داخل المتجر. يعرض المقتطف التالي مثالاً على ملف HTML ثابت يعمل على تنفيذ تطبيقك للتوصيل داخل المتجر.
<html> <head> <!-- Local Home SDK --> <script src="//www.gstatic.com/eureka/smarthome/smarthome_sdk.js"></script> <!-- Local app under development --> <script src="local_execution.js"></script> </head> </html>
تصحيح الأخطاء من Chrome استخدِم نقاط التوقف والسجلات لتحديد وحلّ المشاكل المتعلّقة بعملية الدمج.
عدِّل رمز TypeScript واجمِله، ثم كرِّر هذه الخطوات.
من خلال تكرار عملية الإنشاء والاختبار هذه، يمكنك الاطّلاع على التغييرات التي أجريتها في العمل بسرعة لمساعدتك في تصحيح الأخطاء في التعليمات البرمجية.
اختبار ميزة "التحكّم بالجهاز"
في Google Home Developer Console، عليك تحديد عنوان URL لتطبيق الويب الذي يعرض ملف HTML الذي يتم تحميله على جهاز Google Home أو Google Nest أثناء التنفيذ المحلي.
لاختبار التحكّم في الجهاز من خلال العرض المحلي، اتّبِع الخطوات التالية:
Chrome
- في صفحة الإعداد والضبط لعملية دمج السحابة الإلكترونية إلى السحابة الإلكترونية في Google Home Developer Console، انتقِل إلى العرض المحلي وفعِّل الإعداد.
- ضمن عناوين URL لاختبار التطبيق > عنوان URL لاختبار Chrome، حدِّد عنوان URL لخادم التطوير الذي يعرض ملف HTML الذي يشغِّل تطبيق التسليم المحلي.
- انقر على حفظ. قد يستغرق الأمر ما يصل إلى 30 دقيقة لكي تتمكّن Google من نشر التغييرات التي أجريتها في وحدة التحكّم.
- أعِد تشغيل جهاز Google Home أو Google Nest التجريبي.
- أدخِل أمرًا على جهازك الذكي. على سبيل المثال، إذا كان جهازك ينفِّذ السمة OnOff، يمكنك قول "Ok Google، أريد إضاءة المصابيح".
Node.js
- في صفحة الإعداد والضبط في Google Home Developer Console، انتقِل إلى التسليم داخل المتجر وفعِّل الإعداد.
- ضمن عناوين URL للاختبار > عنوان URL لاختبار Node، حدِّد عنوان URL لخادم التطوير الذي يعرض JavaScript الذي يشغّل تطبيق المعالجة داخل المتجر.
- انقر على حفظ. قد يستغرق الأمر ما يصل إلى 30 دقيقة لكي تتمكّن Google من نشر التغييرات التي أجريتها في وحدة التحكّم.
- أعِد تشغيل جهاز Google Home أو Google Nest التجريبي.
- أدخِل أمرًا على جهازك الذكي. على سبيل المثال، إذا كان جهازك ينفِّذ السمة OnOff، يمكنك قول "Ok Google، أريد إضاءة المصابيح".
لمعرفة مزيد من التفاصيل حول وقت التشغيل الذي يستخدمه جهازك، يُرجى الاطّلاع على الأجهزة المتوافقة.
تصحيح الأخطاء من Chrome
يمكنك تصحيح أخطاء تطبيق التسليم داخل المتجر باستخدام أدوات مطوري البرامج في Chrome. قبل أن تتمكّن من تصحيح الأخطاء، تأكَّد من أنّ بيئتك قد تم إعدادها بشكل صحيح:
- ضبط عنوان URL لتطوير التطبيق في وحدة التحكّم على عنوان URL يمكن الوصول إليه من جهاز Google Home أو Google Nest (إما على الشبكة المحلية أو باستخدام الإنترنت)
- أن يكون جهازك متصلاً بالشبكة المحلية نفسها التي يتصل بها جهاز Google Home أو Google Nest الذي تختبره
- لا تحظر شبكتك الحِزم بين الأجهزة.
- أن تكون مسجِّلاً الدخول باستخدام حساب Google نفسه على Google Home Developer Console وعلى جهاز Google Home أو Google Nest
- عدّلت استجابة SYNC في عملية المعالجة في السحابة الإلكترونية.
من المفترض أن يعرض قيمة صالحة واحدة على الأقل في حقل
otherDeviceIds
. - أنّك أدخلت معلومات الإعداد الصحيحة للفحص في Google Home Developer Console
لربط تطبيق الربط المحلي بأداة تصحيح أخطاء أدوات مطوّري البرامج في Chrome، اتّبِع الخطوات التالية:
Chrome
- في جهاز التطوير المحلي، ثبِّت متصفّح Google Chrome وشغِّله.
- في حقل العناوين في متصفّح Chrome، افتح "أداة فحص Chrome"
عن طريق إدخال:
chrome://inspect#devices
. من المفترض أن تظهر لك قائمة بالأجهزة في الصفحة، ومن المفترض أن يكون ملف HTML مُدرَجًا ضمن اسم جهاز Google Home أو Google Nest التجريبي. - انقر على رابط الفحص الأزرق أسفل ملف HTML لتشغيل "أدوات مطوّري البرامج في Chrome". انتقِل إلى علامة التبويب وحدة التحكّم. تُخرج منصة Local Home إصدار تطبيقك وإصدار حزمة SDK في Local Home في سجلّ وحدة التحكّم. إذا ظهر لك السجلّ، يعني ذلك أنّ Google قد حمّلت تطبيقك بنجاح، ويمكنها الاتصال به. إذا لم يتم حلّ المشكلة، يُرجى إعادة تشغيل جهاز Google Home أو Google Nest.
Node.js
- في جهاز التطوير المحلي، ثبِّت متصفّح Google Chrome وشغِّله.
- حدِّد عنوان IP المحلي لجهاز الاختبار.
- في حقل العناوين في متصفّح Chrome، افتح "أداة فحص Chrome"
عن طريق إدخال:
chrome://inspect#devices
. - انقر على ضبط... لفتح إعدادات اكتشاف الاستهداف.
- أدخِل
DEVICE_IP_ADDRESS:9222
في القائمة وانقر على تم. - انقر على رابط الفحص الأزرق أسفل النص البرمجي لتشغيل "أدوات مطوّري البرامج في Chrome". انتقِل إلى علامة التبويب وحدة التحكّم. تُخرج منصة Local Home إصدار تطبيقك وإصدار حزمة SDK في Local Home في سجلّ وحدة التحكّم. إذا ظهر لك السجلّ، يعني ذلك أنّ Google قد حمّلت تطبيقك بنجاح، ويمكنها الاتصال به. إذا لم يتم حلّ المشكلة، يُرجى إعادة تشغيل جهاز Google Home أو Google Nest.
لمعرفة المزيد من التفاصيل حول وقت التشغيل الذي يستخدمه جهازك، يُرجى الاطّلاع على الأجهزة المتوافقة.
نصائح لتصحيح الأخطاء
في ما يلي بعض النقاط الإضافية التي يجب أخذها في الاعتبار أثناء تصحيح الأخطاء:
- لا تربط عدة أجهزة Google Home أو Google Nest بحسابك التجريبي على الشبكة المحلية نفسها. لن تتمكّن من التحكّم في جهاز Google Home أو Google Nest الذي يتم استهدافه باستخدام أوامر التنفيذ المحلية.
- أعِد تحميل الصفحة في أدوات مطوّري البرامج في Chrome لإعادة تحميل حاوية تطبيق التسليم داخل المتجر
مع أحدث رمز من عنوان URL الخاص بالإصدار العلني. لا يؤدي ذلك إلى إعادة ضبط
منصّة Local Home، وقد يكون ذلك ضروريًا لإعادة تشغيل نوايا المنصة
(مثل
IDENTIFY
) في تطبيق المعالجة المحلية. لإعادة ضبط منصّة Local Home، أعِد تشغيل جهاز Google Home أو Google Nest. - تأكَّد من أنّ تطبيق JavaScript يتم تحميله بدون أخطاء. لإجراء ذلك، راجِع قسم وحدة التحكّم في صفحة "أدوات مطوّري البرامج". في حال حدوث مشكلة، ستظهر لك رسالة مثل: "Uncaught TypeError: Cannot read property 'open' of null."
- يجب أن يتطابق
verificationId
من الاستجابةIDENTIFY
مع أحدotherDeviceIds
من الاستجابةSYNC
. - بالنسبة إلى معالِج
EXECUTE
، تأكَّد من أنّه يمكن لجهازكتلقّي طلبات HTTP أو TCP أو UDP والعمل على النحو المتوقّع. - احرص على عرض
Promise
من معالِجات الأحداث. - تجنَّب الاحتفاظ بالحالة العامة في الذاكرة. اطّلِع على رحلة التطبيق.
- ستظهر الأخطاء التي يُرسِلها تطبيق خدمة التوصيل داخل المتجر في سجلّات الأخطاء لمشروعك.
الاستعداد لإطلاق التطبيق في مرحلة الإنتاج
عندما تكون مستعدًا لبدء إجراء المنزل الذكي، اتّبِع الخطوات التالية:
- افتح وحدة طرفية. في دليل مشروعك، نفِّذ الأمر
npm run build
. ينشئ هذا الأمر حِزم JavaScript التالية لتطبيقك ضمن الدليلdist
:project-directory/ └── dist ├── web │ └── bundle.js └── node └── bundle.js
- في صفحة الإعداد والضبط في Google Home Developer Console، انتقِل إلى التسليم داخل المتجر وفعِّل الإعداد.
- باستخدام أزرار Upload JavaScript (تحميل JavaScript)، حمِّل ملفات الحِزم التي
أنشأتها سابقًا.
احرص على تحميل كلا الإصدارَين من حِزم الملفات (Node وWeb)
كي يتم ضبط الإجراء للعمل بشكل صحيح في جميع بيئة التنفيذ
التي تتيحها ميزة "الاستجابة المحلية".
- تحميل ملف JavaScript الذي يستهدف Node.js: حمِّل ملف
bundle.js
من الدليلdist/node
. - تحميل JavaScript الذي يستهدف Chrome (المتصفّح): حمِّل ملف
bundle.js
من الدليلdist/web
.
- تحميل ملف JavaScript الذي يستهدف Node.js: حمِّل ملف
- اختبِر الإجراء على جهاز مزوّد بخدمة "مساعد Google" للتأكّد من أنّه يعمل بالشكل المتوقع في بيئة الإنتاج. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة اختبار إجراء المنزل الذكي ومشاركته.
- عندما تصبح راضيًا عن أداء الإجراء، أرسِله إلى Google لطرحه في الإصدار العلني باتّباع التعليمات الواردة في مقالة إطلاق إجراء المنزل الذكي. ويشمل ذلك إكمال خطوات الاختبار الذاتي وطلب الحصول على شهادة الاعتماد.