مقاصد

مقاصد خانه هوشمند، اشیاء پیام‌رسان ساده‌ای هستند که توصیف می‌کنند چه اقدامی smart home انجام می‌شود، مانند روشن کردن چراغ یا پخش صدا به بلندگو.

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

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

همگام سازی

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

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

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

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

نمودار جریان یک هدف SYNC
شکل 2: هدف SYNC

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

پرس و جو

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

هنگامی که کاربران وضعیت دستگاه را جویا می شوند، برای پاسخ به سؤالی مانند Hey Google، چه چراغ هایی در آشپزخانه روشن است؟ , Assistant یک هدف action.devices.QUERY را برای انجام شما ارسال می کند.

نمودار جریان یک هدف QUERY
شکل 3: هدف QUERY

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

گزارش وضعیت دستگاه با استفاده از وضعیت گزارش
شکل 4: گزارش وضعیت دستگاه

اجرا کردن

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

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

نمودار جریان یک هدف EXECUTE
شکل 5: EXECUTE intent

قطع شدن

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