Bir webhook çağrısında, birden fazla oturumdaki parametre değerlerini şurada depolayabilirsiniz: aynı hanede (Home Graph'e göre) ev depolama alanındaki depolama alanını kullanır. İşleminiz şunları yapabilir: depolanan bu değerleri daha sonra istemlerde ve koşullarda kullanabilir, kodu, gerektiğinde belirli bir hanenin ev depolama alanındaki değerlere erişebilir.
Ev depolama alanının durumu app.handle()
isteğinde iletilir ve depolanır
home
nesnesinin yerini alır.
Sınırlamalar
Ev depolama alanı, bir Home'un parçası olmadığı için mobil cihazlarla kullanılamaz
Grafik. Webhook kodunuzda HOME_STORAGE
cihaz özelliğini kullanın
kullanıcı cihazının özelliklerine göre iş mantığını dallara ayırmanızı sağlar.
Ev depolama alanını kullanmak için etkinleştirmeniz gerekir:
- Actions konsolunda Dağıt'a gidin > Dizin bilgileri.
- Ek Bilgiler bölümünde Ana Sayfa kutusunu işaretleyin depolama alanı.
Hanedeki verileri okuma ve yazma
Ev depolama alanını güncellemek veya yeni bir değer belirlemek için değeri params
cihazına atayın.
alanı için dönüşüm gerçekleştiren
home
nesnesidir. Aşağıdaki örnek
"exampleColor" değerini ayarlar "kırmızı" olarak ev depolama alanında:
Node.js
// Assign color to home storage app.handle('storeColor', conv => { let color = 'red'; conv.home.params.exampleColor = color; });
JSON
{ "responseJson": { "session": { "id": "1234567890123456789", "params": {} }, "prompt": { "override": false }, "home": { "params": { "exampleColor": "red" } } } }
Ev depolama alanında depolanan verilere erişmek için verileri webhook'taki bir değişkene atayın çağrısına bir tıklama URL'si eklemeniz gerekir. Aşağıdaki örnek, "exampleColor"dan bir değer alır. evde depolama alanı:
Node.js
// Retrieve color from home storage app.handle('getStoredColor', conv => { let color = conv.home.params.exampleColor; });
JSON
{ "responseJson": { "session": { "id": "1234567890123456789", "params": {} }, "prompt": { "override": false }, "home": { "params": { "homeColor": "red" } } } }
Daha önce kaydedilmiş bir değeri temizlemek için bir webhook çağrısında bu değeri null
olarak ayarlayın.
Aşağıdaki örnekte "exampleColor" değeri temizlenmektedir ev depolama alanında:
Node.js
// Clear color from home storage app.handle('clearStoredColor', conv => { conv.home.params.exampleColor = null; });
JSON
{ "responseJson": { "session": { "id": "1234567890123456789", "params": {} }, "prompt": { "override": false }, "home": { "params": {} } } }
İstemlerdeki depolanan değerlere başvurma
Ev depolama alanında depolanan değerlere istemde başvurabilirsiniz. Referans
değer için $home.params.PARAMETER_NAME
kullanın
söz dizimi; burada PARAMETER_NAME
,
web kancası ile otomatik olarak doldurulur.
Örneğin daha önce ev depolama alanında
exampleColor
parametresinden yararlanın. Bir istemde bu değere erişmek için
değeri ($home.params.exampleColor
kullanarak):
JSON
{ "candidates": [{ "first_simple": { "variants": [{ "speech": "Your favorite color is $home.params.exampleColor." }] } }] }
Koşullar dahilinde kayıtlı değerlere başvurma
Ev depolama alanında depolanan değerlere koşullar bölümünden de referans verebilirsiniz. Alıcı:
değere başvuruda bulunmak için, home.params.PARAMETER_NAME
söz dizimi; burada PARAMETER_NAME
,
web kancası ile otomatik olarak doldurulur.
Örneğin daha önce ev depolama alanında
exampleColor
parametresini içeriyor ve "red" değeriyle eşleştirmek istiyorsanız
koşul. Koşulunuzda, saklanan değere şunu kullanarak başvurursunuz:
home.params.exampleColor
Koşul ifadeniz şöyle görünür:
bu:
Koşul söz dizimi
home.params.exampleColor == "red"
Ev depolama alanı verilerinin son kullanma tarihi
İşlem 90 gün art arda yapılmazsa evdeki depolama alanı verileri silinir çağrılır. İşlem, Home Graph ile ilişkili herhangi bir cihazda çağrılır yapı 90 günlük zamanlayıcıyı sıfırlar. Bir Home Graph yapısı silinirse ilgili ev depolama alanı verileri temizlenir.
Home Graph yapı yöneticileri, ev depolama alanını kullanan işlemler için ana ekranı temizleyebilir İşlemin Asistan dizinindeki sayfasından yönettikleri yapılar için depolama alanı:
- Görüntülemek veya kullanıcı depolama alanınızı temizlemek istediğiniz işlemi bulup seçin.
- Sayfanın alt kısmına gidin:
- Evin depolama alanında sizin için depolanan verileri kaldırmak için Durdur action_name'i tıklayın beni hatırlamasını zorlaştırdı.
Bir cihazın yöneticisi cihazın yapıyla olan ilişkisini kestiğinde, evdeki depolama alanı kopukluğunu da azalttı. Ev depolama alanı verileri bir cihazla ilişkilendirilmeye devam ediyor yapı yöneticisi değişse bile,
Simülatörde ev depolama verileri
Actions Console'daki simülasyon aracını kullanarak İşleminizi test ederken, evde depolanan verilerin işleyiş şekli, fiziksel olanak tanır. Simülatör, kendi Home Graph'in bir parçası olarak kabul edildiğinden veriler diğer cihazlarınız için de geçerlidir. Ayrıca, ana sayfa Doğrulanmamış Simüle Et kullanıcı simülasyon aracı ayarının etkinleştirilmesi gerekir.
Örnek etkileşim
Aşağıda, oturum açmış bir kullanıcının ilk kez çağrıldığında örnek bir etkileşimi görebilirsiniz. İşlem:
Kullanıcı sorgusu | Ok Google, ExampleAction ile konuş. |
---|---|
Asistan yanıtı | Ornekİşlemi Alma. |
Asistan yanıtı | Örnekİşlemi her oynattığınızda kaydedildiğinden emin olun. diğer kullanıcılar kaldığınız yerden devam edebilir. |
Örnekİşlem yanıtı | Merhaba doğrulanmış kullanıcı. 0. seviyedesiniz. İleri, sıfırla veya iptal deyin. |
Kullanıcı sorgusu | Sonraki. |
Örnekİşlem yanıtı | 1. seviyedesiniz. |
Kullanıcı sorgusu | Ayrıl öğesine dokunun. |
Ardından, aynı doğrulanmış kullanıcı bir süre sonra İşleme geri döndüğünde:
Kullanıcı sorgusu | Ok Google, ExampleAction ile konuş. |
---|---|
Asistan yanıtı | Ornekİşlemi Alma. |
Örnekİşlem yanıtı | Merhaba doğrulanmış kullanıcı. 1. seviyedesiniz. İleri, sıfırla veya iptal deyin. |
Kullanıcı sorgusu | Sonraki. |
Örnekİşlem yanıtı | 2. seviyedesiniz. |
Kullanıcı sorgusu | Ayrıl öğesine dokunun. |
Ertesi gün, doğrulanmamış bir kullanıcı başka bir cihazda İşlemle etkileşimde bulunur aynı hanede (Home Graph'te belirtildiği gibi).
Kullanıcı sorgusu | Ok Google, ExampleAction ile konuş. |
---|---|
Asistan yanıtı | Ornekİşlemi Alma. |
Asistan yanıtı | Örnekİşlemi her oynattığınızda kaydedildiğinden emin olun. diğer kullanıcılar kaldığınız yerden devam edebilir. |
Örnekİşlem yanıtı | Merhaba misafir kullanıcı. 2. seviyedesiniz. İleri, sıfırla veya iptal deyin. |
Kullanıcı sorgusu | Sonraki. |
Örnekİşlem yanıtı | 3. seviyedesiniz. |
Kullanıcı sorgusu | Ayrıl öğesine dokunun. |