數字集合預先建構元件

這個預建元件會收集使用者提供的數字序列。您可以透過輸入參數,設定可接受的長度下限和上限。

這個元件會在每個對話輪次中擷取使用者提供的數字片段,並將這些片段串連起來,形成最終序列。您可以透過輸入參數,設定每個區塊可接受的長度下限和上限。

系統會持續擷取序列,直到使用者輸入與 prebuilt_components_confirmation_done 意圖相符的內容,表示已完成序列。

限制

除了常見的預建元件限制外,這項預建元件還有下列限制:

啟用 DTMF,允許使用者透過電話撥號鍵盤輸入數值。

其他功能

這項預建元件提供下列額外功能:

對話範例

下列對話範例說明這項預建元件處理的常見情境。範例對話會示範透過電話呼叫元件時的行為,這會觸發預設歡迎意圖,並在對話開始時觸發第一個代理回覆。

單一區塊

使用者在第一次嘗試時提供數字序列,代理成功接受。

使用者輸入內容 代理回覆
請先說出數字序列的前 1 到 30 位數字。完成後,請說「我完成了」來結束收集。你也可以隨時說出「重播」,查看目前收集到的序列。
2374 30940 029 30
我查到的是 23743094002930,對嗎?
是
好的,請說出或輸入下一組數字。
完成
謝謝,我收集到的數字序列是 23743094002930。對嗎?
是
好的,我已收集完數字序列。

多個區塊

使用者提供多組數字序列,代理成功接受。

使用者輸入內容 代理回覆
請先說出數字序列的前 1 到 30 位數字。完成後,請說「我完成了」來結束收集。你也可以隨時說出「重播」,查看目前收集到的序列。
2374 30940 029 30
我查到的是 23743094002930,對嗎?
否
沒關係,可以請你再次提供數字序列的前 1 到 30 位數嗎?
2374
我聽到的號碼是 2374,對嗎?
是
好的,請說出或輸入下一組數字。
3094
我找到 3094,對嗎?
Yeah
好的,請說出或輸入下一組數字。
002930
我查到的是 002930,對嗎?
否
沒問題,23743094 之後是什麼?
2930
我得到的結果是 2930,對嗎?
是,就這樣
謝謝,我收集到的數字序列是 237430942930。對嗎?
是
好的,我已收集完數字序列。

重試成功

使用者在第一次嘗試時提供一串數字,代理重新確認,但使用者說「不」。代理要求使用者再次提供序列。 使用者提供並確認序列,代理也成功接受。

使用者輸入內容 代理回覆
請先說出數字序列的前 1 到 30 位數字。完成後,請說「我完成了」來結束收集。你也可以隨時說出「重播」,查看目前收集到的序列。
92832938 3489
我聽到的號碼是 928329383459,對嗎?
否
沒關係,可以請你再次提供數字序列的前 1 到 30 位數嗎?
928329383435
我聽到的號碼是 928329383435,對嗎?
是,我沒有其他問題了
謝謝,我收集到的數字序列是 928329383435。對嗎?
是
好的,我已收集完數字序列。

重試失敗

使用者提供三次數字序列,並在重新確認步驟中說「否」;元件在第三次確認失敗時退出流程。

使用者輸入內容 代理回覆
請先說出數字序列的前 1 到 30 位數字。完成後,請說「我完成了」來結束收集。你也可以隨時說出「重播」,查看目前收集到的序列。
928329383435
我找到 928329383835,對嗎?
否
沒關係,可以請你再次提供數字序列的前 1 到 30 位數嗎?
23 289 0239 903
我查到的是 232890239953,對嗎?
否
沒關係,可以請你再次提供數字序列的前 1 到 30 位數嗎?
23847 02938
我找到 2384702938,對嗎?
否
很抱歉,我已嘗試太多次,無法收集你的回覆。

無法辨識的輸入內容

使用者提供無法辨識的輸入內容三次後,元件就會退出流程。

使用者輸入內容 代理回覆
請先說出數字序列的前 1 到 30 位數字。完成後,請說「我完成了」來結束收集。你也可以隨時說出「重播」,查看目前收集到的序列。
沒關係
抱歉,我聽不懂,請先說出數字序列的前 1 到 30 位數字。完成後,請說「我完成了」來結束收集。你也可以隨時說出「重播」,查看目前收集到的序列。
nice
嗯,我還是聽不清楚。請確認你說的是數字序列的前 1 到 30 位數。完成後,請說「我完成了」來結束收集。你也可以隨時說出「播放」,查看目前收集到的序列。如果我們聽不清楚,你也可以使用撥號鍵盤輸入數字序列。
很棒
抱歉,我不懂你的意思。

命名慣例

這個預建元件採用下列命名慣例:

功能 格式 範例
Flow [Component Name] 數字集合
元件專屬意圖 prebuilt_components_[component_name]_[intent_name] prebuilt_components_numeric_collection_collect_numeric_sequence
參數 [param_name] user_provided_cur_seq

輸入參數

輸入參數是用來設定元件的特定行為。流程中的一或多個條件會使用這些參數,決定元件的行為。流程範圍參數必須在元件的起始頁面上設定,如下所述。以工作階段為範圍的參數可由呼叫流程設定,或在這個元件的起始頁面上設定。

如要設定每次擷取和最終收集序列可接受的長度下限和上限,請在流程的起始頁面中修改參數預設值。

這個預建元件接受下列輸入參數:

參數名稱 說明 輸入格式
$flow.numeric_min_length 最終數字序列的長度下限 整數
$flow.numeric_max_length 最終數字序列的長度上限 整數
$flow.lower_limit 使用者每回合可提供的語音片段長度下限 整數
$flow.upper_limit 使用者每回合可提供的區塊長度上限 整數

如要設定這個元件的輸入參數,請展開查看操作說明。

  1. 開啟 Dialogflow CX 控制台。
  2. 選擇 Google Cloud 雲端專案。
  3. 選取代理。
  4. 選取「Build」(建構) 分頁標籤。
  5. 在「Flows」(流程) 部分,點選匯入的元件。
  6. 按一下「Pages」部分中的「Start Page」。
  7. 在「Start Page」中,點選「true」路徑。
  8. 在「Route」視窗中,視需要編輯「Parameter Presets」值。
  9. 按一下「儲存」。

輸出參數

輸出參數是工作階段參數,在退出元件後仍會保持有效。這些參數包含元件收集的重要資訊。這個預建元件會提供下列輸出參數的值:

參數名稱 說明 輸出格式
numeric_collection_numeric_sequence 這個參數會傳回工作階段期間擷取的數字序列 字串

基本設定

如要設定這項預建元件,請按照下列步驟操作:

  1. 匯入預先建構的元件。

完成

代理應已設定完成,可以開始測試。