網頁

您可以將 Conversational Agents (Dialogflow CX) 對話 (工作階段) 描述為狀態機器人,並以圖形呈現。工作階段的狀態會以頁面表示。

您會為每個流程定義多個頁面,這些頁面組合可處理流程所設計主題的完整對話。在任何時間點,只有一個頁面是「目前的頁面」,且系統會將目前的頁面視為「有效」,與該頁面相關聯的流程也視為「有效」。每個流程都有專屬的起始頁面。當流程首次啟用時,開始頁面會成為目前的頁面。對於每個對話輪次,目前的頁面會維持不變,或轉換至其他頁面。

您可以設定每個網頁,從使用者收集與網頁所代表對話狀態相關的資訊。舉例來說,您可以為披薩外送服務代理程式的「Food Order」流程建立下方圖表中的頁面 (以藍色標示)。圖表的「Start」節點代表「Food Order」流程的起始頁面。流程完成後,系統會轉換至「確認」流程。

多流程圖表範例。

網頁的生命週期

網頁啟用後,代理程式會依序執行幾個步驟,包括輸入內容執行、預先填寫表單、狀態處理常式評估、表單參數提示、傳送回應訊息給使用者,以及網頁變更或重複迴圈:

網頁生命週期圖表。

這項程序的詳細資訊如下:

  1. 如果網頁有fulfillment 項目,系統就會呼叫該項目。任何由服務提供的靜態回應都會加入回應佇列

    如果啟用部分回應,Conversational Agents (Dialogflow CX) 會清除回應佇列,並將所有佇列訊息傳送給串流 API 呼叫端,做為部分回應。

    如果執行要求含有 Webhook,系統會呼叫 Webhook,並可能將其他回應附加至佇列。這些額外回應不會觸發立即清除回應佇列的動作。

  2. 如果網頁有表單參數,系統可能會預先填入這些參數:

  3. 如果任何狀態處理常式在範圍內,系統會根據處理常式評估順序規則進行評估。這可能包括路徑、事件處理常式或從先前迴圈迭代中叫用的重新提示處理常式。如果呼叫任何狀態處理常式,可能會發生下列一或兩種情況:

    • 如果處理常式有執行要求,系統就會呼叫該執行要求。系統會將由執行單元提供的任何靜態回應新增至回應佇列。如果已啟用部分回應和 webhook,系統也會執行這些項目。
    • 如果處理常式有目標流程或頁面,工作階段會轉換至目標,而頁面會變為非活動狀態。
  4. 如果符合下列所有條件,系統就會在回應佇列中新增表單參數提示:

    • 網頁含有表單。
    • 還有必要的表單參數需要填寫。
    • 未在步驟 3 中執行重提示處理常式
    • 如果部分回應和 Webhook 已啟用,系統會執行這兩項作業。
  5. 系統會將剩餘的回應佇列訊息傳送給使用者,並等待使用者輸入內容。

  6. 如果使用者輸入的內容提供提示表單參數,請填入該參數。接下來請繼續執行步驟 3。

網頁生命週期導覽

模擬器執行步驟檢視器可讓您在特定對話輪次的步驟之間切換,並將相關的對話方塊建構工具元素聚焦於每個步驟。在以下範例中,使用者輸入「I would like to rent a car」(我想租車) 會觸發五個執行和轉換步驟:

  1. 執行步驟檢視器會將您帶往第一個步驟的對話開始頁面。在本例中,預設的起始頁面就是這個。 網頁執行步驟 1。

  2. 意圖 car_rental.reservation_create 的轉換路徑已觸發。執行步驟檢視器會將這個路徑設為焦點,您可以看到轉換目標是 Pickup Location 頁面。網頁執行步驟 2。

  3. 服務專員進入頁面 Pickup Location頁面執行步驟 3。

  4. 代理程式會評估 Pickup Location 頁面的輸入內容是否已完成。因為執行階段是空的,所以不會有任何動作。網頁執行步驟 4。

  5. 服務機器人會嘗試收集必要的表單參數 pickup_location,並向使用者顯示此參數的初始提示回應訊息。頁面執行步驟 5。

您也可以撤銷上次的語音輸入,嘗試其他操作,以測試不同的頁面轉場效果。

取消語音指令。

建立頁面

如要建立頁面,請按照下列步驟操作:

主控台

  1. 開啟 Dialogflow CX 控制台
  2. 選擇 Google Cloud 專案。
  3. 選取代理程式。
  4. 在「流程」部分選取頁面所需的流程。
  5. 按一下「頁面」部分中的新增 按鈕。
  6. 輸入網頁的顯示名稱。
  7. 按一下頁面顯示名稱旁邊的設定 按鈕。
  8. 選取 [編輯]
  9. 在隨即顯示的網頁編輯面板中輸入欄位。
  10. 按一下 [儲存]

API

請參閱 Page 類型的 create 方法。

選取網頁參照的通訊協定和版本:

通訊協定 V3 V3beta1
REST 網頁資源 網頁資源
RPC 網頁介面 網頁介面
C++ PagesClient 不適用
C# PagesClient 不適用
Go PagesClient 不適用
Java PagesClient PagesClient
Node.js PagesClient PagesClient
PHP 不適用 不適用
Python PagesClient PagesClient
Ruby 不適用 不適用

網頁資料

如要存取網頁資料,請按照下列步驟操作:

主控台

  1. 開啟 Dialogflow CX 控制台
  2. 為代理程式選擇 Google Cloud 專案。
  3. 選取代理程式。
  4. 按一下「流程」部分中的流程。
  5. 流程的頁面會填入「Pages」部分。
  6. 按一下頁面顯示名稱旁邊的設定 按鈕。
  7. 選取 [編輯]
  8. 在隨即顯示的網頁編輯面板中輸入欄位。
  9. 按一下「儲存」即可儲存變更。

API

請參閱 Page 類型的 getpatch/update 方法。

選取網頁參照的通訊協定和版本:

通訊協定 V3 V3beta1
REST 網頁資源 網頁資源
RPC 網頁介面 網頁介面
C++ PagesClient 不適用
C# PagesClient 不適用
Go PagesClient 不適用
Java PagesClient PagesClient
Node.js PagesClient PagesClient
PHP 不適用 不適用
Python PagesClient PagesClient
Ruby 不適用 不適用

以下資料與網頁相關聯:

  • 顯示名稱:網頁的易讀名稱。
  • 輸入完成 (也稱為「輸入對話」):這是在網頁首次啟用時要呼叫的完成動作
  • 參數:這些是頁面表單中的參數值,用於擷取使用者提供的結構化輸入內容。
  • 路由:在網頁處於活動狀態時,系統可能會呼叫這些狀態處理常式。詳情請參閱「網頁層級處理程序路徑
  • 路徑群組:頁面處於活動狀態時,可能會呼叫這些群組中的路徑。詳情請參閱「路由群組
  • 事件處理常式:這些事件處理常式可能會在網頁處於活動狀態時呼叫。詳情請參閱「網頁層級事件處理常式

頁面設定

網頁可採用下列設定:

如要存取網頁設定,請按照下列步驟操作:

主控台

  1. 開啟 Dialogflow CX 控制台
  2. 選擇 Google Cloud 專案。
  3. 選取代理程式。
  4. 將滑鼠游標懸停在「頁面」部分的頁面上。
  5. 按一下「選項」 按鈕。
  6. 選取「頁面設定」
  7. 瀏覽或編輯設定。
  8. 按一下「儲存」即可儲存變更。

API

請參閱 Page 類型的 getpatch/update 方法。

選取網頁參照的通訊協定和版本:

通訊協定 V3 V3beta1
REST 網頁資源 網頁資源
RPC 網頁介面 網頁介面
C++ PagesClient 不適用
C# PagesClient 不適用
Go PagesClient 不適用
Java PagesClient PagesClient
Node.js PagesClient PagesClient
PHP 不適用 不適用
Python PagesClient PagesClient
Ruby 不適用 不適用

刪除網頁

如要刪除頁面,請按照下列步驟操作:

主控台

  1. 開啟 Dialogflow CX 控制台
  2. 選擇 Google Cloud 專案。
  3. 選取代理程式。
  4. 在「流程」部分中,選取該頁面的流程。
  5. 在「網頁」部分,按一下網頁顯示名稱旁邊的設定 按鈕。
  6. 選取 [刪除]

API

請參閱 Page 類型的 delete 方法。

選取網頁參照的通訊協定和版本:

通訊協定 V3 V3beta1
REST 網頁資源 網頁資源
RPC 網頁介面 網頁介面
C++ PagesClient 不適用
C# PagesClient 不適用
Go PagesClient 不適用
Java PagesClient PagesClient
Node.js PagesClient PagesClient
PHP 不適用 不適用
Python PagesClient PagesClient
Ruby 不適用 不適用