כוונות לבית חכם הן אובייקטים פשוטים להעברת הודעות שמתארים איזו פעולה smart home לבצע, כמו הפעלת אור או הפעלת Cast של אודיו לרמקול.
כל ה-Intents מסוג smart home נמצאים במרחב השמות action.devices
, ואתם צריכים לספק להם מילוי הזמנות. בכל פעם ש-Google Assistant שולח Intent למילוי הזמנות, אסימון הגישה של צד שלישי מסוג OAuth 2 של המשתמש מועבר בכותרת ההרשאה.
אלה ה-Intents הנתמכים של smart home:
סנכרון
Intent מסוג action.devices.SYNC
משמש כדי לבקש רשימה של smart home מכשירים שהמשתמש חובר וזמינים לשימוש.
כשמשתמשים מגדירים את המכשירים שלהם באמצעות Google Home app (GHA), הם גם עוברים אימות בתשתית הענן שלכם. לאחר מכן, הקוד Assistant מקבל אסימון OAuth2. בשלב הזה, הפקודה Assistant שולחת Intent מסוג action.devices.SYNC
למילוי ההזמנות, כדי לאחזר את הרשימה הראשונית של המכשירים והיכולות של המשתמשים מתשתית הענן.
![האיור הזה מציג את האינטראקציה בין התשתית של Google
לבין התשתית של השותף. בתשתית של Google יש רשימה של שותפים שזמינים לאפליקציית הלקוח של Assistant. לאחר מכן, היא עוברת לתשתית של השותף כדי להשלים את אימות OAuth. אימות OAuth
בצד השותף הוא WebView להגדרת שותף, WebView של OAuth, הגדרות ותנאים אופציונליים ושירותי ענן של שותפים. התשתית של השותף
לאחר מכן מחזירה את פרטי הכניסה ל-OAuth לאפליקציית הלקוח של Assistant. שירותי הענן של השותפים שולחים מכשירים ויכולות זמינים לשירותי Assistant,
והנתונים האלה נשמרים ב-Home Graph.](https://developers.home.google.com/static/cloud-to-cloud/primer/images/smarthome001.png?authuser=1&hl=he)
כדי להימנע מביטול הקישור של חשבון המשתמש ומקישורו מחדש, אפשר לשלוח בקשה לסנכרון אל Assistant. הפעולה הזו שולחת את ה-Intent action.devices.SYNC
למילוי ההזמנות כדי לסנכרן את רשימת המכשירים והיכולות. למידע נוסף, ראו הטמעה של בקשה לסנכרון.
![תרשים זרימה של Intent של סנכרון](https://developers.home.google.com/static/cloud-to-cloud/primer/images/smarthome002.png?authuser=1&hl=he)
כשמגדירים את מילוי ההזמנה בחנות המקומית, פלטפורמת Home Home בודקת את התשובה SYNC
ממילוי הבקשה של הפעולה smart home בענן. במאמר עדכון תגובת סנכרון במילוי הזמנה בענן מוסבר איך לשנות את התשובה של SYNC
כדי לתמוך במילוי הזמנה מקומי.
QUERY
ה-Intent action.devices.QUERY
משמש לשליחת שאילתות על המצב הנוכחי של מכשירי smart home.
כשמשתמשים שואלים שאילתה על סטטוס המכשיר, כדי לענות על שאלה כמו
Ok Google, what lights are on the kitchen?,
Assistant שולח Intent מסוג action.devices.QUERY
למילוי ההזמנות.
![תרשים זרימה של Intent מסוג QUERY](https://developers.home.google.com/static/cloud-to-cloud/primer/images/query-diagram.png?authuser=1&hl=he)
כדי ליהנות מחוויית המשתמש הטובה ביותר, כדאי להטמיע את מצב הדיווח כדי לדווח באופן יזום על המצב הנוכחי של המכשירים של המשתמשים ישירות ל-Google Home Graph. לדוגמה, כך מאפשר ל-Assistant לדעת אם המשתמש הפעיל נורה חכמה באמצעות מתג אור פיזי.
![דיווח על מצב המכשיר באמצעות מצב הדיווח](https://developers.home.google.com/static/cloud-to-cloud/primer/images/smarthome004.png?authuser=1&hl=he)
להוציא
ה-Intent action.devices.EXECUTE
משמש כדי לספק פקודות להפעלה במכשירי smart home.
כשמשתמשים שולחים פקודות למכשירים עם Assistant, מילוי ההזמנה מקבל Intent מסוג action.devices.EXECUTE
, שמתאר את הפעולה ואת המכשירים שעליהם צריך לבצע פעולה. המשתמש יכול לבצע פעולה במכשיר באמצעות פקודה כמו Ok Google, turn on my living room lights.
![תרשים זרימה של כוונת החרגה](https://developers.home.google.com/static/cloud-to-cloud/primer/images/smarthome003.png?authuser=1&hl=he)
התנתקות
ה-Intent action.devices.DISCONNECT
מופעל כדי ליידע אתכם כשמשתמש מבטל את הקישור של חשבון האפליקציה אל Assistant.
אחרי קבלת Intent מסוג action.devices.DISCONNECT
, אסור לדווח על המצב של המכשירים של המשתמש הזה.