本指南提供對話動作的使用者訊息和遷移路徑 (已於 2023 年 6 月 13 日淘汰)。涵蓋以下方面:
- 淘汰階段:動作目前和淘汰後的運作方式。
- 建議訊息:建議加入動作的通知。
- 可能的遷移途徑:在服務終止後保留使用者的選項。
主動網誌文章 (選用)
每個行動、代理商和商家各有不同。除了按照本指南中推薦的訊息更新「動作」之外,建議您也發布網誌文章,主動回答使用者常見問題:
- 異動簡介
- 何時會改變體驗?
- 如何繼續收到類似功能?
建議您在任何淘汰公告中加入遷移路徑選項。可透過電子郵件、電子報和社群媒體分享貼文。
淘汰階段
下表說明對話動作目前的行為、在停用日期後會如何變化,以及您可以向使用者通知哪些更新。
淘汰日期前 (2023 年 6 月 13 日) | 淘汰後 | |
---|---|---|
動作行為 | 現有的動作體驗 | 已停用動作叫用 |
建議的開發人員更新 | 將停用通知新增至動作 (建議) | 不適用 |
Google 使用者體驗最新消息 | 叫用時,Google 可能會提供文字轉語音 (TTS) 通知,說明該動作在服務終止日期過後將無法再使用。 | 叫用時,Google 會提供 TTS 通知使用者,說明這個動作已無法使用。 |
如果您在淘汰日期前決定不主動停用動作,叫用該動作的使用者就會收到 Google 提供的 TTS 通知。我們仍會定義本通知的確切用語,但最終的用語將不會包含給使用者的遷移資訊。
推薦訊息
如要通知使用者即將到來的日落,最好的方法就是在使用者叫用您的動作時通知他們。您也可以透過這個機會,說明類似功能的遷移路徑。
訊息目的:向使用者通知即將發生的異動,並通知使用者可用的遷移選項。
訊息傳送時間範圍:在淘汰前至少 30 天 (2022 年 5 月 13 日至 2022 年 6 月 13 日) 開始通知使用者。
處理停用查詢
如要特別回答使用者的淘汰問題,請建立採用以下建議用語的新全域自訂意圖:
- 「我們正在關閉
date
的Action Name
功能。詳情請參閱short link
|migration path message
。」
互動式畫布
如果您的動作使用互動式畫布,請在畫布載入頁面使用以下範例用語新增通知橫幅:
- 「
Action Name
即將關閉date
,詳情請前往「shortlink url
」。」 - 「
Action Name
將於migration path message
date
停止關閉。」
選用通知內容
您還可以透過其他方式更新現有動作,向使用者通知即將發生的異動。考慮為現有的動作訊息加上後置字元淘汰通知:
- 「
existing message
。另外請注意,Action Name
將於date
(關閉 | 正在關閉)。 - 「
existing message
。另請注意,Action Name
將於migration path
date
(關閉 | 正在關閉)。
您也可以在動作可能會實作的任何特殊功能中新增通知:
深層連結叫用:顯示資訊基本資訊卡 (範例)。
Last prompt
訊息:您可以在下列任一提示類型中加入last prompt
訊息 (範例):- 內建意圖 (BII)。適用於 Play 遊戲、述說故事和教育 BII。
- 日常安排建議。
- 歡迎提示。
結束提示:您也可以在「結束」提示 (
actions.intent.CANCEL
) 中加入特殊的last prompt
訊息 (範例)。推播通知:將下列建議用語加入使用 Action Builder 或 Dialogflow 建構的任何推播通知:
- 「提醒:
Action Name
將於date
停止服務,如要瞭解詳情,請前往shortlink url
。」 - 「提醒:
Action Name
將於migration path message
關閉date
。
- 「提醒:
可能的遷移途徑
雖然對話動作中的遷移路徑可能沒有類似的遷移路徑,但請根據您的使用者需求和可用的開發人員資源,考慮採用下列做法。
媒體內容
媒體動作可讓使用者透過 Google 助理發現您的內容,並直接在應用程式中開始播放內容。您可以利用以下訊息範例,協助使用者改用媒體動作:
-
「只要說出「Ok Google,播放
Media Brand Name
」,隨時可以找到我們。」 -
「你隨時可以說『Ok Google,在
Media Brand Name
上聽`song』,找到我們。」
媒體動作與對話動作不同:
- 透過媒體動作,使用者不會直接與第三方互動,而是透過 Google 助理對第三方進行「互動」。
- 媒體動作不屬於對話性質,僅支援「單次拍攝」查詢。
Android 應用程式
Google 助理 應用程式動作 是 Android 的一項功能,可讓使用者透過 Google 助理以語音啟動及控制 Android 應用程式。您可以使用以下訊息範例,向使用者說明您的應用程式動作:
-
「你隨時可以說出「Ok Google,開啟
App Name
」來找到我們。」 -
「只要在
App Name
上說出「Ok Google,BII
」,即可開啟 Android 應用程式。」 -
「只要說出「Ok Google,開啟
App Name
」,即可安裝我們的 Android 應用程式。」
應用程式動作與對話動作有幾點差異:
- 應用程式動作 BII 只提供有限的語言和語言代碼支援。
- 必須要有 Android 應用程式才能啟動應用程式動作。
- 智慧螢幕不支援應用程式動作。
- 應用程式動作並非對話式,僅支援「單次拍攝」查詢。
硬體
Google 智慧型住宅可讓開發人員透過 Google 助理讓裝置使用語音功能。您可以使用以下訊息範例,向使用者說明您的智慧型住宅動作:
-
「你隨時可以使用
device name
(網址為store
) 與我們聯絡」 -
「你可以透過 Google Home 應用程式中的
device name
和我們交談」
智慧型住宅與對話動作具有以下差異:
- 你只能將智慧型住宅新增到相容裝置。
- 智慧型住宅不支援對話式,僅支援「單次拍攝」查詢。
即時通訊服務專員
如要透過聊天機器人與使用者交談,您可以使用下列產品:
- Dialogflow CX 提供先進的虛擬服務專員類型,適合大型且複雜的虛擬服務專員。這項服務整合了 Dialogflow CX Phone Gateway、Dialogflow Messenger、Facebook 和 LINE 中的 Messenger 等產品。請參閱完整整合清單。
- Dialogflow EX 提供標準虛擬服務專員類型,適合小型且更簡單的代理程式。這項服務提供多項整合功能,包括 Slack、Telegram、LINE、Facebook 的 Messenger,以及 Meta 的 Workplace 等服務。請參閱完整整合清單。
您可以使用下列訊息範例向使用者說明您的即時通訊服務專員:
- 「如需日後支援,請撥打
support number
。」 -
「如需日後支援,請造訪網站:
short link url
。」 -
「日後如要提供意見,請透過
Company Name
Slack 頻道與我們聯絡。」
即時通訊代理程式服務與對話動作有幾項差異:
- 智慧螢幕不支援服務專員。
- 服務專員無法與 Google 助理整合。
客戶服務
透過 Contact Center AI 服務 (例如 Agent Assist 和 CCAI Insights) 的聊天機器人、語音機器人和電話服務中心,您可以更快解決客戶需求。您可以使用以下訊息範例向使用者說明客戶服務選項:
- 如需日後支援,請撥打
support number
。」 -
「日後如需支援,請造訪我們的網站,網址為:
short link url
。」 - 日後如要提供意見,請透過「公司名稱」Slack 頻道與我們進行即時通訊。」
客戶服務選項與對話動作有幾點差異:
- 智慧螢幕不支援這些功能。
- 但無法與 Google 助理整合。
網站
您可以將使用者帶往您的網站提供的功能。您可以運用以下訊息範例,向使用者說明可選用哪些網路選項:
-
「日後如需支援,請造訪我們的網站
short link url
。」
網站與對話動作有下列差異:
- 智慧螢幕不支援網站。
- 網站無法直接與 Google 助理整合
程式碼範例
以上程式碼範例可為您的對話動作建構停用相關回應。
基本資訊卡範例
YAML
candidates: - first_simple: variants: - speech: >- We are turning offon . For more details check out text: >- We are turning off on . For more details check out content: card: title: Turning Off subtitle: text: >- `We are turning off on . For more details check out .` button: name: Learn more open: url:
JSON
{ "candidates": [ { "first_simple": { "variants": [ { "speech": "We are turning offon . For details, check out .", "text": "We are turning off on . For details, check out ." } ] }, "content": { "card": { "title": "Turning Off ", "subtitle": " ", "text": "`We are turning off on . For details, check out .`", "button": { "name": "Learn more", "open": { "url": " " } } } } } ] }
Node.js
app.handle('Card', conv => { conv.add('We are turning offon . For details, check out .'); conv.add(new Card({ "title": "Turning Off ", "subtitle": " ", "text": "Card Content", "button": new Link({ name: 'Learn more', open: { url: ' ', }, }) })); });
JSON
{ "responseJson": { "session": { "id": "session_id", "params": {} }, "prompt": { "override": false, "content": { "card": { "title": "Turning Off", "subtitle": " ", "text": "We are turning off on . For, details check out .", "button": { "name": "Learn more", "open": { "url": " " } } } }, "firstSimple": { "speech": "We are turning off on . For details, check out .", "text": "We are turning off on . For details, check out ." } } } }
最後一個提示範例
YAML
candidates: - first_simple: variants: - speech:text: last_simple: variants: - speech: Also, just reminding you that will be turning off on text: Also, just reminding you that will be turning off on
JSON
{ "candidates": [ { "first_simple": { "variants": [ { "speech": "", "text": " " } ] }, "last_simple": { "variants": [ { "speech": "Also, just reminding you that will be turning off on ", "text": "Also, just reminding you that will be turning off on " } ] } } ] }
Node.js
app.handle('Simple', conv => { conv.add(new Simple({ speech: '', text: ' ' })); conv.add(new Simple({ speech: 'Also, just reminding you that will be turning off on ', text: 'Also, just reminding you that will be turning off on ' })); });
JSON
{ "responseJson": { "session": { "id": "session_id", "params": {} }, "prompt": { "override": false, "firstSimple": { "speech": "", "text": " " }, "lastSimple": { "speech": "Also, just reminding you that will be turning off on ", "text": "Also, just reminding you that will be turning off on " } } } }
最後一個提示 (結束/取消) 範例
YAML
candidates: - first_simple: variants: - speech:text: last_simple: variants: - speech: Also, just reminding you that will be turning off on . Bye. text: Also, just reminding you that will be turning off on . Bye.
JSON
{ "candidates": [ { "first_simple": { "variants": [ { "speech": "", "text": " " } ] }, "last_simple": { "variants": [ { "speech": "Also, just reminding you that will be turning off on . Bye.", "text": "Also, just reminding you that will be turning off on . Bye." } ] } } ] }
Node.js
app.handle('Simple', conv => { conv.add(new Simple({ speech: '', text: ' ' })); conv.add(new Simple({ speech: 'Also, just reminding you that will be turning off on . Bye.', text: 'Also, just reminding you that will be turning off on . Bye.' })); });
JSON
{ "responseJson": { "session": { "id": "session_id", "params": {} }, "prompt": { "override": false, "firstSimple": { "speech": "", "text": " " }, "lastSimple": { "speech": "Also, just reminding you that will be turning off on . Bye.", "text": "Also, just reminding you that will be turning off on . Bye." } } } }