這個預建元件會收集使用者提供的數字序列。您可以透過輸入參數,設定可接受的長度下限和上限。
這個元件會在每個對話輪次中擷取使用者提供的數字片段,並將這些片段串連起來,形成最終序列。您可以透過輸入參數,設定每個區塊可接受的長度下限和上限。
系統會持續擷取序列,直到使用者輸入與 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 | 使用者每回合可提供的區塊長度上限 | 整數 |
如要設定這個元件的輸入參數,請展開查看操作說明。
- 開啟 Dialogflow CX 控制台。
- 選擇 Google Cloud 雲端專案。
- 選取代理。
- 選取「Build」(建構) 分頁標籤。
- 在「Flows」(流程) 部分,點選匯入的元件。
- 按一下「Pages」部分中的「Start Page」。
- 在「Start Page」中,點選「true」路徑。
- 在「Route」視窗中,視需要編輯「Parameter Presets」值。
- 按一下「儲存」。
輸出參數
輸出參數是工作階段參數,在退出元件後仍會保持有效。這些參數包含元件收集的重要資訊。這個預建元件會提供下列輸出參數的值:
| 參數名稱 | 說明 | 輸出格式 |
|---|---|---|
| numeric_collection_numeric_sequence | 這個參數會傳回工作階段期間擷取的數字序列 | 字串 |
基本設定
如要設定這項預建元件,請按照下列步驟操作:
完成
代理應已設定完成,可以開始測試。