בדיקה וניפוי באגים באפליקציה

מומלץ לפתח את האפליקציה המקומית למילוי הזמנות באמצעות השלבים המתוארים מוקדם יותר, ולאחר מכן לבדוק את השילוב של הבית החכם בסביבת האירוח שלכם באמצעות השלבים הבאים:

  1. בסביבת האירוח שלכם, עליכם להציג את דף ה-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>
    
    
  2. בדיקת השליטה במכשיר.

  3. ניפוי באגים מ-Chrome. שימוש בנקודות עצירה (breakpoint) וביומנים כדי לפתור בעיות בשילוב.

  4. שנה את קוד ה-TypeScript שלך והדר אותו, ולאחר מכן חזור על השלבים האלה.

באמצעות חזרה על תהליך היצירה והבדיקה, תוכלו לראות את השינויים בפעולה במהירות ובקלות רבות יותר, בקלות ובמהירות.

בדיקת בקרת המכשיר

במסוף Action (מסוף הפעולות), עליך לציין את כתובת ה-URL של אפליקציית האינטרנט שלך, שמשרתת את ה-HTML שנטען במכשיר Google Home או Google Nest במהלך מילוי הבקשה המקומי.

כדי לבדוק את בקרת המכשיר באמצעות מילוי הזמנות מקומי, פועלים לפי השלבים הבאים:

Chrome

  1. פותחים את פרויקט הבית החכם במסוף Actions.
  2. בחלונית הניווט הימנית, לוחצים על פעולות.
  3. בקטע הגדרת SDK מקומי של דף הבית (אופציונלי) > מזינים את כתובת ה-URL לבדיקה ב-Chrome, מציינים את כתובת ה-URL של שרת הפיתוח שמשמש את ה-HTML שמפעיל את האפליקציה המקומית למילוי הזמנות.
  4. לוחצים על שמירה. יכול להיות שיעברו עד 30 דקות עד ש-Google תפיץ את השינויים במסוף.
  5. מפעילים מחדש את מכשיר Google Home או Google Nest לבדיקה.
  6. שולחים פקודה למכשיר החכם. לדוגמה, אם במכשיר מוטמע מאפיין OnOff, אפשר לומר "Ok Google, turn on the lights".

Node.js

  1. פותחים את פרויקט הבית החכם במסוף Actions.
  2. בחלונית הניווט הימנית, לוחצים על פעולות.
  3. בקטע הגדרת SDK מקומי לבית (אופציונלי) > מזינים את כתובת ה-URL לבדיקה עבור צומת, מציינים את כתובת ה-URL של שרת הפיתוח שמשמש את ה-JavaScript שמפעיל את האפליקציה המקומית למילוי הזמנות.
  4. לוחצים על שמירה. יכול להיות שיעברו עד 30 דקות עד ש-Google תפיץ את השינויים במסוף.
  5. מפעילים מחדש את מכשיר Google Home או Google Nest לבדיקה.
  6. שולחים פקודה למכשיר החכם. לדוגמה, אם במכשיר מוטמע מאפיין OnOff, אפשר לומר "Ok Google, turn on the lights".

אפשר לקרוא פרטים נוספים על זמן הריצה שהמכשיר משתמש בו בקטע מכשירים נתמכים.

.

ניפוי באגים מ-Chrome

אתם יכולים לנפות באגים באפליקציית מילוי ההזמנות המקומית באמצעות Chrome DevTools. לפני שתוכלו לנפות באגים, ודאו שהסביבה מוגדרת נכון:

  • הגדרתם במסוף את כתובת ה-URL לפיתוח ככתובת URL שאליה ניתן להגיע ממכשיר Google Home או Google Nest (ברשת האזור המקומית או באינטרנט),
  • המכשיר מחובר לאותה רשת תקשורת מקומית שאליה מחובר מכשיר Google Home או Google Nest שבודקים.
  • הרשת לא חוסמת חבילות בין מכשירים.
  • אתם מחוברים לאותו חשבון Google בקונסולה ל-Actions וגם במכשיר Google Home או Google Nest.
  • עדכנתם את תגובת SYNC במילוי הבקשה בענן. הוא צריך להחזיר לפחות ערך חוקי אחד בשדה otherDeviceIds.
  • הזנתם את הפרטים הנכונים של הגדרות הסריקה במסוף Actions.

כדי לחבר את אפליקציית מילוי ההזמנות המקומית לכלי לניפוי באגים בכלי הפיתוח ל-Chrome:

Chrome

  1. במכונת הפיתוח המקומית, מתקינים ומפעילים את דפדפן Google Chrome.
  2. בשדה הכתובת בדפדפן Chrome, מפעילים את הכלי לבדיקת Chrome על ידי הזנת: chrome://inspect#devices. אמורה להופיע בדף רשימת מכשירים, וקובץ ה-HTML אמור להופיע מתחת לשם של מכשיר Google Home או Google Nest לבדיקה.
  3. לוחצים על קישור הבדיקה הכחול שמתחת ל-HTML כדי להפעיל את כלי הפיתוח ל-Chrome. עוברים לכרטיסייה מסוף. מערכת Local Home מציגה ביומן המסוף את גרסת האפליקציה ואת גרסת Local Home SDK. אם היומן מופיע, סימן ש-Google טענה את האפליקציה שלך בהצלחה ויכולה להתחבר אליו. אם לא, מפעילים מחדש את מכשיר Google Home או Google Nest.
  4. איור 1: אפליקציה מקומית למילוי הזמנות ב-chrome://inspect
    .

