爭議預先建構元件會驗證使用者身分,並允許使用者對費用、交易和手續費提出爭議或異議。這個元件使用自訂版本的驗證預先建構元件,驗證帳戶持有人和持卡人。這個元件也會使用自訂版本的「出生日期」預先建構元件,收集有爭議交易的日期。
限制
除了常見的預先建構元件限制外,這個預先建構元件還有下列限制:
- 這個元件不會加密任何資料。
對話方塊範例
下列範例對話方塊展示了這個預先建構元件處理的常見情境。範例對話會示範透過電話呼叫元件時的行為,這會觸發預設歡迎意圖,並在對話開始時提供第一個代理程式回應。
未通過驗證的使用者提出交易爭議
服務專員會確認使用者先前未通過驗證,並收集資訊來驗證使用者是否為註冊帳戶持有人。服務專員會收集爭議相關資訊,包括帳號、爭議模式、日期和金額,並建立新的爭議案件。
| 使用者輸入內容 | 代理回覆 |
|---|---|
| 代理程式使用驗證預先建構的元件驗證使用者 | |
| 謝謝,您已成功完成驗證。 | |
| 請注意,你可以在網路銀行入口網站提出申請或對扣款提出爭議。要繼續這項對話,提出著作權聲明或申訴嗎? | |
| 是,提出爭議 | |
| 請告訴我們爭議是否與信用卡帳單或交易有關。 | |
| 與我的交易有關 | |
| 我們正在擷取你的帳戶詳細資料,請稍候。 我們發現有 2 個帳戶與你的電話號碼相關聯。請提供您要查詢的帳戶末 4 碼。 |
|
| 1001 | |
| 謝謝,我們收集到的末 4 碼是 1001。對嗎? | |
| 是 | |
| 請先提供交易日期。 | |
| 代理程式使用出生日期預建元件收集交易日期 | |
| 請確認轉帳金額。舉例來說,如要尋找金額超過 $100.30 美元的交易,請說出「100」。 | |
| 15 美元 | |
| 你已輸入 2023 年 5 月 0 日的爭議金額 $15 美元。要對帳戶提出爭議嗎? | |
| 是 | |
| 我們已為你的爭議建立新案件。你的案件編號為 448639,我們已將此編號傳送至你的註冊電子郵件地址。確認您提供的資訊後,我們會將款項退回至尾號為 1001 的帳戶。 |
已驗證的使用者,但對信用卡交易提出爭議
服務專員會確認使用者先前已通過驗證,並擷取使用者註冊的卡片資訊。使用者選取永久鎖卡,然後服務專員產生永久鎖卡要求。接著,代理程式會詢問使用者是否要為永久停用的卡片重新核發新卡,並建立卡片重發要求。
| 使用者輸入內容 | 代理回覆 |
|---|---|
| 我們發現您的號碼與 2 張信用卡相關聯。你要找的是卡號末四碼為 4321 的卡片嗎? | |
| 是 | |
| 如果爭議與信用卡帳單有關,請說「信用卡帳單」。 | |
| 信用卡帳單 | |
| 你想對信用卡帳單上的超額費用或支出提出爭議嗎? | |
| 系統向我溢收費用 | |
| 首先,請確認可能發生問題的月份。 | |
| 04 | |
| 請確認你要申請的金額。舉例來說,如要尋找超過 $100.30 的理賠金額,請說出「100」。 | |
| 4567 | |
| 謝謝!請確認與這項潛在問題相關的費用說明。你可以選擇年費、交易手續費、滯納金或其他費用。 | |
| 這是年費 | |
| 你已輸入 2023 年 4 月 1 日的爭議金額 $4567 美元。要對信用卡提出爭議嗎? | |
| 是 | |
| 我們已為你的爭議建立新案件。你的案件參考編號為 111236,我們已將此編號傳送至你註冊的電話號碼。我們會在 3 個工作天內解決你的問題。 |
命名慣例
這個預先建構的元件採用下列命名慣例:
| 功能 | 格式 | 範例 |
|---|---|---|
| 心流狀態 | [元件名稱] | 爭議 |
| 元件專屬意圖 | prebuilt_components_[component_name]_[intent_name] | prebuilt_components_disputes_dispute_type |
| 實體類型 | prebuilt_components_[component_name]_[entity_type] | prebuilt_components_disputes_dispute_reason |
| Webhook | prebuilt_components_[component_name]:[webhook_action] | prebuilt_components_disputes:get_disputed_transaction |
輸入參數
輸入參數是用來設定元件特定行為的參數。流程中的一或多個條件會使用這些參數,判斷元件的行為。如要設定流程範圍參數,請按照下方說明,在元件的開始頁面進行設定。工作階段範圍的參數可透過呼叫流程設定,也可以在這個元件的開始頁面設定。
這個預先建構的元件接受下列輸入參數:
| 參數名稱 | 說明 | 輸入格式 |
|---|---|---|
| $session.params.auth_level | (選用) 指出呼叫端的驗證層級。 | 整數 |
| $session.params.auth_level_req | 指出使用者存取交易記錄前所需的驗證等級。這個值是在 check auth level 頁面的頁面項目執行中,透過參數預設值設定。根據預設,這個值為 1。 |
整數 |
| $session.params.account_auth_enabled | 指出是否應根據「驗證類型」一文的說明,驗證使用者是否為帳戶持有人。這個值是在 check auth level 頁面的頁面項目執行中,透過參數預設值設定。根據預設,這個值為 true。 |
布林值 |
| $session.params.card_auth_enabled | 指出是否應根據「驗證類型」一文所述,驗證使用者是否為持卡人。這個值是在 check auth level 頁面的頁面項目執行中,透過參數預設值設定。根據預設,這個值為 false。 |
布林值 |
| $session.params.phone_number | (選用) 用於驗證的客戶註冊電話號碼。 | 字串 |
| $session.params.card_count | (選用) 與通過驗證的使用者相關聯的信用卡數量。 | 整數 |
| $session.params.account_count | (選用) 與註冊電話號碼相關聯的帳戶數量。這類帳戶包括使用者本人的帳戶,以及使用者有代理權的帳戶。 | 整數 |
| $session.params.last_four_digit_of_card_number | (選用) 可提出爭議的卡號末四碼。如果顧客只有一張卡片,系統會在驗證後自動擷取這項資訊。如果顧客有多張卡片,系統會向顧客收集特定卡號。 | 字串 |
| $session.params.last_four_digit_of_account_number | (選填) 可能提出爭議的客戶帳號末四碼。如果顧客只有一個帳戶,系統會在驗證後自動擷取這項資訊。如果顧客有多個帳戶,我們會向顧客收集特定帳號。 | 字串 |
| $flow.max_dispute_month | 指定爭議交易日期可早於目前日期的月數上限。這個值預設為 -6,表示交易發生時間不得超過目前日期前 6 個月,否則無法提出爭議。 |
整數 |
| $flow.max_attempts | 指定向使用者收集一次性密碼 (OTP) 時允許的重試次數。預設值為 2。 |
整數 |
| flow.max_retry_counter | 指定從使用者收集資訊時允許的重試次數。預設值為 2。 |
整數 |
如要設定這個元件的輸入參數,請展開查看操作說明。
- 開啟 Dialogflow CX 控制台。
- 選擇 Google Cloud 專案。
- 選取代理程式。
- 選取「Build」(建構) 分頁標籤。
- 在「流程」部分中,按一下匯入的元件。
- 按一下「頁面」部分中的「開始頁面」。
- 在「開始頁面」中,按一下「true」路徑。
- 在「Route」視窗中,視需要編輯「Parameter Presets」值。
- 按一下「儲存」。
輸出參數
輸出參數是工作階段參數,在結束元件後仍會保持啟用狀態。這些參數包含元件收集的重要資訊。這個預先建構的元件會提供下列輸出參數的值:
| 參數名稱 | 說明 | 輸出格式 |
|---|---|---|
| auth_level | 指出呼叫端的驗證等級。 | 整數 |
| phone_number | 使用者的當地電話號碼 (不含國家/地區代碼),用於識別使用者。 | 字串 |
| card_count | 與已驗證使用者相關聯的信用卡數量。 | 整數 |
| account_count | 與註冊電話號碼相關聯的帳戶數量。這類帳戶包括使用者本人的帳戶,以及使用者有代理權的帳戶。 | 整數 |
| last_four_digit_of_card_number | 提出爭議的卡號末四碼。 | 字串 |
| last_four_digit_of_account_number | 提出爭議的客戶帳號末 4 碼。 | 字串 |
| transfer_reason | 如果流程未順利結束,這項參數會指出流程結束的原因。傳回的值為下列其中之一:agent:使用者在對話期間要求與真人服務專員通話。denial_of_information:使用者拒絕分享元件要求的資訊。max_no_input:對話達到無輸入事件的重試次數上限。請參閱無輸入內容的內建事件。max_no_match:對話已達無相符事件的重試次數上限。請參閱不相符的內建事件。webhook_error:發生 Webhook 錯誤。請參閱「webhook.error 內建事件」。webhook_not_found:無法連上 Webhook 網址。請參閱「webhook.error.not-found 內建事件」。 |
字串 |
基本設定
如要設定這個預先建構的元件,請按照下列步驟操作:
- 匯入預先建構的元件。
- 設定提供的彈性 Webhook,並使用描述外部服務的設定,請參閱下方的「Webhook 設定」。
設定 Webhook
如要使用這個元件,您必須設定內含的彈性 Webhook,從外部服務擷取所需資訊。
驗證
如果您先前未設定驗證所需的外部服務,則必須設定這些服務,才能為這個元件啟用使用者驗證。如需詳細操作說明,請參閱「驗證 Webhook 設定」。
取得信用卡詳細資料
prebuilt_components_account_services:get_credit_card_details 網頁掛鉤可供元件使用,取得使用者註冊的信用卡資訊。
API 要求參數
元件會提供下列參數,做為 API 要求的輸入內容。
| 參數名稱 | 說明 | 輸入格式 |
|---|---|---|
| $session.params.phone_number | 使用者的當地電話號碼 (不含國家/地區代碼),用於識別使用者。 | 字串 |
API 回應參數
系統會從 API 回應中擷取下列參數,供元件使用。
| 參數名稱 | 說明 | 輸出格式 |
|---|---|---|
| credit_card_count | 與註冊電話號碼相關聯的信用卡數量。 | 整數 |
| last_four_digit_of_credit_card_number | 如果使用者只有一張信用卡,系統會傳回卡號末四碼。如果使用者有多張卡片,這個參數的值為 null。 |
字串 |
| 電子郵件 | 帳戶註冊的電子郵件地址。如果帳戶未註冊電子郵件地址,這個參數的值為 null。 |
字串 |
如要為這個元件設定「取得信用卡詳細資料」Webhook,請展開查看操作說明。
- 開啟 Dialogflow CX 控制台。
- 選擇 Google Cloud 專案。
- 選取代理程式。
- 選取「管理」分頁標籤。
- 按一下「Webhooks」。
- 選取 prebuilt_components_account_services:get_credit_card_details 網路鉤子。
- 將 Dialogflow CX「Webhook URL」欄位中的網址,換成要整合的服務端點。在下拉式選單中選取適當的「方法」。
- 查看並更新要求主體,為 Webhook 建立正確的要求格式。
- 查看並更新「回應設定」,從 Webhook 的回應中擷取特定欄位。請勿修改參數名稱,因為元件需要這些名稱才能存取傳回的欄位值。
- 視需要檢查並更新「驗證」設定。
- 按一下「儲存」。
驗證信用卡
元件會使用 prebuilt_components_disputes:validate_credit_card webhook,驗證指定信用卡是否已向使用者註冊。
API 要求參數
元件會提供下列參數,做為 API 要求的輸入內容。
| 參數名稱 | 說明 | 輸入格式 |
|---|---|---|
| $session.params.phone_number | 使用者的當地電話號碼 (不含國家/地區代碼),用於識別使用者。 | 字串 |
| $session.params.last_four_digit_of_card_number | 使用者要求提出爭議的卡號末四碼。 | 字串 |
API 回應參數
系統會從 API 回應中擷取下列參數,供元件使用。
| 參數名稱 | 說明 | 輸出格式 |
|---|---|---|
| card_found | 指出要求的資訊卡是否存在。 | 布林值 |
如要為這個元件設定「驗證信用卡」Webhook,請展開查看操作說明。
- 開啟 Dialogflow CX 控制台。
- 選擇 Google Cloud 專案。
- 選取代理程式。
- 選取「管理」分頁標籤。
- 按一下「Webhooks」。
- 選取 prebuilt_components_disputes:validate_credit_card 網頁掛鉤。
- 將 Dialogflow CX「Webhook URL」欄位中的網址,換成要整合的服務端點。在下拉式選單中選取適當的「方法」。
- 查看並更新要求主體,為 Webhook 建立正確的要求格式。
- 查看並更新「回應設定」,從 Webhook 的回應中擷取特定欄位。請勿修改參數名稱,因為元件需要這些名稱才能存取傳回的欄位值。
- 視需要檢查並更新「驗證」設定。
- 按一下「儲存」。
驗證帳戶
這個元件會使用 prebuilt_components_account_services:validate_account 網路鉤子,根據使用者註冊的電話號碼和提供的帳號末四碼,驗證帳戶是否存在。如果帳戶存在,Webhook 也會傳回帳戶餘額。
API 要求參數
元件會提供下列參數,做為 API 要求的輸入內容。
| 參數名稱 | 說明 | 輸入格式 |
|---|---|---|
| $session.params.phone_number | 使用者的當地電話號碼 (不含國家/地區代碼),用於識別使用者。 | 字串 |
| $session.params.last_four_digit_of_account_number | 使用者要求提出爭議的帳號末四碼。 | 字串 |
API 回應參數
系統會從 API 回應中擷取下列參數,供元件使用。
| 參數名稱 | 說明 | 輸出格式 |
|---|---|---|
| account_found | 指出使用者註冊帳戶是否具有所提供的末四碼。 | 布林值 |
| 餘額 | 帳戶目前的餘額 (如有)。 | 數字 |
如要為這個元件設定「驗證帳戶」Webhook,請展開查看操作說明。
- 開啟 Dialogflow CX 控制台。
- 選擇 Google Cloud 專案。
- 選取代理程式。
- 選取「管理」分頁標籤。
- 按一下「Webhooks」。
- 選取 prebuilt_components_account_services:validate_account Webhook。
- 將 Dialogflow CX「Webhook URL」欄位中的網址,換成要整合的服務端點。在下拉式選單中選取適當的「方法」。
- 查看並更新要求主體,為 Webhook 建立正確的要求格式。
- 查看並更新「回應設定」,從 Webhook 的回應中擷取特定欄位。請勿修改參數名稱,因為元件需要這些名稱才能存取傳回的欄位值。
- 視需要檢查並更新「驗證」設定。
- 按一下「儲存」。
驗證交易
元件會使用 prebuilt_components_disputes:validate_transaction Webhook 驗證指定交易是否存在。
API 要求參數
元件會提供下列參數,做為 API 要求的輸入內容。
| 參數名稱 | 說明 | 輸入格式 |
|---|---|---|
| $session.params.phone_number | 使用者的當地電話號碼 (不含國家/地區代碼),用於識別使用者。 | 字串 |
| $flow.dispute_type | 有爭議的交易類型。有效值由 prebuilt_components_disputes_dispute_type 自訂實體定義。 |
字串 |
| $flow.dispute_date | 爭議交易的日期,格式為 YYYY-MM-DD。 | 字串 |
| $flow.dispute_amount | 有爭議的交易金額。 | 整數 |
| $flow.last_four_digits | 用來進行爭議交易的信用卡或帳號末四碼。 | 字串 |
API 回應參數
系統會從 API 回應中擷取下列參數,供元件使用。
| 參數名稱 | 說明 | 輸出格式 |
|---|---|---|
| transaction_found | 指出要求的交易是否存在。 | 布林值 |
如要為這個元件設定「驗證交易」Webhook,請展開查看操作說明。
- 開啟 Dialogflow CX 控制台。
- 選擇 Google Cloud 專案。
- 選取代理程式。
- 選取「管理」分頁標籤。
- 按一下「Webhooks」。
- 選取 prebuilt_components_disputes:validate_transaction 網路鉤子。
- 將 Dialogflow CX「Webhook URL」欄位中的網址,換成要整合的服務端點。在下拉式選單中選取適當的「方法」。
- 查看並更新要求主體,為 Webhook 建立正確的要求格式。
- 查看並更新「回應設定」,從 Webhook 的回應中擷取特定欄位。請勿修改參數名稱,因為元件需要這些名稱才能存取傳回的欄位值。
- 視需要檢查並更新「驗證」設定。
- 按一下「儲存」。
建立爭議案件
元件會使用 prebuilt_components_disputes:create_dispute_case webhook 建立新的爭議案件。
API 要求參數
元件會提供下列參數,做為 API 要求的輸入內容。
| 參數名稱 | 說明 | 輸入格式 |
|---|---|---|
| $session.params.phone_number | 使用者的當地電話號碼 (不含國家/地區代碼),用於識別使用者。 | 字串 |
| $flow.dispute_type | 爭議類型。有效值由 prebuilt_components_disputes_dispute_type 自訂實體定義。 |
字串 |
| $flow.dispute_date | 爭議交易的日期,格式為 YYYY-MM-DD。 | 字串 |
| $flow.dispute_amount | 有爭議的交易金額。 | 整數 |
| $flow.dispute_reason | 提出爭議的原因。有效值由 prebuilt_components_disputes_dispute_reason 自訂實體定義。 |
字串 |
| $flow.dispute_fee_type | 爭議的費用類型。有效值由 prebuilt_components_disputes_fee_types 自訂實體定義。 |
字串 |
| $flow.last_four_digits | 用來進行爭議交易的信用卡或帳號末四碼。 | 字串 |
API 回應參數
系統會從 API 回應中擷取下列參數,供元件使用。
| 參數名稱 | 說明 | 輸出格式 |
|---|---|---|
| dispute_case_number | 建立爭議案件時的案件編號。 | 整數 |
如要為這個元件設定「建立爭議案件」Webhook,請展開查看操作說明。
- 開啟 Dialogflow CX 控制台。
- 選擇 Google Cloud 專案。
- 選取代理程式。
- 選取「管理」分頁標籤。
- 按一下「Webhooks」。
- 選取 prebuilt_components_disputes:create_dispute_case 網路鉤子。
- 將 Dialogflow CX「Webhook URL」欄位中的網址,換成要整合的服務端點。在下拉式選單中選取適當的「方法」。
- 查看並更新要求主體,為 Webhook 建立正確的要求格式。
- 查看並更新「回應設定」,從 Webhook 的回應中擷取特定欄位。請勿修改參數名稱,因為元件需要這些名稱才能存取傳回的欄位值。
- 視需要檢查並更新「驗證」設定。
- 按一下「儲存」。
完成
代理程式和 Webhook 現在應已設定完成,可供測試。