Niyetler

Akıllı ev amaçları, smart home işlemi için gerçekleştirilecek işlemi (ör. ışığı yakma veya hoparlöre ses yayınlama) açıklayan basit mesaj nesneleridir.

smart home amaçlarının tümü action.devices ad alanında yer alır ve bunlar için istek karşılama yapmanız gerekir. Google Assistant, istek karşılama isteği gönderdiğinde kullanıcının üçüncü taraf OAuth 2 erişim jetonu Yetkilendirme başlığında iletilir.

Desteklenen smart home amaçları şunlardır:

SENKRONİZE ET

action.devices.SYNC amacı, kullanıcının bağlandığı ve kullanıma hazır olduğu smart home cihazın listesini istemek için kullanılır.

Cihazlarını Google Home app (GHA) ile ayarlayan kullanıcılar, bulut altyapınıza yönelik olarak da doğrulanır. Ardından Assistant bir OAuth2 jetonu alır. Bu noktada Assistant, bulut altyapınızdan kullanıcı cihazları ve özelliklerinin ilk listesini almak için karşılamanıza bir action.devices.SYNC niyeti gönderir.

Bu şekilde, Google altyapısı ile iş ortağı altyapısı arasındaki etkileşim gösterilmektedir. Google altyapısında, Asistan istemci uygulamasında kullanılabilen iş ortaklarının listesi bulunur. Bu liste, daha sonra OAuth kimlik doğrulamasını tamamlamak için iş ortağı altyapısına aktarılır. İş ortağı tarafındaki OAuth kimlik doğrulaması; iş ortağı kurulum web görünümü, OAuth web görünümü, isteğe bağlı ayarlar ve şartlar ile iş ortağı bulut hizmetleridir. İş ortağı altyapısı, daha sonra OAuth kimlik bilgilerini Asistan istemci uygulamasına döndürür. İş ortağı bulut hizmetleri, kullanılabilir cihazları ve özellikleri Asistan hizmetlerine gönderir ve bunlar daha sonra bilgileri Home Graph'te depolar.
Şekil 1: Google ve İş Ortağı altyapısı arasındaki etkileşim

Bir kullanıcının hesabının bağlantısını kaldırmayı ve yeniden bağlantı oluşturmayı önlemek için Assistant ile senkronizasyon isteği gönderebilirsiniz. Bu işlem, cihaz ve özellikler listesini senkronize etmek için action.devices.SYNC niyetini karşılama isteğinize gönderir. Daha fazla bilgi için İstek Senkronizasyonunu Uygulama bölümüne bakın.

SYNC amacının akış diyagramı
Şekil 2: SENKRONİZASYON amacı

Yerel istek karşılama kurulumu sırasında Yerel Ev platformu, smart home İşleminizin bulut istek karşılamasından alınan SYNC yanıtını kontrol eder. SYNC yanıtınızı yerel istek karşılamayı destekleyecek şekilde değiştirme hakkında daha fazla bilgi edinmek için Bulut istek karşılamada SENKRONİZASYON yanıtını güncelleme bölümüne bakın.

QUERY

action.devices.QUERY amacı, smart home cihazın mevcut durumunu sorgulamak için kullanılır.

Kullanıcılar cihaz durumunu sorgularken, Ok Google, mutfakta hangi ışıklar var? gibi bir soruya yanıt vermek için Assistant, karşılamanıza action.devices.QUERY amacı gönderir.

QUERY amacının akış diyagramı
Şekil 3: QUERY amacı

En iyi kullanıcı deneyimi için bir kullanıcının cihazlarının mevcut durumunu doğrudan Google Home Graph adlı müşteriye proaktif olarak bildirmek üzere Rapor Durumu'nu uygulamanız gerekir. Örneğin bu, Assistant adlı kullanıcının kullanıcınızın fiziksel ışık anahtarı olan akıllı ışığı açıp açmadığını bilmesini sağlar.

Rapor Durumunu kullanarak cihaz durumu bildiriliyor
Şekil 4: Cihaz durumunu raporlama

Yürüt

action.devices.EXECUTE amacı, smart home cihazlarda yürütülecek komutları sağlamak için kullanılır.

Kullanıcılar Assistant ile cihazlara komut gönderdiğinde, karşılamanıza, işlemi ve hangi cihazlarda işlem yapılacakı açıklayan, sipariş karşılama işleminiz için action.devices.EXECUTE amacı gönderilir. Kullanıcılar, Ok Google, salonumun ışıklarını aç gibi bir komutla cihazda işlem gerçekleştirebilir.

EXECUTE amacının akış diyagramı
Şekil 5: Amaç YÜRÜTME

DISCONNECT

action.devices.DISCONNECT amacı, bir kullanıcı uygulama hesabının Assistant bağlantısını kaldırdığında sizi bilgilendirmek için tetiklenir. Bir action.devices.DISCONNECT amacı aldıktan sonra bu kullanıcının cihazları için durum bildirmemelisiniz.