מומלץ ליצור את אפליקציית ההזמנות המקומית לפי השלבים שמפורטים למעלה, ולאחר מכן לבדוק את השילוב עם הבית החכם בסביבת האירוח שלכם לפי השלבים הבאים:
בסביבת האירוח שלכם, מציגים את דף ה-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, ואז חוזרים על השלבים האלה.
חזרה על תהליך ה-build והבדיקה מאפשרת לכם לראות את השינויים בפעולה במהירות, ולזהות ולפתור בעיות בקוד בקלות רבה יותר.
בדיקת התכונה 'שליטה במכשיר'
במסוף Action, צריך לציין את כתובת ה-URL של אפליקציית האינטרנט, שמספקת את ה-HTML שנטען במכשיר Google Home או Google Nest במהלך הביצוע המקומי.
כדי לבדוק את בקרת המכשיר עם השלמת הזמנה מקומית, פועלים לפי השלבים הבאים:
Chrome
- פותחים את הפרויקט של הבית החכם במסוף Actions.
- בחלונית הניווט הימנית, לוחצים על פעולות.
- בקטע Configure local home SDK (optional) > Enter your testing URL for Chrome, מציינים את כתובת ה-URL של שרת הפיתוח שמציג את ה-HTML שמפעיל את אפליקציית ה-Fulfillment המקומית.
- לוחצים על שמירה. יכול להיות שיחלפו עד 30 דקות עד ש-Google תפיץ את השינויים שבוצעו במסוף.
- מפעילים מחדש את מכשיר Google Home או Google Nest לבדיקה.
- נותנים פקודה למכשיר החכם. לדוגמה, אם המכשיר שלכם מטמיע את המאפיין OnOff, תוכלו לומר "Ok Google, turn on the lights".
Node.js
- פותחים את הפרויקט של הבית החכם במסוף Actions.
- בחלונית הניווט הימנית, לוחצים על פעולות.
- בקטע Configure local home SDK (optional) (הגדרת SDK מקומי לבית (אופציונלי)) > Enter your testing URL for Node (הזנת כתובת ה-URL לבדיקה של Node), מציינים את כתובת ה-URL של שרת הפיתוח שמציג את קוד ה-JavaScript שמפעיל את אפליקציית המילוי המקומית.
- לוחצים על שמירה. יכול להיות שיחלפו עד 30 דקות עד ש-Google תפיץ את השינויים שבוצעו במסוף.
- מפעילים מחדש את מכשיר Google Home או Google Nest לבדיקה.
- נותנים פקודה למכשיר החכם. לדוגמה, אם המכשיר שלכם מטמיע את המאפיין OnOff, תוכלו לומר "Ok Google, turn on the lights".
פרטים נוספים על סביבת זמן הריצה שבה נעשה שימוש במכשיר מופיעים בקטע מכשירים נתמכים.
.ניפוי באגים מ-Chrome
אתם יכולים לנפות באגים באפליקציית המילוי המקומי באמצעות כלי הפיתוח ל-Chrome. לפני שאפשר לנפות באגים, צריך לוודא שהסביבה מוגדרת בצורה נכונה:
- הגדרתם את כתובת ה-URL לפיתוח במסוף לכתובת URL שאפשר לגשת אליה ממכשיר Google Home או Google Nest (ברשת האזורית או דרך האינטרנט).
- המחשב מחובר לאותה רשת מקומית כמו מכשיר Google Home או Google Nest שאתם בודקים.
- הרשת לא חוסמת חבילות בין מכשירים.
- אתם מחוברים לאותו חשבון Google במסוף Actions ובמכשיר Google Home או Google Nest.
- עדכנתם את תגובת ה-SYNC ב-Cloud Fulfillment.
הפונקציה צריכה להחזיר לפחות ערך תקין אחד בשדה
otherDeviceIds
. - שהזנתם את פרטי ההגדרה הנכונים של הסריקה במסוף Actions.
כדי לחבר את אפליקציית המילוי המקומית למנטר הבאגים של Chrome DevTools:
Chrome
- במכונה המקומית לפיתוח, מתקינים ומפעילים את דפדפן Google Chrome.
- בשדה הכתובת בדפדפן Chrome, מזינים
chrome://inspect#devices
כדי להפעיל את הכלי לבדיקת הקוד של Chrome. בדף אמור להופיע רשימה של מכשירים, וקובץ ה-HTML אמור להופיע מתחת לשם של מכשיר Google Home או Google Nest לבדיקה. - לוחצים על הקישור הכחול לבדיקת הקוד מתחת ל-HTML כדי להפעיל את כלי הפיתוח ל-Chrome. עוברים לכרטיסייה מסוף. פלטפורמת Local Home מפיקה את גרסת האפליקציה ואת גרסת ה-SDK של Local Home ביומן המסוף. אם היומן מופיע, סימן ש-Google הטעינה את האפליקציה בהצלחה ויכולה להתחבר אליה. אם לא, מפעילים מחדש את מכשיר Google Home או Google Nest.
Node.js
- במכונה המקומית לפיתוח, מתקינים ומפעילים את דפדפן Google Chrome.
- קובעים את כתובת ה-IP המקומית של מכשיר הבדיקה.
- בשדה הכתובת בדפדפן Chrome, מזינים
chrome://inspect#devices
כדי להפעיל את הכלי לבדיקת הקוד של Chrome. - בוחרים באפשרות Configure… (הגדרה) כדי לפתוח את הגדרות זיהוי היעדים.
- מזינים
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 של סביבת הפיתוח. הפעולה הזו לא מאפסת את פלטפורמת Home המקומית, וייתכן שתצטרכו לאפס אותה כדי להפעיל מחדש את כוונת הפלטפורמה (כמו
IDENTIFY
) באפליקציית הביצועים המקומית. כדי לאפס את פלטפורמת 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
- במסוף, מעלים את אפליקציית JavaScript בלחיצה על Develop > Actions. בקטע Configure Local Home SDK, לוחצים על Upload JavaScript files.
- בתיבת הדו-שיח Upload files, מעלים את קובצי החבילה שיצרתם קודם. חשוב להעלות את שתי הגרסאות של קובצי החבילה (Node, Web) כדי שהפעולה תהיה מוגדרת לפעול בצורה תקינה בכל סביבות זמן הריצה שתמיכת המילוי המקומי תומכת בהן.
- העלאת JavaScript לטירגוט Node.js: מעלים את הקובץ
bundle.js
מהספרייהdist/node
. - מעלים את הקוד של JavaScript לטירגוט Chrome (דפדפן): מעלים את הקובץ
bundle.js
מהספרייהdist/web
.
- העלאת JavaScript לטירגוט Node.js: מעלים את הקובץ
- בודקים את הפעולה במכשיר עם Assistant מובנית כדי לוודא שהיא פועלת כצפוי בסביבת הייצור. מידע נוסף זמין במאמר בדיקה ושיתוף של הפעולה לבית חכם.
- כשתהיו מרוצים מהפעולה, תוכלו לשלוח אותה ל-Google לפריסה בסביבת הייצור לפי ההוראות במאמר הפעלת הפעולה לבית החכם. זה כולל את השלבים של הבדיקה העצמית והבקשה להסמכה.