淘汰最佳做法

本指南提供對話動作的使用者訊息和遷移路徑 (已於 2023 年 6 月 13 日淘汰)。涵蓋以下方面:

  • 淘汰階段:動作目前和淘汰後的運作方式。
  • 建議訊息:建議加入動作的通知。
  • 可能的遷移途徑:在服務終止後保留使用者的選項。

主動網誌文章 (選用)

每個行動、代理商和商家各有不同。除了按照本指南中推薦的訊息更新「動作」之外,建議您也發布網誌文章,主動回答使用者常見問題:

  • 異動簡介
  • 何時會改變體驗?
  • 如何繼續收到類似功能?

建議您在任何淘汰公告中加入遷移路徑選項。可透過電子郵件、電子報和社群媒體分享貼文。

淘汰階段

下表說明對話動作目前的行為、在停用日期後會如何變化,以及您可以向使用者通知哪些更新。

淘汰日期前 (2023 年 6 月 13 日) 淘汰後
動作行為 現有的動作體驗 已停用動作叫用
建議的開發人員更新 將停用通知新增至動作 (建議) 不適用
Google 使用者體驗最新消息 叫用時,Google 可能會提供文字轉語音 (TTS) 通知,說明該動作在服務終止日期過後將無法再使用。 叫用時,Google 會提供 TTS 通知使用者,說明這個動作已無法使用。

如果您在淘汰日期前決定不主動停用動作,叫用該動作的使用者就會收到 Google 提供的 TTS 通知。我們仍會定義本通知的確切用語,但最終的用語將不會包含給使用者的遷移資訊。

推薦訊息

如要通知使用者即將到來的日落,最好的方法就是在使用者叫用您的動作時通知他們。您也可以透過這個機會,說明類似功能的遷移路徑

  • 訊息目的:向使用者通知即將發生的異動,並通知使用者可用的遷移選項。

  • 訊息傳送時間範圍:在淘汰前至少 30 天 (2022 年 5 月 13 日至 2022 年 6 月 13 日) 開始通知使用者。

處理停用查詢

如要特別回答使用者的淘汰問題,請建立採用以下建議用語的新全域自訂意圖

  • 「我們正在關閉 dateAction 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 pathdate(關閉 | 正在關閉)。

您也可以在動作可能會實作的任何特殊功能中新增通知:

  • 深層連結叫用:顯示資訊基本資訊卡 (範例)。

  • 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 AssistCCAI Insights) 的聊天機器人、語音機器人和電話服務中心,您可以更快解決客戶需求。您可以使用以下訊息範例向使用者說明客戶服務選項:

  • 如需日後支援,請撥打 support number。」
  • 「日後如需支援,請造訪我們的網站,網址為:short link url。」
  • 日後如要提供意見,請透過「公司名稱」Slack 頻道與我們進行即時通訊。」

客戶服務選項與對話動作有幾點差異:

  • 智慧螢幕不支援這些功能。
  • 但無法與 Google 助理整合。

網站

您可以將使用者帶往您的網站提供的功能。您可以運用以下訊息範例,向使用者說明可選用哪些網路選項:

  • 「日後如需支援,請造訪我們的網站 short link url。」

網站與對話動作有下列差異:

  • 智慧螢幕不支援網站。
  • 網站無法直接與 Google 助理整合

程式碼範例

以上程式碼範例可為您的對話動作建構停用相關回應。

基本資訊卡範例

YAML

candidates:
  - first_simple:
    variants:
    - speech: >-
      We are turning off  on . 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 off  on . 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 off  on . 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."
      }
    }
  }
}