英數字元集合預先建構元件

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

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

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

表音字母

這個元件支援使用表音字母,例如北約音標字母。

使用者輸入內容 擷取的序列
alpha bravo charlie 123 abc123
A B Cat 1 2 3 ABC123
A as in apple, B as in banana, C for chili, one fifteen ABC115

其他功能

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

對話範例

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

單一區塊

使用者提供一串英數字元,並說「我說完了」,代理成功接受。

使用者輸入內容 代理回覆
請先說出英數字元序列的前 1 到 8 個字元。完成後,請說「我完成了」來結束收集。你也可以隨時說出「重播」,查看目前收集到的序列。
fvfd3433
好的。我聽到的是 fvfd3433,對嗎?
是
好的,請告訴我序列中的下 1 到 8 個字元。
我沒問題了
感謝確認!我取得的最後一組英數字元序列是 fvfd3433,正確嗎?
是
太好了,我已收集英數字元序列。

多個區塊

使用者提供 2 組英數字元序列,服務專員成功接受。

使用者輸入內容 代理回覆
請先說出英數字元序列的前 1 到 8 個字元。完成後,請說「我完成了」來結束收集。你也可以隨時說出「重播」,查看目前收集到的序列。
fvfd3433
好的。我聽到的是 fvfd3433,對嗎?
是
好的,請告訴我序列中的下 1 到 8 個字元。
gh67
好的。我聽到的是 gh67,對嗎?
是
好的,請告訴我序列中的下 1 到 8 個字元。
我沒問題了
感謝確認!我取得的最終英數字元序列是 fvfd3433gh67,正確嗎?
是
太好了,我已收集英數字元序列。

重試成功

使用者提供英數字元序列,代理會再次提示使用者確認。使用者對確認訊息說「否」,並再次提供英數字元序列;服務專員成功接受。

使用者輸入內容 代理回覆
請先說出英數字元序列的前 1 到 8 個字元。完成後,請說「我完成了」來結束收集。你也可以隨時說出「重播」,查看目前收集到的序列。
fvfd3433
好的。我找到 fd3433,對嗎?
否
抱歉,可以請你再次提供前 1 到 8 個字元嗎?
fvfd3433
好的。我聽到的是 fvfd3433,對嗎?
是
好的,請告訴我序列中的下 1 到 8 個字元。
我沒問題了
感謝確認!我取得的最後一組英數字元序列是 fvfd3433,正確嗎?
是
太好了,我已收集英數字元序列。

重試失敗

使用者無法在三次嘗試內提供 1 到 8 個英數字元的序列,元件退出流程。

使用者輸入內容 代理回覆
請先說出英數字元序列的前 1 到 8 個字元。完成後,請說「我完成了」來結束收集。你也可以隨時說出「重播」,查看目前收集到的序列。
123N
好的。我聽到的號碼是 123M,對嗎?
否
抱歉,可以請你再次提供前 1 到 8 個字元嗎?
123N
好的。我聽到的號碼是 123M,對嗎?
否
抱歉,可以請你再次提供前 1 到 8 個字元嗎?

請逐一拼出序列中的每個字母,並以該字母開頭的單字表示。舉例來說,如果序列是 AB123,請說出「Apple Baby 123」。
123 Nest
好的。我聽到的是 123N,對嗎?
否
抱歉,我嘗試次數過多,無法收集英數字元序列。

表音字母

使用者提供英數字元序列,代理會再次提示使用者確認。使用者連續兩次拒絕確認,系統啟用語音轉換功能,使用者再次提供英數字元序列,代理成功接受。

使用者輸入內容 代理回覆
請先說出英數字元序列的前 1 到 8 個字元。完成後,請說「我完成了」來結束收集。你也可以隨時說出「重播」,查看目前收集到的序列。
123N
好的。我聽到的號碼是 123M,對嗎?
否
抱歉,可以請你再次提供前 1 到 8 個字元嗎?
123N
好的。我聽到的號碼是 123M,對嗎?
否
抱歉,可以請你再次提供前 1 到 8 個字元嗎?

請逐一拼出序列中的每個字母,並以該字母開頭的單字表示。舉例來說,如果序列是 AB123,請說出「Apple Baby 123」。
123 N (Nancy 的 N)
好的。我聽到的是 123N,對嗎?
是
好的,請告訴我序列中的下 1 到 8 個字元。
567BC
好的。我找到 567BC,對嗎?
就這樣
感謝確認!最終得到的英數字元序列是 123N56BC。對嗎?
沒錯
太好了,我已收集英數字元序列。

序列長度無效

使用者提供的英數字元序列長度,超出預先定義的英數字元序列長度下限和上限。代理提示使用者重新開始,使用者拒絕,元件退出流程。

使用者輸入內容 代理回覆
請先說出英數字元序列的前 1 到 8 個字元。完成後,請說「我完成了」來結束收集。你也可以隨時說出「重播」,查看目前收集到的序列。
1.23 億
好的。我聽到的號碼是 123M,對嗎?
完成
很抱歉,你提供的英數字元序列長度不符合規定 (5 到 30 個字元)。要重新設定嗎?
否
抱歉,我嘗試太多次,但無法收集英數字元序列。

命名慣例

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

功能 格式 範例
Flow [Component Name] 英數字元系列
元件專屬意圖 prebuilt_components_[component_name]_[intent_name] prebuilt_components_alphanumeric_collection_support_continue
參數 [param_name] alphanumeric_max_length

輸入參數

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

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

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

參數名稱 說明 輸入格式
$flow.alphanumeric_min_length 最終英數字元序列的長度下限。預設值為 1。 整數
$flow.alphanumeric_max_length 最終英數字元序列的長度上限。預設值為 30。 整數
$flow.lower_limit 使用者每回合可提供的語塊長度下限。預設值為 1。 整數
$flow.upper_limit 使用者每回合可提供的區塊長度上限。預設值為 8。 整數

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

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

輸出參數

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

參數名稱 說明 輸出格式
alphanumeric_collection_alphanumeric_sequence 這個參數會傳回元件擷取的英數字元序列 字串

基本設定

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

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

完成

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