Node.js

  1. במכונת הפיתוח המקומית, מתקינים ומפעילים את דפדפן Google Chrome.
  2. בודקים מהי כתובת ה-IP המקומית של מכשיר הבדיקה.
  3. בשדה הכתובת בדפדפן Chrome, מפעילים את הכלי לבדיקת Chrome על ידי הזנת: chrome://inspect#devices.
  4. בוחרים באפשרות הגדרה... כדי לפתוח את הגדרות החשיפה של היעד.
  5. איור 2: הגדרות גילוי היעדים ב-chrome://inspect
    .
  6. מזינים DEVICE_IP_ADDRESS:9222 ברשימה ולוחצים על Done.
  7. צריך ללחוץ על קישור הבדיקה הכחול שמתחת לסקריפט כדי להפעיל את כלי הפיתוח ל-Chrome. עוברים לכרטיסייה מסוף. מערכת Local Home מציגה ביומן המסוף את גרסת האפליקציה ואת גרסת Local Home SDK. אם היומן מופיע, סימן ש-Google טענה את האפליקציה שלך בהצלחה ויכולה להתחבר אליו. אם לא, מפעילים מחדש את מכשיר Google Home או Google Nest.

במאמר מכשירים נתמכים תוכלו לקרוא מידע נוסף על זמן הריצה שהמכשיר משתמש בו.

טיפים לניפוי באגים

כמה דברים נוספים שכדאי לזכור במהלך ניפוי באגים:

  • אין לקשר כמה מכשירי Google Home או Google Nest לחשבון הבדיקה באותה רשת מקומית. לא תוכלו לקבוע לאיזה מכשיר Google Home או Google Nest יטורגטו פקודות מילוי הזמנות מקומיות.
  • צריך לרענן את הדף ב-Chrome DevTools כדי לטעון מחדש את מאגר האפליקציה המקומית למילוי הזמנות, עם הקוד העדכני ביותר מכתובת ה-URL לפיתוח. הפעולה הזו לא מאפסת את פלטפורמת Local Home, וייתכן שיהיה צורך להפעיל מחדש את הכוונות של הפלטפורמה (למשל IDENTIFY) באפליקציה המקומית למילוי הזמנות. כדי לאפס את פלטפורמת Local Home, צריך להפעיל מחדש את מכשיר Google Home או Google Nest.
  • בודקים שאפליקציית JavaScript נטענת ללא שגיאות. כדי לעשות זאת, בדקו את הקטע של המסוף בדף של כלי הפיתוח. אם יש בעיה, תראו הודעה כזו: Uncaught TypeError: Cannot read property ‘open’ of null.
  • הערך verificationId מהתגובה IDENTIFY חייב להתאים לאחת מהאפשרויות של otherDeviceIds מהתגובה SYNC.
  • ב-handler של EXECUTE, צריך לוודא שפקודות HTTP , TCP או UDP יכולות להתקבל במכשיר ולפעול כצפוי.
  • צריך להקפיד להחזיר Promise מה-handler.
  • מומלץ להימנע משמירה על מצב גלובלי בזיכרון. מידע נוסף זמין במחזור החיים של אפליקציה.
  • שגיאות שנוצרות על ידי אפליקציית מילוי ההזמנות המקומית יופיעו ביומני השגיאות של הפרויקט.

הכנה והשקה לייצור

כשמוכנים להפעיל את הפעולה בבית החכם, פועלים לפי השלבים הבאים:

  1. פותחים מסוף. בספריית הפרויקט, מריצים את הפקודה npm run build. הפקודה הזו יוצרת את חבילות JavaScript הבאות לאפליקציה שלך בספרייה dist:
    project-directory/
    └── dist
     ├── web
     │    └── bundle.js
     └── node
          └── bundle.js
    
  2. במסוף, מעלים את אפליקציית JavaScript בלחיצה על פיתוח > פעולות. בקטע Configure Local Home SDK לוחצים על Upload files JavaScript (העלאת קובצי JavaScript).
    איור 3: מעלים את אפליקציית JavaScript.
  3. בתיבת הדו-שיח Upload files (העלאת קבצים), מעלים את קובצי החבילה שיצרתם קודם לכן. חשוב להעלות את שתי הגרסאות של קובצי החבילה (Node, Web) כדי שהפעולה תוגדר לפעול כמו שצריך בכל סביבות זמן הריצה שנתמכות במילוי הזמנות מקומי.
    1. העלאת קובץ JavaScript לטירגוט Node.js: מעלים את הקובץ bundle.js מהספרייה dist/node.
    2. העלאת קובץ JavaScript שמטרגט ל-Chrome (הדפדפן): העלאת הקובץ bundle.js מהספרייה dist/web.
  4. בודקים את הפעולה במכשיר עם Assistant מובנית, כדי לוודא שהיא פועלת כצפוי בסביבת ייצור. מידע נוסף זמין במאמר בדיקה ושיתוף של הפעולה בבית החכם.
  5. כשתהיו מרוצים מהאופן שבו הפעולה פועלת, תוכלו לשלוח אותה אל Google לפריסה בסביבת ייצור. לשם כך, פועלים לפי ההוראות במאמר הפעלת הפעולה בבית החכם. כולל השלמת השלבים של הבדיקה העצמית ובקשת האישור.