流程

複雜的對話通常涉及多個對話主題。舉例來說,披薩外送服務代理商可能會將「餐點訂單」、「客戶資訊」和「確認」設為不同的主題。每個主題都需要多個對話回合,才能讓服務專員從使用者身上取得相關資訊。

流程可用於定義這些主題和相關的對話路徑。每個服務專員都有一個名為「預設啟動流程」的流程。這個單一流程可能就是簡單介面的全部需求。較複雜的介面可能需要額外的流程,而不同的開發團隊成員可負責建立及維護這些流程。舉例來說,披薩外送服務代理程式的流程可能如下所示:

多流程圖表範例。

預設的開始流程

建立代理程式時,系統會自動建立預設開始流程。如果是簡易的服務機器人,您可以將這個流程做為唯一流程。對於較複雜的服務機器人,您可以新增更多流程,並將預設的開始流程用作對話的簡單入口點。

使用 API 時,您可以使用以下流程 ID 參照預設的啟動流程:

00000000-0000-0000-0000-000000000000

流程啟動頁面

每個流程在控制台中都有一個名為「Start」的特殊頁面。在控制台中選取流程後,起始頁面會顯示為圖表上的節點。當流程首次啟用時,這個頁面就會成為目前的有效頁面。

啟動頁面不像一般頁面,沒有參數或回應訊息。不過,您可以使用下列其中一種方法傳送訊息:

在 API 要求中參照起始頁面

如要在執行階段 API 要求中參照流程的起始頁面,請使用 START_PAGE 做為頁面 ID。

如要透過 API 對首頁進行設計時變更,請使用 Flow 類型的 getpatch/update API 方法。

選取流程參照的通訊協定和版本:

通訊協定 V3 V3beta1
REST 流程資源 流程資源
RPC Flow 介面 Flow 介面
C++ FlowsClient 不適用
C# FlowsClient 不適用
Go FlowsClient 不適用
Java FlowsClient FlowsClient
Node.js FlowsClient FlowsClient
PHP 不適用 不適用
Python FlowsClient FlowsClient
Ruby 不適用 不適用

建立流程

如何建立流程:

主控台

  1. 開啟 Dialogflow CX 控制台
  2. 選擇 Google Cloud 專案。
  3. 選取代理程式。
  4. 按一下「流程」部分中的「新增」 按鈕。
  5. 選取「建立流程」
  6. 輸入流程的顯示名稱。
  7. 按一下剛剛建立的流程。

API

請參閱 Flow 類型的 create 方法。

選取流程參照的通訊協定和版本:

通訊協定 V3 V3beta1
REST 流程資源 流程資源
RPC Flow 介面 Flow 介面
C++ FlowsClient 不適用
C# FlowsClient 不適用
Go FlowsClient 不適用
Java FlowsClient FlowsClient
Node.js FlowsClient FlowsClient
PHP 不適用 不適用
Python FlowsClient FlowsClient
Ruby 不適用 不適用

流量資料

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

主控台

  1. 開啟 Dialogflow CX 控制台
  2. 為服務機器人選擇 Google Cloud 專案。
  3. 在清單中找出代理人。
  4. 按一下代理人顯示名稱。
  5. 按一下「流程」部分中的流程。
  6. 流程的頁面會填入「Pages」部分。如要瞭解如何編輯網頁,請參閱網頁指南
  7. 按一下圖表中的流程。
  8. 流程編輯面板隨即顯示。使用這個面板瀏覽及編輯其他流程資料。
  9. 按一下「儲存」即可儲存變更。

API

如需瞭解流程,請參閱 Flow 類型的 getpatch/update

選取流程參照的通訊協定和版本:

通訊協定 V3 V3beta1
REST 流程資源 流程資源
RPC Flow 介面 Flow 介面
C++ FlowsClient 不適用
C# FlowsClient 不適用
Go FlowsClient 不適用
Java FlowsClient FlowsClient
Node.js FlowsClient FlowsClient
PHP 不適用 不適用
Python FlowsClient FlowsClient
Ruby 不適用 不適用
如需頁面相關資訊,請參閱 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

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

選取流程參照的通訊協定和版本:

通訊協定 V3 V3beta1
REST 流程資源 流程資源
RPC Flow 介面 Flow 介面
C++ FlowsClient 不適用
C# FlowsClient 不適用
Go FlowsClient 不適用
Java FlowsClient FlowsClient
Node.js FlowsClient FlowsClient
PHP 不適用 不適用
Python FlowsClient FlowsClient
Ruby 不適用 不適用

刪除流程

如要刪除流程,請按照下列步驟操作:

主控台

  1. 開啟 Dialogflow CX 控制台
  2. 選擇 Google Cloud 專案。
  3. 選取代理程式。
  4. 將滑鼠游標懸停在「流程」部分的流程中。
  5. 按一下「設定」 按鈕。
  6. 選取 [刪除]

