اهداف

هدف‌های خانه هوشمند اشیای پیام‌رسانی ساده‌ای هستند که توضیح می‌دهند چه ادغام Cloud-to-cloud باید انجام شود، مثلاً روشن کردن چراغ یا پخش صدا در بلندگو.

همه هدف‌های smart home در فضای نام action.devices قرار دارند و باید برای آن‌ها برآورده‌سازی ارائه دهید. هرگاه Google Assistant قصدی را برای برآورده‌سازی ارسال کند، کد دسترسی OAuth 2 شخص ثالث کاربر در سرصفحه «مجوز» ارسال می‌شود.

این‌ها هدف‌های smart home پشتیبانی‌شده هستند:

SYNC

از قصد action.devices.SYNC برای درخواست فهرست دستگاه‌های smart home که کاربر متصل کرده است و برای استفاده دردسترس هستند استفاده می‌شود.

وقتی کاربری دستگاه‌هایش را با Google Home app (GHA) راه‌اندازی می‌کند، در زیرساخت ابری شما نیز اصالت‌سنجی می‌شود. سپس، Assistant کد OAuth2 را دریافت می‌کند. در این مرحله، Assistant قصد action.devices.SYNC را به تحقق شما ارسال می‌کند تا فهرست اولیه دستگاه‌ها و قابلیت‌های کاربر را از زیرساخت ابری شما بازیابی کند.

این شکل تعامل بین زیرساخت Google
    و زیرساخت شریک را نشان می‌دهد. از زیرساخت Google،
    فهرستی از شرکا وجود دارد که برای برنامه کارخواه «دستیار» دردسترس است، که سپس
    به زیرساخت شریک منتقل می‌شود تا اصالت‌سنجی OAuth را تکمیل کند. اصالت‌سنجی OAuth
    در سمت شریک عبارت است از وب‌نمای راه‌اندازی شریک، وب‌نمای OAuth،
    تنظیمات و شرایط اختیاری، و خدمات ابری شریک. سپس زیرساخت شریک،
    اعتبارنامه OAuth را به برنامه کارخواه «دستیار» برمی‌گرداند. سرویس‌های ابری شریک،
    دستگاه‌ها و قابلیت‌های دردسترس را به سرویس‌های «دستیار» ارسال می‌کند،
    و سپس این سرویس‌ها اطلاعات را در Home Graph ذخیره می‌کنند.
شکل ۱: تعامل بین زیرساخت Google و شریک

برای جلوگیری از قطع پیوند و بازپیوند کردن حساب کاربر، می‌توانید درخواست همگام‌سازی به Assistant ارسال کنید. با این کار، هدف action.devices.SYNC به تحقق شما ارسال می‌شود تا فهرست دستگاه‌ها و قابلیت‌ها همگام‌سازی شود. برای اطلاعات بیشتر، به پیاده‌سازی همگام‌سازی درخواست مراجعه کنید.

نمودار جریان قصد همگام‌سازی
شکل ۲: قصد SYNC

درطول راه‌اندازی اجرای محلی، پلاتفرم Local Home پاسخ SYNC را از اجرای ابری smart home «کنش» شما بررسی می‌کند. برای کسب اطلاعات بیشتر درباره نحوه اصلاح پاسخ SYNC برای پشتیبانی از اجرای محلی، به‌روزرسانی پاسخ SYNC در اجرای ابری را ببینید.

QUERY

از هدف action.devices.QUERY برای پرسمان وضعیت فعلی دستگاه‌های smart home استفاده می‌شود.

وقتی کاربران وضعیت دستگاه را پرسمان می‌کنند، برای پاسخ دادن به سؤالی مثل Ok Google، کدام چراغ‌ها در آشپزخانه روشن است؟، ‫Assistant هدف action.devices.QUERY را به تحقق شما ارسال می‌کند.

نمودار جریان هدف پُرسمان
شکل ۳: هدف QUERY

برای ارائه بهترین تجربه کاربری، باید Report State را پیاده‌سازی کنید تا وضعیت فعلی دستگاه‌های کاربر را مستقیماً به Google Home Graph گزارش دهید. برای مثال، این کار به Assistant اطلاع می‌دهد که آیا کاربر شما چراغ هوشمند را با کلید برق فیزیکی روشن کرده است یا نه.

گزارش کردن وضعیت دستگاه بااستفاده از Report State
شکل ۴: گزارش کردن وضعیت دستگاه

EXECUTE

از هدف action.devices.EXECUTE برای ارائه فرمان‌هایی برای اجرا در دستگاه‌های smart home استفاده می‌شود.

وقتی کاربران با Assistant به دستگاه‌ها فرمان ارسال می‌کنند، اجرای شما هدف action.devices.EXECUTE را برای اجرای شما دریافت می‌کند که کنش و دستگاه‌هایی را که باید روی آن‌ها کنش انجام شود شرح می‌دهد. کاربر می‌تواند با فرمانی مثل Ok Google، چراغ‌های اتاق نشیمن را روشن کن، کنشی را در دستگاه اجرا کند.

نمودار جریان قصد EXECUTE
شکل ۵: قصد EXECUTE

قطع کردن اتصال

قصد action.devices.DISCONNECT برای اطلاع‌رسانی به شما راه‌اندازی می‌شود وقتی کاربری پیوند حساب برنامه را از Assistant لغو کرده باشد. پس‌از دریافت هدف action.devices.DISCONNECT، نباید وضعیت دستگاه‌های این کاربر را گزارش کنید.