頁面

Dialogflow CX 對話 (工作階段) 可以描述為狀態機,並以視覺化方式呈現。工作階段的狀態以網頁表示。

您可為每個流程定義許多頁面,好讓這些頁面能夠合併起來,處理流程設計主題的完整對話。在任何時間點,只有一個頁面是目前頁面,目前頁面會視為有效,與該頁面相關聯的流程也會視為有效。每個流程都有專屬的開始頁面。流程最初啟用時,開始頁面會成為目前頁面。在每次對話中,目前頁面會維持不變或轉換至其他頁面。

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

多流程圖範例。

網頁生命週期

網頁啟動後,代理程式會執行多個步驟,可能包括填寫項目、預先填寫表單、評估狀態處理常式、提示表單參數、傳送回覆訊息給使用者,以及變更網頁或重複迴圈:

網頁生命週期圖表。

這個程序的詳細步驟如下:

  1. 如果網頁有項目完成,系統就會呼叫該項目。出貨程序提供的任何靜態回應都會新增至回應佇列

    如果啟用部分回應,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. 流程的頁面會填入「頁面」部分。
  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 不適用 不適用