API

請參閱 Flow 類型的 delete 方法。

選取流程參照的通訊協定和版本:

通訊協定 V3 V3beta1
REST 流程資源 流程資源
RPC Flow 介面 Flow 介面
C++ FlowsClient 不適用
C# FlowsClient 不適用
Go FlowsClient 不適用
Java FlowsClient FlowsClient
Node.js FlowsClient FlowsClient
PHP 不適用 不適用
Python FlowsClient FlowsClient
Ruby 不適用 不適用

訓練流程

如要訓練流程,請按照下列步驟操作:

主控台

  1. 開啟 Dialogflow CX 控制台
  2. 選擇 Google Cloud 專案。
  3. 選取代理程式。
  4. 按一下「服務專員設定」
  5. 開啟「ML」ML分頁。
  6. 如要訓練單一流程,請按一下對應資料列中的「訓練」
  7. 如要訓練多個流程,請使用核取方塊選取所需流程,然後按一下「訓練所選流程 NLU 模型」

API

請參閱 Flow 類型的 train 方法。

選取流程參照的通訊協定和版本:

通訊協定 V3 V3beta1
REST 流程資源 流程資源
RPC Flow 介面 Flow 介面
C++ FlowsClient 不適用
C# FlowsClient 不適用
Go FlowsClient 不適用
Java FlowsClient FlowsClient
Node.js FlowsClient FlowsClient
PHP 不適用 不適用
Python FlowsClient FlowsClient
Ruby 不適用 不適用

匯出流程

您可以透過下列兩種方式匯出流程:

  • 資料匯出:將流程匯出為原始資料,以便匯入任何代理程式。匯出流程時,系統也會匯出流程參照的資源 (意圖、實體、webhook)。在執行下列步驟時,請選擇「原始資料」資料格式。

  • 圖表匯出 (預先發布):將流程匯出為視覺化圖表。匯出格式為 draw.io XML,因此您可以將圖表匯入 Lucidchartdiagrams.net 或任何可匯入 draw.io 格式的圖表工具。在執行下列步驟時,請選擇「XML」XML資料格式。

您可以使用下列選項匯出流程:

  • 包含參照的流程:匯出目標流程和所有層級的參照流程。參照的流程包括目標流程參照的流程,以及後續參照流程參照的流程,且沒有深度限制。在匯入期間,系統會匯入所有已匯出的流程,並保留這些流程之間的轉場效果。

如何匯出流程:

主控台

  1. 開啟 Dialogflow CX 控制台
  2. 選擇 Google Cloud 專案。
  3. 選取代理程式。
  4. 將滑鼠游標懸停在「流程」部分的流程中。
  5. 按一下「選項」 按鈕。
  6. 選取「匯出流程」
  7. 按照操作說明完成。

API

請參閱 Flow 類型的 export 方法。

選取流程參照的通訊協定和版本:

通訊協定 V3 V3beta1
REST 流程資源 流程資源
RPC Flow 介面 Flow 介面
C++ FlowsClient 不適用
C# FlowsClient 不適用
Go FlowsClient 不適用
Java FlowsClient FlowsClient
Node.js FlowsClient FlowsClient
PHP 不適用 不適用
Python FlowsClient FlowsClient
Ruby 不適用 不適用

匯入流程

當您將流程從來源介面代理程匯入目標介面代理程時,流程參照的全域資源 (意圖、實體、webhook) 會連同流程專屬資料一併匯入。如果目標服務專員的全球資源與來源服務專員的顯示名稱相同,Conversational Agents (Dialogflow CX) 會提供這些資源的摘要,以及三種解決這些資源衝突的選項:

  • 取代現有資源:來源代理程式資源會覆寫目標代理程式資源。
  • 匯入為新資源:來源代理程式資源會在名稱中加入專屬的後綴。
  • 保留原始資源:目標代理程式資源將維持不變。

如何匯入流程:

主控台

  1. 開啟 Dialogflow CX 控制台
  2. 選擇 Google Cloud 專案。
  3. 選取代理程式。
  4. 按一下「流程」部分中的「新增」 按鈕。
  5. 選取「匯入流程」
  6. 按照操作說明完成。

API

請參閱 Flow 類型的 import 方法。

選取流程參照的通訊協定和版本:

通訊協定 V3 V3beta1
REST 流程資源 流程資源
RPC Flow 介面 Flow 介面
C++ FlowsClient 不適用
C# FlowsClient 不適用
Go FlowsClient 不適用
Java FlowsClient FlowsClient
Node.js FlowsClient FlowsClient
PHP 不適用 不適用
Python FlowsClient FlowsClient
Ruby 不適用 不適用