在此文章中
dropdown icon
概觀
    Webex Contact Center for Salesforce Service Cloud Voice
    先決條件和限制
    授權
    啟用全通路
    限制
dropdown icon
需求
    閒置代碼
dropdown icon
整合
    安裝
    安裝和設定 Webex Contact Center for Service Cloud Voice
    為代理分配在線狀態
dropdown icon
組態
    Contact Center
    導入聯絡中心
    配置呼叫中心
dropdown icon
自訂
    用於 Webex 聯繫中心整合的外部客戶端應用程式
    Webex 聯絡中心配置和建立語音通話記錄的腳本
使用者功能所需的 Salesforce 權限
dropdown icon
服務雲端語音 API 封裝器
    先決條件
    使用 Service Cloud Voice API 封裝器
    取得 Access_令牌
    執行請求
    建立語音通話(部分)
    更新語音通話
    執行全流程
    清晰的路線
dropdown icon
電話號碼翻譯
    建立翻譯規則
dropdown icon
語音通話頁面配置
    設定語音通話記錄頁面
    顯示總結原因組件
    顯示通話錄音播放器
dropdown icon
Webex 管理員
    流程配置
將 Webex 聯絡中心與 Salesforce Service Cloud Voice 集成
list-menu在此文章中
list-menu意見回饋?

Webex Contact Center for Salesforce Service Cloud Voice 將 Cisco 強大的 CCaaS(聯絡中心即服務)與 Salesforce 的 CRM 集成,使企業能夠在 Salesforce 介面內管理 全通路客戶互動(語音、數位),使用 Webex AI 實現虛擬代理、轉錄和智慧路由,將資料提供給 “超級代理”,統一客戶體驗。

概觀

Webex Contact Center for Salesforce Service Cloud Voice

Webex Contact Center for Service Cloud Voice 是一款開箱即用的整合解決方案,它將 Webex Contact Center 的強大功能引入 Salesforce Service Cloud Voice 全通路代理控制台。

安裝前,請參閱以下部分:

了解 Salesforce Service Cloud Voice 的先決條件和限制,並確保您的 Salesforce 組織已準備好啟用和安裝 Webex Contact Center for Service Cloud Voice 軟體包。

先決條件和限制

先決條件(子主題)

使用者介面: Service Cloud Voice 僅在 Salesforce Lightning Experience 中可用。

Service Cloud Voice 在這些版本中可用。

  • 企業
  • 無限制
  • 開發人員

授權

  • 除了 Webex Contact Center 的 Flex 3 標準版或高級版授權外,客戶還需要為每個登入的座席購買新的 A-SF-VOICE 附加授權。更多資訊請參閱 Flex 3 訂購指南。

  • Salesforce Voice for Partner Telephony

在啟用語音功能之前,您必須在組織中設定必要的先決服務。

  • 導航至 公司訊息 > 權限集許可證
    • 檢查 服務雲端語音使用者(合作夥伴電話)

      所有開發者版本現在都附帶 5 個合作夥伴電話許可證,可供測試。

  • 或者,您可以透過前往 Salesforce 設定並在左側邊欄中搜尋 “語音” 來驗證這一點。

    • 如果出現 「合作夥伴電話聯絡中心」 ,則表示您擁有 SCV 許可證。
    • 如果「 合作夥伴電話聯絡中心 」選項不可見,請依照下列步驟啟用「服務雲端語音 」 。
      • 前往 Salesforce 設定,搜尋並選擇“合作夥伴電話設定”,然後將按鈕切換為“啟用 Service Cloud Voice”

      • 啟用全通路功能,讓您的客服人員可以撥打和接聽電話。

啟用全通路

如果您的組織已啟用全通路,請跳過此步驟。

  1. 在「設定」中,在「快速尋找」方塊中輸入 「全通路設定 」 ,然後選擇 「全通路設定」 。

  2. 選擇 啟用全通路
  3. 按一下儲存

限制

  • 語音功能僅在 Lightning Experience 中可用。
  • Service Cloud 和 Sales Cloud 皆支援語音功能,但需購買附加授權。
  • Salesforce Mobile 和 iPad Safari 不支援語音功能。
  • 語音功能僅在 Google Chrome、Microsoft Edge(基於 Chromium)和 Mozilla Firefox 瀏覽器上支援。必須啟用 Cookie 才能實現單一登入 (SSO)。
  • 不支援標準導航。
  • 電話服務受到嚴格監管,因此請向您的 Salesforce 代表諮詢您所在地區的語音服務可用性。

需求

閒置代碼

查找空閒程式碼

若要設定怠速代碼,請依照下列步驟操作:
1

登入管理入口網站。

2

導航至 聯繫中心 > 桌面體驗 > Idle/Wrap-up 代碼

3

確保顯示空閒程式碼,否則按一下篩選下拉按鈕,然後選擇頁面頂部的 空閒程式碼

4

點擊空閒程式碼即可開啟詳細資料視圖。您可以在那裡找到空閒代碼 ID。

可以複製這些 ID,然後將其用於 Presence State Mapping 配置。其中一個 ID 必須用作 預設 Cisco 未就緒原因

整合

安裝

在繼續安裝之前,請參閱 先決條件和限制 部分,以了解 Salesforce Service Cloud 的先決條件和限制。

安裝和設定 Webex Contact Center for Service Cloud Voice

當取得 Service Cloud Voice for Partner Telephony 授權時, Partner Telephony Setup 頁面將出現在設定選單中。

更多資訊請參閱 Salesforce 官方參考資料( 直接連結)。

1

從「設定」中,在「快速尋找 」方塊中輸入「 Partner Telephony Setup ]」 ,然後選擇 「合作夥伴電話設定」

2

啟用 開啟與合作夥伴電話的語音功能

「合作夥伴電話聯絡中心 」頁面出現在 「設定 」選單中。

如果您打算在 Salesforce 沙盒中部署軟體包,請將安裝連結中的 login.salesforce.com 部分替換為 test.salesforce.com。請注意,每當您建立新的沙盒副本時,此軟體包都會從您的沙盒組織中刪除。

安裝軟體包

安裝軟體包:

1

打開提供的軟體包連結開始安裝。

2

登入要安裝該軟體套件的 Salesforce 組織。

3

在安裝精靈中,選擇安全性選項 「僅供管理員安裝」 (1),然後按 安裝 (2)。

決定哪些使用者可以對 Webex Contact Center for Service Cloud Voice 軟體包隨附的物件和元件擁有特定權限。此外,請授予他們這些權限;Webex Contact Center for Service Cloud Voice 軟體包附帶的權限集有助於此過程。

軟體包安裝精靈-出現歡迎畫面:

安裝套件無法透過 Salesforce AppExchange 直接取得。客戶必須使用 AppExchange 清單中的「立即取得」按鈕,該按鈕會開啟一個聯絡表單,以要求 安裝連結 和 Cisco 啟動。

4

授予至少一個使用者以下權限,以便您可以建立聯絡中心:

Contact Center Admin (Partner Telephony).
5

點選 設定 | 用戶 | 用戶

6

搜尋並選擇用戶。

7

向下捲動至「權限集分配」。

8

點選 編輯作業

9

聯絡中心管理員: 指派 聯絡中心管理員(合作夥伴電話) 權限集。

10

適用於 呼叫中心客服人員: 指派 聯絡中心代理(合作夥伴電話) 權限集和 Webex 聯繫中心 SCV 代理權限集。

不建議選擇 「為所有使用者安裝 」選項,因為這會將軟體包元件和物件的所有權限(讀取、建立、編輯和刪除)授予任何使用自訂使用者設定檔的使用者。

11

為使用 Connects for Service Cloud Voice 的使用者指派軟體包授權。

  • 點選 設定 | 應用 | 打包 | 已安裝的軟體包。
  • 點選最近安裝的 Webex Contact Center for Service Cloud Voice 旁的 管理許可證
  • 按一下新增使用者
  • 選擇要指派許可證的用戶,然後按一下 新增。

12

或者,您可以點選 設定 | 使用者 | 使用者。

13

搜尋並選擇用戶。

14

向下捲動至 託管軟體包

15

點選 分配許可證

16

從清單中選擇 Webex Contact Center for Service Cloud Voice 套餐。

17

按一下新增

18

建立 Presence Statuses 來定義哪些服務管道被指派到不同的狀態。經紀人可以根據其有權獲得的工作類型,以不同的身分登入全通路系統。

19

在「設定」中,在「快速尋找」方塊中輸入 Presence Statuses ,然後選擇 存在狀態

20

按一下新增。至少創建一個“在線”狀態和一個“忙碌”狀態。

  • 為 RONA 建立專用的忙碌狀態。可以使用 Presence 配置,在 CTI 端或 Salesforce 中發生 RONA 時,自動將全通路狀態設定為指定狀態。
  • 如果在 Presence Configuration中配置 RONA 狀態,請確保 不要 使用預設的 presence 配置。目前,Webex Contact Center for Service Cloud Voice 無法擷取預設配置中配置的 RONA 狀態。

為代理分配在線狀態

1

在“設定”中,在“快速尋找”方塊中輸入“權限集”,然後選擇“權限集”。

2

點選開啟 合作夥伴電話權限集

3

點選 服務存在狀態存取

4

按一下編輯

5

可用服務狀態 清單中,選擇先前建立的狀態,然後按 新增 將其與權限集關聯。被指派到此權限集的代理可以使用提供給他們的任何線上狀態登入全通路。

6

按一下儲存

7

在同一頁面中點選 管理任務 。然後點擊右上角的 新增分配 ,選擇所需的用戶,點擊 下一步,為分配的用戶選擇一個 過期選項 (可選),然後點擊 分配

Service Cloud Voice 使用外部網域來操作 VoiceCall 記錄。以下 URL 必須新增至「設定」中的「遠端站點設定」( 點擊此處開啟官方文件):

範例:如何尋找實例 URL。

8

登入後,請查看瀏覽器網址列中的網址。實例 URL 是「.my.salesforce.com」或「.salesforce.com」或「lightning.force.com」之前的部分。例如,如果您的 URL 為 https://orgfarm-54a38e30ad-dev-ed.develop.my.salesforce-setup.com/, ,則「orgfarm-54a38e30ad-dev-ed.develop」是您的實例 URL。

範例

來源組織網址: https://cisco.lightning.force.com

範例:要新增的網址:

  • https://cisco.my.salesforce-scrt.com

9

代理程式要使用 Service Cloud Voice,需要在 Lightning 服務控制台應用程式中安裝全通路公用程式項目。

  • 在“設定”中,在“快速尋找”方塊中輸入“應用程式”,然後選擇“應用程式管理員”。
  • 按一下「服務控制台」應用程式或要使用的應用程式旁邊的下拉列表,然後按一下「編輯」。
  • 在應用程式設定下,點選實用工具項目(僅限桌面)。
  • 點選「新增實用工具項目」。
  • 在模態視窗中,搜尋全渠道。
  • 點選全通路。
  • 點擊“儲存”並退出應用程式管理員。

您可以透過點擊 Let's Do This 按鈕找到 Salesforce 的官方參考資料,該按鈕會開啟 Salesforce 幫助入口網站中的 Configuration the Agent Experience for Service Cloud Voice with Partner Telephony 頁( 直接連結)。

10

在「設定」中,在「快速尋找」方塊中輸入 「合作夥伴電話設定 」 ,然後選擇 「合作夥伴電話設定」 。

11

向下捲動到第 5 部分 更多語音設定

12

為了在 Lightning Experience 中使用軟體電話時為停用標 頭的 Visualforce 頁面啟用 點擊劫持保護,除了 Salesforce 實例 URL 之外,還必須將載入軟體電話和自訂工具列的網域新增為受信任的網域。

這些設定和受信任網域清單可以在 「設定」 | → “安全性 | 」→ 「會話設定」中找到。

若要擷取正確的 Visualforce 網域,請導覽至 設定 | 自訂程式碼 | Visualforce 頁面 並按一下 CiscoScvMainWxCC的預覽按鈕。Salesforce 可能會根據 Salesforce 組織的配置自動重新導向到不同的 URL。複製 URL 並將其新增至 Trusted Domains for Inline Frames 清單中,選擇「Visualforce Pages」為 IFrame 類型。

範例:MyDomainName--cisco_wxcc_scv.vf.force.com

若要取得 Salesforce 實例網域,請複製瀏覽器網址列中顯示的 URL,並將其新增至 內嵌框架受信任網域清單 清單中,選擇 Visualforce 頁面 為 IFrame 類型。

範例:MyDomainName.lightning.force.com

如果您的組織中沒有部署“我的網域”,則您的 URL 格式會有所不同。如果您已部署“我的網域”,但您的組織中未啟用增強型網域,則您的 URL 格式會有所不同。如果未啟用增強域,則「在 Visualforce、Experience Builder、Site.com studio 和內容檔案中穩定 URL」設定也會影響此格式。有關詳細信息,請參閱 Salesforce 說明中的 我的網域 URL 格式

Lightning Experience 的點擊劫持保護和受信任域設置

13

為了在通話期間顯示錄音控件,客服人員需要 Control Call Recording 應用程式權限。

要指派它,請將其新增至在 Presence Statuses 步驟中建立的權限集中。

  • 開啟權限集。
  • 點選 應用權限 連結。
  • 按一下 編輯 按鈕。
  • 新增呼叫中心 控制通話錄音 權限並儲存。

組態

Contact Center

聯繫中心定義檔指定了一組欄位和值,用於在 Salesforce 中為特定的 CTI 系統定義聯繫中心。Salesforce 使用聯絡中心定義檔來支援與多個 CTI 系統供應商的整合。

更多資訊請參閱 Salesforce 的官方文件( 直接連結)。

導入聯絡中心

點擊此處下載最新版本的 聯絡中心

從 Beta 版升級:本指南介紹如何全新安裝適用於 Salesforce Service Cloud Voice 的 Webex Contact Center 整合的正式版 (GA)。

如果您是從整合的 Beta 版本升級,請勿重複使用現有的合作夥伴聯絡中心記錄。反而:

  1. 導入 GA 版本中包含的合作夥伴聯絡中心 XML 檔案。
  2. 使用匯入的 XML 建立新的合作夥伴聯絡中心記錄。
  3. 更新您的配置以使用新建立的合作夥伴聯絡中心。

GA 合作夥伴聯絡中心 XML 包含更新後的設定值,包括正確的連接器 URL 和其他元資料。重複使用從 Beta XML 建立的合作夥伴聯絡中心記錄可能會保留過時的配置值,從而導致整合無法正常運作。

1

在「設定」中,在 「快速尋找 」方塊中輸入 「合作夥伴電話聯絡中心 」 ,然後選擇 「合作夥伴電話聯絡中心」 。

顯示現有(如有)呼叫中心清單。
2

點選頁面右側的 建立聯絡中心

3

選擇 Webex Contact Center 作為您的電話服務提供者。然後按一下下一步

文件瀏覽器打開。
4

選擇包含您的呼叫中心定義的 .xml 檔案。

5

按一下開啟

文件已導入。
6

檢查您的聯絡中心是否顯示在聯絡中心清單檢視中。

配置呼叫中心

1

在「設定」中,在 「快速尋找 」方塊中輸入 「合作夥伴電話聯絡中心 」 ,然後選擇 「合作夥伴電話聯絡中心」 。

2

點選之前匯入的聯絡中心。

3

按一下編輯

表 1. 聯絡中心詳情
欄位說明
顯示名稱 這是出現在可用呼叫中心清單中的呼叫中心名稱。同一個聯絡中心定義檔(.xml)可以多次匯入,並賦予不同的顯示名稱。
公開金鑰

要使用語音功能,需要包含公鑰和私鑰的憑證。為了獲得私鑰,可以 產生自簽名憑證產生由憑證授權單位簽署的憑證 ,或使用 從金鑰庫匯入 按鈕直接匯入Java金鑰庫檔案(JKS)或Bouncy Castle FIPS金鑰庫檔案(BCFKS)。

證書產生後:

  • 點選 證書 標籤。
  • 點選 下載憑證
  • 用文字編輯器開啟下載的憑證。
  • 將其內容複製到聯絡中心的 公鑰 欄位中。

必需是

證書唯一名稱

Unique Name公鑰所建立的自簽名憑證的 []。

必需是

準備狀態 ID
  • 在「設定」中開啟「 狀態 」頁面。
  • 點擊 線上 狀態,並從 URL 欄複製其 Salesforce ID。
  • 將ID貼到此欄位中。

必需是

未就緒狀態 ID
  • 在「設定」中開啟「 狀態 」頁面。
  • 點選 忙碌 狀態,並從 URL 欄複製其 Salesforce ID。
  • 將ID貼到此欄位中。

必需是

預設 Cisco 未就緒原因

Cisco 空閒代碼 ID,當未為特定存在狀態提供對應時,用作預設空閒代碼。

必需是

若要查看已設定的空閒代碼 ID,請參閱 空閒代碼 部分。

存在狀態映射

用於將 Salesforce Omni Presence 狀態對應到 Cisco Ready 狀態和 Not Ready 原因碼。

必須新增 空閒代碼 狀態:

  • 在「設定」中開啟「 狀態 」頁面。
  • 點選其中一個 忙碌 狀態,然後從 URL 欄複製其 Salesforce ID。存在狀態 ID 以 0N5開頭。例如 0N51X0000000AUT
  • 將 ID 貼到此欄位中,後面跟著逗號和 Cisco 空閒代碼 ID。
  • 可以使用逗號分隔來新增一個或多個 Busy 映射。

為避免同步問題,映射中也必須配置 Default Not Ready ID

如果您在 Presence Configuration中設定了 DeclinePush Timeout 的狀態,也請將它們新增至映射中,並對應 Cisco Not Ready 狀態。

格式:

  • 繁忙的地圖繪製:busyPresenceID1,ciscoAuxCodeID1
  • 預設未就緒映射:defaultNotReadyPresenceID,ciscoDefaultNotReadyAuxCodeID
  • 線上地圖:onlinePresenceId,0

用分號分隔每個完整的映射。

必需是

以下是午餐、會議、休息時已完成的空閒程式碼範例。

語音呼叫 ID 的呼叫變數

用於儲存目前語音呼叫 ID 的呼叫變數。它用於正確更新呼叫狀態。

格式:變數名稱為Webex Contact Center Flow中配置的名稱。例如 SCV_VoiceCallRecordId

必需是

預設值: SCV_VoiceCallRecordId

如果您已將語音通話記錄 ID 和供應商呼叫金鑰合併到一個流程變數中,則可以在此欄位中設定其名稱。另請參閱「語音通話記錄 ID」和「供應商呼叫金鑰」的流程變數。

調用供應商調用鍵的變數

用於儲存當前語音通話的供應商呼叫密鑰的呼叫變數。它用於開啟正確的語音通話記錄。

格式:變數名稱為Webex Contact Center Flow中配置的名稱。例如 SCV_VendorCallKey

必需是

預設值: SCV_VendorCallKey

如果您已將語音呼叫記錄 ID 和供應商呼叫金鑰合併到一個流程變數中,則可以將此欄位留空,並在「語音呼叫 ID 的呼叫變數」欄位中設定包含語音呼叫記錄 ID 和供應商呼叫金鑰的流程變數名稱。另請參閱 語音通話記錄 ID 和供應商呼叫鍵的流變數

撥號電話號碼翻譯

撥號前套用於電話號碼的號碼轉換規則。

請參閱 電話號碼翻譯

必需否

Webex聯絡中心區域

租戶資訊用於確定 Webex 聯繫中心區域。可以在 Webex 聯絡中心入口網站、開發入口網站或桌面的 URL 中找到它。例如, devportal.wxcc-eu2.cisco.com 使用區域 eu2

格式: eu2

必需是

Webex 聯繫中心區域及其對應的字串:

  • 美國: us1
  • 加拿大: ca1
  • 英國: eu1
  • 德國: eu2
  • 澳大利亞: anz1
  • 新加坡: sg1
  • 日本: jp1
Webex 聯絡中心 WebRTC 網域

此網域用於建立正確的 WebRTC 連線。使用您的 Webex 聯絡中心租戶的位置:

  • 美國: rtw.prod-us1.rtmsprod.net
  • 澳大利亞和紐西蘭: rtw.prod-as1.rtmsprod.net
  • CA: rtw.prod-ca1.rtmsprod.net
  • JP: rtw.prod-ja1.rtmsprod.net
  • EU1: rtw.prod-uk1.rtmsprod.net
  • EU2: rtw.prod-gm1.rtmsprod.net

必需是的,WebRTC

啟用 WCCAI 轉錄

用於啟用或停用 WCCAI 轉錄。

格式:TrueFalse

必需否

預設值: False

儲存錄製連結

用於將 Webex 通話錄音連結儲存到語音通話記錄。

格式:TrueFalse

必需否

預設值: True

4

聯絡中心 頁面的底部,按一下 聯絡中心使用者 部分下的 [] 新增 按鈕。

5

點選 + 接下來是能夠存取開放式聯絡中心的使用者。

此清單中僅顯示具有 Contact Center Agent (Partner Telephony) 權限集且尚未指派到其他聯絡中心的使用者。

自訂

用於 Webex 聯繫中心整合的外部客戶端應用程式

配置 Webex Contact Center Salesforce 連接器的外部用戶端應用程式

為了充分利用 Service Cloud Voice,可以調整聯絡中心呼叫流程,以建立語音通話記錄,並在呼叫通過 IVR 時執行 Salesforce 全通路流程。

建立證書

請確保您已按照貴組織的安全策略建立了數位憑證。

若要產生數位證書,請參閱 Salesforce 文件 https://developer.salesforce.com/docs/atlas.en-us.voice_pt_developer_guide.meta/voice_pt_developer_guide/voice_pt_generate_certificate.htm

範例

openssl genrsa -des3 -passout pass: -out server.pass.key 2048
openssl rsa -passin pass: -in server.pass.key -out server.key
rm server.pass.key
openssl req -new -key server.key -out server.csr

    Country Name (2 letter code) [AU]:CH
    State or Province Name (full name) [Some-State]:
    Locality Name (eg, city) []:
    Organization Name (eg, company) [Internet Widgits Pty Ltd]:
    Organizational Unit Name (eg, section) []:
    Common Name (e.g. server FQDN or YOUR name) []:
    Email Address []: my-api-user@my-example-org.com
    Please enter the following 'extra' attributes
    to be sent with your certificate request
    A challenge password []:
    An optional company name []:

openssl x509 -req -sha256 -days 365 -in server.csr -signkey server.key -out server.crt

伺服器.crt => Salesforce外部用戶端應用程式證書

伺服器金鑰 => Webex Control Hub 中 Salesforce 連接器的私鑰

SCV 整合使用者的權限集

下列權限集授予對 Connects for SCV 用於與 Contact Center IVR 流程和 Webex Contact Center for Salesforce for SCV 整合的 Apex 類別的存取權。

以下是一個設定範例,並描述了聯絡中心所需的最低權限。 / IVR集成功能正常。

  • 從「設定」中,導覽至 「使用者 | 權限集」。
  • 點選 新建 按鈕。
    • 輸入標籤,例如:IVR 參觀 SCV Apex 課程
    • API名稱會自動填寫
    • 執照:無
    • 按一下儲存按鈕。
  • 新的權限集已開啟。
  • 導航至 Apex 類別存取
  • 點擊 編輯 按鈕,並新增以下 Apex 類別:
    • cisco_wxcc_scv.服務路由
  • 導航至 系統權限
  • 點選 編輯 按鈕,啟用下列權限:
    • Apex REST 服務
    • API已啟用

最低存取權限 - 僅限 API 整合設定文件

此設定檔用於與 Webex Contact Center for Salesforce for SCV 集成,以建立語音通話記錄並從 IVR 流程執行 Omni-Flow。

以下是一個設定範例,並描述了聯絡中心所需的最低權限。 / IVR集成功能正常。

這是從「最低存取權限 - 僅限 API 整合」設定檔克隆而來。

  • 從「設定」中,導覽至 「使用者 | 設定檔」。
  • 在「設定檔」清單中,搜尋「 最低存取權限 - 僅限 API 整合」 。
  • 按一下設定檔名稱以開啟 最低存取權限 - 僅限 API 整合 設定檔。
  • 最小存取權限 - 僅限 API 整合 設定檔中,按一下 複製 按鈕。
  • 輸入新的個人資料名稱,例如:SCV整合。
  • 點選 儲存 按鈕。
  • 新個人資料頁面已開啟。
  • 請確認您的「最低存取權限 - 僅限 API 整合」設定檔中的所有權限均已從設定檔本身移除。
  • 導航至 系統權限
  • 請確保已啟用以下權限:
    • API已啟用
    • 僅限 API 用戶

SCV整合用戶

以下是一個設定範例,並描述了聯絡中心所需的最低權限。 / IVR集成功能正常。SCV整合使用者無需Salesforce Service Cloud Voice授權或Webex Contact Center for Salesforce for SCV授權。

  • 從「設定」中,導覽至 「使用者 | 」
  • 點選 新用戶 按鈕。
    • 請輸入名字、姓氏以及所有其他必填欄位。
    • 用戶許可:Salesforce 集成
    • 設定檔:選擇上一個步驟建立的設定檔(“SCV 整合式設定檔”,最小存取權限 - 僅限 API 整合設定檔的複製)
  • 點選 儲存 按鈕。
  • 開啟新的使用者記錄。
  • 指派先前建立的 權限集 (「IVR 存取 SCV Apex 類別」)。
  • 指派權限集許可證 Salesforce API 整合
建立 Salesforce 外部客戶端應用程式
建立新的外部客戶端應用程式

將 Salesforce 資料與第三方應用程式連接有兩種方法。Connected AppsExternal Client Apps都是用來整合資料的架構。外部客戶端應用是下一代互聯應用。

設定 Cisco Webex Contact Center 使用的 Salesforce 外部用戶端應用程式:

  1. 設定中,導覽至應用 | 外部客戶端應用 | 外部客戶端應用程式管理器
  2. 點選新建外部客戶端應用程式
  3. 外部客戶端應用程式—基本訊息
    • 外部客戶端應用程式名稱:WxCC - SCV
    • API名稱:WxCC_SCV
    • 聯絡人電子郵件: < your email >
    • 分佈狀態:選擇本地

    基本資訊

    外部客戶端應用程式—API(啟用 OAuth 設定)

    • 選擇:啟用 OAuth
    • 應用程式設定
    • 打回來 URL: http://localhost:1717/OauthRedirect as 範例回調 URL
    • OAuth 作用域
    • 選擇 OAuth 範圍:
    • 透過 API 管理用戶數據
    • 隨時執行請求(refresh_token, offline_access)

    API(啟用 OAuth 設定)

    流程啟用

    • 選擇:啟用 JWT 承載流
    • 點擊“上傳檔案”,然後上傳包含您的數位憑證的server.crt檔案。

    浮點啟用

    安全功能

    取消選取 Web 伺服器流需要密鑰 選項。

    安全性

  4. 點選建立按鈕。
  5. 切換到 選項卡策略 ,然後點擊編輯按鈕。
  6. 策略—OAuth 策略
    • 插件政策
      • 授權使用者:管理員批准的使用者已獲得預授權。
      • 確認更改
    • 應用授權
      • 刷新令牌策略:選擇立即過期刷新令牌
      • IP放鬆:選擇“強制執行 IP 限制”

    OAuth 策略

  7. 政策—應用政策
    • 起始頁——無
    • 選擇權限集—指派先前建立的權限集(「IVR 存取 SCV Apex 類別」)

    應用政策

  8. 按一下儲存
  9. 切換到標籤頁設定。
    • 在 OAuth 設定部分,點擊Consumer KeySecret按鈕;等待電子郵件並驗證您的身分。一個新的瀏覽器標籤頁會開啟一個顯示消費者詳細資料的頁面。

      OAuth 設定

    • 按一下 複製 並儲存消費者金鑰。消費者金鑰稍後將用於在 Webex Contact Center Control Hub 上建立 Salesforce 連接器。 

      外部客戶端應用程式名稱

Webex 聯絡中心配置和建立語音通話記錄的腳本

要充分發揮 Salesforce Service Cloud Voice 的價值,必須修改 Webex Contact Center 中的呼叫流程,以便在呼叫到達 Contact Center 時立即在 Service Cloud Voice 中建立語音呼叫記錄。

可以在 Salesforce 中執行可選的 Omni-Flow,用於路由決策和自動化。

有關所用 API 的詳細信息,請參閱 Service Cloud Voice API Wrapper

先決條件

若要使用 Service Cloud Voice API Wrapper,必須設定 Salesforce 外部客戶端應用程式以進行 IVR 整合

在 Webex Control Hub 中設定 Salesforce 連接器

請依照 https://help.webex.com/en-us/article/7fuy63/Set-Up-Integration-Connectors-for-Webex-Contact-Center#id_133211文章中的說明設定 Webex Contact Center 的 Salesforce 整合連接器。

1

登入您的客戶組織(地址: https://admin.webex.com ) ,然後導航至「服務」。 > 聯繫中心 > 租戶設定 > Integrations>Connectors.

2

在 Salesforce 卡片上,按一下「設定」或「新增連接器」。

  • 客戶端 ID: 外部客戶端應用程式消費者金鑰
  • Salesforce 電子郵件 ID: 「SCV 整合」的 Salesforce 使用者名稱(請參閱 SCV 整合使用者)
  • URL: 用於生產環境 https://login.salesforce.com 或如果您正在設定一個 dev/sandbox 使用 https://test.salesforce.com
  • 私鑰: 文件內容 server.key

重要事項:定期輪換機密資訊以維護安全

為了確保整合安全,請務必定期輪換您的私鑰和憑證。

在 Webex Hub的 ] 聯絡中心連接器中更新私鑰,並在 Salesforce外部用戶端應用程式中更新憑證。

故障排除提示

點選「完成」後,連接器沒有儲存:

  • 檢查一下是否還有空格 before/after 您的參賽作品。
  • 請確保您的私鑰(server.key)與您的 server.crt相符。如果您設定了多個組織並切換了證書,則這些證書將無法正常運作。
  • 請確保您的 Server.key 以句點開頭。 ----- Begin RSA Private Key -----

Webex 聯繫中心主要流程

表格 2. 流量變數
流量變數說明
語音通話記錄 ID 的流程變量 用於識別呼叫的唯一 ID。需要建立語音通話記錄。

格式: wxcc_<Interaction Id>

範例:wxcc_fc4ec7d8-4c91-49aa-b764-081fbba344a8

  • 姓名: SCV_供應商調用鍵
  • 類型: 字串
  • 使代理可見: 已啟用
呼叫開始時間的局部變數

用於建立語音通話記錄和更新語音通話記錄。

  • 姓名: SCV_呼叫開始時間
  • 類型: 字串
  • 使代理可見: 不
隊列的局部變數 name/id

執行 Omni 流返回,用於呼叫路由。

僅在使用「執行全流程」時才需要此變數。

  • 姓名: SCV_OmniFlowQueue
  • 類型: 字串
  • 使代理可見: 不
Agent 的局部變數 name/id

執行 Omni 流返回,用於呼叫路由。

僅在使用「執行全流程」時才需要此變數。

  • 姓名: SCV_OmniFlowAgent
  • 類型: 字串
  • 使代理可見: 不

主要流程概覽

  1. 產生供應商呼叫密鑰
  2. 設定通話開始時間
  3. HTTP 請求:建立語音通話記錄
  4. 評估用於建立語音通話記錄的 HTTP 回應
  5. 建立語音通話記錄時的錯誤處理
  6. HTTP 請求:執行全流程
  7. 評估 HTTP 回應以執行 Omni 流程
  8. 執行 Omni 流程的錯誤處理
  9. 繼續進行呼叫路由
表格 3. 主流
流程說明
產生供應商呼叫密鑰

Service Cloud Voice 處理的每個通話都會在 Salesforce 中建立語音通話記錄,並且需要一個名為「供應商呼叫金鑰」的唯一 ID。對於在 Webex Contact Center 中建立的語音通話記錄,必須在 WxCC 流程中定義供應商呼叫金鑰,然後使用流程變數將通話傳遞給座席。

vendorCallKey 值必須符合下列規則:

  • 該值必須是 < = 共255個字元。
  • 該值可以包含字母數字字元以及底線(_)、破折號(-)和句點(.)。
  • 該值必須以字母開頭,不包含空格,不以下列劃線結尾,且不包含兩個連續的底線。

  • 活動標籤: Generate_VendorCallKey
  • 變數名: SCV_供應商調用鍵
  • 變數類型:字串
  • 變數值 - 設定值:wxcc_{{NewPhoneContact.InteractionId}}

設定通話開始時間

通話開始時間的UTC時間戳記。此時間戳記用於建立語音通話記錄,並在呼叫者被轉接到客服人員之前掛斷電話時更新語音通話記錄。

  • 活動標籤: 設定通話開始時間
  • 多變的: SCV_呼叫開始時間
  • 變數值 - 設定值: {{now() | replace({'[UTC]': ''})}}
HTTP 請求:建立語音通話記錄

每次通話都需要執行此步驟。建立語音通話記錄後,必須將語音通話記錄 ID 與供應商通話金鑰一起透過變數傳遞給代理商。在 Service Cloud Voice 的聯絡中心配置中配置所使用的變數。

HTTP 請求設定
  • 活動標籤: 建立語音通話
  • 使用已認證端點: 已啟用
  • 連接器: 上一步驟建立的 Salesforce 連接器
  • 請求路徑: /services/apexrest/cisco_wxcc_scv/voice/v1/createVoiceCall
  • 方法: POST
  • 請求內容類型: Application/JSON

HTTP 請求:建立語音通話記錄

每次通話都需要執行此步驟。建立語音通話記錄後,必須將語音通話記錄 ID 與供應商通話金鑰一起透過變數傳遞給代理商。在 Service Cloud Voice 的聯絡中心配置中配置所使用的變數。

HTTP 請求設定

  • 活動標籤: 建立語音通話
  • 使用已認證端點: 已啟用
  • 連接器: 上一步驟建立的 Salesforce 連接器
  • 請求路徑: /services/apexrest/cisco_wxcc_scv/voice/v1/createVoiceCall
  • 方法: POST
  • 請求內容類型: Application/JSON

請求正文

建立語音通話記錄時,您也可以使用通話資料更新語音通話記錄中的自訂欄位。下面給出兩個請求正文範例,一個包含所有必要字段但沒有更新自訂字段,另一個包含自訂字段。

無需更新語音通話記錄中的自訂欄位:

{
  "callCenterDevName": "",
  "certDevName": "",
  "vendorCallKey": "{{SCV_VendorCallKey}}",
  "to": "{{NewPhoneContact.DNIS}}",
  "from": "{{NewPhoneContact.ANI}}",
  "initiationMethod": "Inbound",
  "startTime": "{{SCV_CallStartTime}}",
  "participants": [
    {
      "participantKey": "{{NewPhoneContact.ANI}}",
      "type" : "END_USER"
    }
  ]
}

更新語音通話記錄中的自訂欄位範例:

{
  "callCenterDevName": "",
  "certDevName": "",
  "vendorCallKey": "{{SCV_VendorCallKey}}",
  "to": "{{NewPhoneContact.DNIS}}",
  "from": "{{NewPhoneContact.ANI}}",
  "initiationMethod": "Inbound",
  "startTime": "{{SCV_CallStartTime}}",
  "participants": [
    {
      "participantKey": "{{NewPhoneContact.ANI}}",
      "type" : "END_USER"
    }
  ],
  "callAttributes": "{\"custfield1__c\": \"\",\"custfield2__c\": \"\",\"custfield3__c\": \"\"}"
}

參數
物業名稱
呼叫中心設備名稱 聯絡中心開發商名稱
證書設備名稱 憑證的 API 名稱(如聯絡中心中所配置的)
供應商呼叫密鑰 唯一呼叫 ID: {{SCV_VendorCallKey}}
收件者 CalledNumber/DNIS: {{NewPhoneContact.DNIS}}
來自 CallingNumber/ANI: {{NewPhoneContact.ANI}}
開始時間 UTC 時間戳 {{SCV_CallStartTime}} (在腳本中接受呼叫後立即設定)
呼叫屬性

表示語音通話記錄中的附加標準字段和自訂字段,其中每個鍵值對對應於一個標準字段或自訂字段及其值。

範例:

custfield1__c, custfield2__c, custfield3__c: 語音通話物件上自訂欄位的 API 名稱

value1, value2, value3: 自訂欄位的值

解析設定
  • 內容類型: JSON
  • 輸出變數: SCV_語音通話記錄 ID
  • 路徑表達式: $.data.voiceCallId

語音通話記錄 ID,將傳遞給代理商。

評估用於建立語音通話記錄的 HTTP 回應

檢查建立語音呼叫 HTTP 請求的 HTTP 狀態:

  • 標籤: statusCodeCreateVoiceCall
  • 多變的: 建立語音呼叫.http狀態碼

如果狀態碼 == 200 => 其他成功 => 請求失敗,錯誤處理

建立語音通話記錄時的錯誤處理

示範 / 僅用於調試,根據HTTP狀態碼播放訊息。

如果建立語音通話成功,則繼續執行全流程。否則,繼續進行呼叫路由。

HTTP 請求:執行全流程(可選步驟)

當您需要執行以下操作時,請使用「執行全流程」:

  • 執行自動化任務,例如搜尋或建立記錄,並將記錄與語音通話記錄關聯。
  • 搜尋記錄並進行螢幕截圖
  • 同步 Salesforce 和 Cisco 佇列
  • 讓 Service Cloud Voice 來做路由決策

此請求始終傳回呼叫必須路由到的“隊列”或“代理”。

執行此請求後,如果呼叫者在客服人員接聽之前掛斷電話,請確保發送清除路由請求。請參閱 Webex 聯絡中心事件流程

HTTP 請求設定

  • 活動標籤: 執行全流
  • 使用已認證端點: 已啟用
  • 連接器: 上一步驟建立的 Salesforce 連接器
  • 請求路徑: /services/apexrest/cisco_wxcc_scv/voice/v1/executeOmniFlow
  • 方法: POST
  • 請求內容類型: Application/JSON

請求正文

除了必填欄位外,您還可以將其他資料作為輸入變數傳遞給 Omni-Flow。以下是請求體的兩個範例。第一種情況不包含額外的流程參數,僅包含必填欄位;第二種情況包含兩個輸入變數。

使用 Omni-Flow 參數的範例:

{
  "callCenterDevName": "",
  "certDevName": "",
  "voiceCallId": "{{SCV_VoiceCallRecordId}}",
  "dialedNumber": "{{NewPhoneContact.DNIS}}",
  "flowDevName": "",
  "fallbackQueue": ""
}

更新語音通話記錄中的自訂欄位範例:

{
  "callCenterDevName": "",
  "certDevName": "",
  "voiceCallId": "{{SCV_VoiceCallRecordId}}",
  "dialedNumber": "{{NewPhoneContact.DNIS}}",
  "flowDevName": "",
  "fallbackQueue": "",
  "flowInputParameters": 
  {
    "param1": "value1",
    "param2": "value2"
  }
}

參數
物業名稱
呼叫中心設備名稱 聯絡中心開發商名稱
證書設備名稱 憑證的 API 名稱(如聯絡中心中所配置的)
語音通話 ID 上一個步驟所建立的語音通話記錄的 ID: {{SCV_VoiceCallRecordId}}
撥號號碼 CalledNumber/DNIS: {{NewPhoneContact.DNIS}}
串流開發名稱 要執行的 Omni-Flow 的開發者名稱
回退隊列 備用 Salesforce 佇列的佇列 ID 或佇列 API 名稱
流程輸入參數

全渠道流程的其他輸入(鍵值對)。

範例:

param1, param2: Omni-Flow 輸入參數的名稱

value1, value2: 參數值

解析設定

佇列

  • 內容類型: JSON
  • 輸出變數: SCV_OmniFlowQueue
  • 路徑表達式: $.data.queue

Execute Omni-Flow 傳回的「佇列」可用於路由。

代理
  • 內容類型: JSON
  • 輸出變數: SCV_OmniFlowAgent
  • 路徑表達式: $.data.agent

從 Execute Omni-Flow 傳回的「Agent」可用於路由。

評估 HTTP 回應以執行 Omni 流程

檢查執行 Omni Flow HTTP 請求的 HTTP 狀態:

  • 標籤: 狀態碼執行OmniFlow
  • 多變的: ExecuteOmniFlow.httpStatusCode

如果狀態碼 == 200 => 其他成功 => 請求失敗,正在處理錯誤。

執行 Omni 流程的錯誤處理

示範 / 僅用於調試,根據HTTP狀態碼播放訊息。

如果執行 OmniFlow 成功,變數 SCV_OmniFlowQueue 和 SCV_OmniFlowAgent 未設定。呼叫流程中的路由決策。

繼續進行呼叫路由

繼續執行通話流程,將電話轉接給客服人員。(可選)使用 SCV_OmniFlowQueue 和 SCV_OmniFlowAgent 來選擇佇列和代理程式。

Webex聯絡中心事件流程

如果來電者在客服人員接聽電話之前掛斷電話,我們必須更新 Service Cloud Voice 並終止通話。

  • 如果使用了“執行全流程”,則發送“清除路由”以刪除待處理的服務路由 (PSR)。
  • 發送「更新語音通話」操作,以更新語音通話記錄的開始和結束時間,並將狀態從「新建」變更為「已完成」。

  1. PhoneContactEnded - 當正在進行的通話中斷時,會觸發此事件,並且所有參與者都會被移除。
  2. HTTP 請求:清晰的路線
  3. HTTP 請求:更新語音通話
HTTP 請求:清晰的路線

  • 標籤: 清晰的路線
  • 使用已認證端點: 已啟用
  • 連接器: 上一步驟建立的 Salesforce 連接器
  • 請求路徑: /services/apexrest/cisco_wxcc_scv/voice/v1/clearRouting
  • 方法: POST

請求內容類型: Application/JSON

請求正文

{
  "callCenterDevName": "",
  "certDevName": "",
  "voiceCallId": "{{SCV_VoiceCallRecordId}}"
}

參數

物業名稱
呼叫中心設備名稱 聯絡中心開發商名稱
證書設備名稱 憑證的 API 名稱(如聯絡中心中所配置的)
語音通話 ID 上一個步驟所建立的語音通話記錄的 ID:SCV_語音通話記錄 ID

解析設定

完全不需要負擔任何費用。

HTTP 請求:更新語音通話

  • 標籤: 更新語音通話
  • 使用已認證端點: 已啟用
  • 連接器: 上一步驟建立的 Salesforce 連接器
  • 請求路徑: /services/apexrest/cisco_wxcc_scv/voice/v1/updateVoiceCall
  • 方法: POST
  • 請求內容類型: Application/JSON

請求正文

{
  "callCenterDevName": "",
  "certDevName": "",
  "voiceCallId": "{{SCV_VoiceCallRecordId}}",
  "startTime": "{{SCV_CallStartTime}}",
  "endTime": "{{now() | replace({'[UTC]': ''})}}",
  "disconnectReason": { "value": "Abandoned in queue", "isError": true }
}

參數

物業名稱
呼叫中心設備名稱 聯絡中心開發商名稱
證書設備名稱 憑證的 API 名稱(如聯絡中心中所配置的)
語音通話 ID 上一個步驟所建立的語音通話記錄的 ID:SCV_語音通話記錄 ID
開始時間 通話開始的 UTC 時間戳 {{SCV_CallStartTime}} (用於建立語音通話記錄)
結束時間 當前 UTC 時間戳 `{{now()
斷開連線原因 通話中斷原因。屬性 isError 需要設定為 true 才能正確顯示。

解析設定

完全不需要負擔任何費用。

參考

語言翻譯

(可選)啟用翻譯工作台

此設定僅在您使用翻譯語言設定時適用。

1

前往「設定」→「翻譯工作台」→「翻譯語言設定」。

2

點選 啟用 選擇翻譯語言。

(可選)啟用僅限平台使用的語言

此設定僅適用於 EN-US 以外的語言。

1

進入設定→公司設定→語言設定。

2

請選擇所需的語言。

3

請選取以下複選框:

  • 啟用最終用戶語言 - 幫助和設定未翻譯成最終用戶語言
  • 啟用平台專屬語言 - 平台專屬語言不提供預設翻譯
4

儲存變更。

啟動語言並選擇使用者(任務)
1

前往「設定」→「翻譯工作台」→「翻譯語言設定」。

2

選擇語言並選擇翻譯使用者。

3

儲存變更。

多語言設定
翻譯自訂標籤
1

轉到“設定”→“自訂標籤”。

2

選擇要開啟的自訂標籤名稱。

3

在相關的翻譯清單中,點選 New 輸入新的翻譯,或點選編輯(語言旁邊)編輯翻譯。

4

選擇您要翻譯成的語言。

5

在「翻譯文字」欄位中輸入翻譯後的值。當使用者的預設語言是翻譯語言時,此文字將覆寫標籤的「值」欄位中指定的值。

6

儲存變更。

使用者功能所需的 Salesforce 權限

Webex Contact Center SCV 代理權限集包含使用 Webex Contact Center 小工具和為代理程式開發的整合所需的所有權限。

Apex 類別存取權限(部分)

  • cisco_wxcc_scv.CiscoScvWxcc
  • cisco_wxcc_scv.ServiceResponseHandler
  • cisco_wxcc_scv.服務路由
  • cisco_wxcc_scv電話整合處理器

自訂元資料類型存取(部分)

  • cisco_wxcc_scv.WxCC 連接

Visualforce 頁面存取(部分)

  • cisco_wxcc_scv.CiscoScvLoginWxCC
  • cisco_wxcc_scv.CiscoScvMainWxCC
  • cisco_wxcc_scvCiscoScvOAuthRedirect
  • cisco_wxcc_scvCiscoScvSwLoader

服務雲端語音 API 封裝器

先決條件

若要使用 Service Cloud Voice API Wrapper,必須設定 Salesforce 外部客戶端應用程式以進行 IVR 整合

使用 Service Cloud Voice API 封裝器

Service Cloud Voice (SCV) for Salesforce 使用電話整合 REST API 來建立和更新語音通話、執行全通路流程以及刪除與語音通話關聯的 PendingServiceRouting 記錄。此服務需要 JWT 授權和使用 PATCH HTTP 方法,而 Cisco IP 互動式語音應答 (IVR) 目前不支援此方法。

為了簡化 SCV 電話整合 REST API 在(不僅限於)IVR 系統中的使用,我們提供了一組新的 API,這些 API 封裝了現有的 Salesforce API,可以直接從安裝了 Webex Contact Center for Service Cloud Voice 軟體包的 Salesforce 組織存取。

Service Cloud Voice API 封裝 器消除了對 JWT 令牌進行身份驗證的需求,對 Salesforce API 所需的資料實施了額外的檢查,並改進了回應物件。

取得 Access_令牌

執行一個 POST 請求到 https://<your-domain-name>.my.salesforce.com/services/oauth2/token

在請求體中發送以下參數:

{
 "grant_type": "client_credentials",
 "client_id": "",
 "client_secret": ""
 }
If the request is successful, the following JSON response will be returned:
{
 "access_token": "",
 "instance_url": "",
 "id": "https://login.salesforce.com/id//",
 "token_type": "Bearer",
 "issued_at": "",
 "signature": ""
 }

執行請求

實例 URL 必須包含 my.salesforce.com。

正確的實例 URL 範例: https://abc-123.my.salesforce.com

使用任何其他網域作為實例 URL(即 https://abc-123.lightning.force.com )都會導致 401 未授權狀態,並傳回無效的_會話_ID 錯誤代碼。

建立語音通話(部分)

建立一個包含語音通話記錄參與者(即來電者和接收者)的語音通話記錄。在建立語音通話記錄時,Salesforce 中會建立一個對話。僅在即時上下文中使用此 API,這意味著只有在發起呼叫時才應呼叫此 API。透過在請求有效負載中包含 parentVoiceCallId 參數,此 API 也可用於建立轉接和會議電話的 VoiceCall 記錄。

端點 URI

<instance_url>/services/apexrest/cisco_wxcc_scv/voice/v1/createVoiceCall

HTTP 方法

POST

標頭

授權:持有人 <access_token>

內容類型:application/json

參數

{
 "callCenterDevName": "contactCenterDevName123",
 "certDevName": "certDevName123",
 "vendorCallKey": "5324881f-1e84-4367-8930-f69a74b30ca6",
 "to": "8002345678",
 "from": "4081456688",
 "initiationMethod": "Inbound",
 "startTime": "2019-07-02T17:32:28Z",
 "participants": [
 {
 "participantKey": "4081456688",
 "type" : "END_USER"
 }
 ],
 "callAttributes": "{\"devscv24__AAA_Test__c\":\"field value\",\"Other_Field__c\":\"other value\"}",
 "parentVoiceCallId": "fsdfzuhsdfsa-43556fgef3-56g44gv4ew",
 "callOrigin": "Preview",
 "queue": "queue123"
 }

有關此要求接受的參數的詳細說明,請參閱Salesforce 官方文件中的「參數」部分

響應(成功)

{
 "data": {
 "voiceCallId": "00X000012345abc"
 },
 "errors": null,
 "success": true
 }

響應(有錯誤)

 
{
 "data": null,
 "errors": ["Error message 1", "Error message 2"],
 "success": false
 }

更新語音通話

通話結束後更新語音通話記錄。使用此 API 更新在 VoiceCall 建立階段不可用的與通話相關的參數。更新語音通話 API 是一個非同步操作。您無法查詢 API 呼叫的狀態。

即使通話結束後,也可以使用此端點建立語音通話。這種行為在以下場景中非常有用:您希望在 Salesforce 中記錄已放棄或未接來電的記錄,或任何其他尚未建立 VoiceCall 的場景。

端點 URI

<instance_url>/services/apexrest/cisco_wxcc_scv/voice/v1/updateVoiceCall

HTTP 方法

POST

標頭

授權:持有人 <access_token>

內容類型:application/json

參數

{
 "callCenterDevName": "contactCenterDevName123",
 "certDevName": "certDevName123",
 "voiceCallId": "00X000012345abc",
 "startTime": "2020-08-26T21:21:14Z",
 "endTime": "2019-08-26T21:21:34Z",
 "isActiveCall": true,
 "fromNumber": "1234",
 "callOrigin": "Preview",
 "enqueueTime": "2019-08-26T21:21:34Z",
 "acceptTime": "2019-08-26T21:21:24Z",
 "numberOfHolds": 20,
 "queue": "queue123",
 "agent": "agent123",
 "agentInteractionDuration": 12,
 "longestHoldDuration": 10,
 "totalHoldDuration": 21,
 "recordingLocation": "Bern",
 "totalRecordingDuration": 55,
 "callAttributes": "{\"devscv24__AAA_Test__c\":\"field value\",\"Other_Field__c\":\"other value\"}",
 "disconnectReason": {
 "value": "TELECOM_PROBLEM",
 "isError": true
 }
 }

有關此要求接受的參數的詳細說明,請參閱 Salesforce 官方文件 中的「參數」部分。

響應(成功)

{
 "data": {
 "status": "pending"
 },
 "errors": null,
 "success": true
 }

更新語音通話 API 是一個非同步操作。您無法查詢 API 呼叫的狀態。

響應(有錯誤)

{
 "data": null,
 "errors": ["Error message 1", "Error message 2"],
 "success": false
 }

執行全流程

執行全渠道流程以路由呼叫。它將呼叫 ID(Salesforce VoiceCallId 或電話供應商 ContactId)作為參數傳遞給流程,並將座席或佇列路由指令傳回給聯絡人流程。預設情況下,Service Cloud Voice 使用與所撥打號碼相符的電話通道指定的全渠道流(或回退佇列)。如果撥打的號碼與現有電話頻道不匹配,您可以選擇將新的撥打號碼、全頻道流程和回退佇列設定為此 API 呼叫的輸入參數。

Service Cloud Voice 使用以下優先順序來路由呼叫:

  1. 使用與所撥號碼相符的電話通道的全通路流程和回退佇列設定。流程優先。如果流程失敗,則使用備用佇列。
  2. 使用在執行 Omniflow API 呼叫中指定的 flowDevName 和 fallbackQueue 參數。

端點 URI

<instance_url>/services/apexrest/cisco_wxcc_scv/voice/v1/executeOmniFlow

HTTP 方法

POST

標頭

授權:持有人 <access_token>

內容類型:application/json

參數

{
  "callCenterDevName": "contactCenterDevName123",
  "certDevName": "certDevName123",
  "voiceCallId": "00X000012345abc",
  "dialedNumber": "+18445791189",
  "flowDevName": "Route_VoiceCall",
  "fallbackQueue": "00G111222333444",
  "flowInputParameters":
  {
    "Input1": "one",
    "Input2": "two"
  }
}

  • voiceCallId 參數是 Salesforce 的 voiceCallId 或電話供應商的聯絡人 ID。
  • 有關此要求接受的參數的詳細說明,請參閱 Salesforce 官方文件 中的「參數」部分。

響應(成功)

{
  "data": {
    "queue": "queue info",
    "agent": "agent info"
  },
  "errors": null,
  "success": true
}

AGENT_INFO 和 QUEUE_INFO 對應於 CallCenterRoutingMap 中的 ExternalId 欄位。

響應(有錯誤)

{
 "data": null,
 "errors": ["Error message 1", "Error message 2"],
 "success": false
 }

清晰的路線

刪除語音通話的 PendingServiceRouting (PSR) 記錄。大多數情況下不需要呼叫此 API;當不再進行呼叫路由時,PSR 記錄會自動刪除。但是,在某些情況下,例如使用合作夥伴電話系統時,如果出現未接來電或放棄來電,則必須明確呼叫此 API 以清除 PSR 記錄。

端點 URI

<instance_url>/services/apexrest/cisco_wxcc_scv/voice/v1/clearRouting

HTTP 方法

POST

標頭

授權:持有人 <access_token>

內容類型:application/json

參數

{
 "callCenterDevName": "contactCenterDevName123",
 "certDevName": "certDevName123",
 "voiceCallId": "00X000012345abc"
 }

  • voiceCallId 參數是 Salesforce 的 voiceCallId 或電話供應商的聯絡人 ID。
  • 有關此要求接受的參數的詳細說明,請參閱 Salesforce 官方文件 中的「參數」部分。

響應(成功)

{
 "data": {
 "status": "Success"
 },
 "errors": null,
 "success": true
 }

響應(有錯誤)

{
 "data": null,
 "errors": ["Error message 1", "Error message 2"],
 "success": false
 }

電話號碼翻譯

Service Cloud Voice 和 Webex Contact Center 之間的各種互動都取決於電話號碼的轉換。由於國際差異和客戶特定應用,需要一個可自訂的工具將電話號碼從格式 A 轉換為格式 B。

Webex Contact Center for Service Cloud Voice 解決方案會自動移除除數字和井號 (#) 之外的所有字元。 (#), 星號 (*), 逗號 (,) 和前導加號 (+). 它也會刪除第一次出現的 (0)。這將在您的電話號碼翻譯應用程式 之前完成

本指南說明如何設定電話號碼翻譯。

欄位

電話號碼翻譯儲存在名稱-值欄位中。這樣,您可以為每個功能配置無限數量的規則。

配置資訊以 JSON 字串形式儲存。

請注意,反斜線需要轉義,例如: \d+ 變成 \\d+.

{"Remove all characters but digits":"[1,17]->[^\\d]+","To internal number":"[7,17]->(\\d{7})(\\d{4})->$2"}

“名稱”欄位實際上並未被使用。它的作用是添加一個人類可讀的字串,以便快速識別此規則的用途。好的名字例如:刪除所有前導零, 新增前導加號 等等。

建立翻譯規則

規則以正規表示式的形式提供。更準確地說:JavaScript 中正規表示式的實作。

一個好的入門方法是閱讀 MDN 網站文件中的 RegExp 文件。

然而,建立複雜的正規表示式通常很麻煩。因此,我們添加了額外的語法,使配置盡可能簡單。

下圖顯示了電話號碼轉換規則的一般語法:

謂詞

此謂詞用於指定一個區間,該區間定義了要匹配的數字的長度。

上述謂詞指定所有長度介於 7 到 11 個字元之間的數字(包括邊)。 + 空格)匹配。

謂詞始終與數字的原始長度相符。這有助於簡化配置,降低內部規則衝突的風險。 / 外部號碼。

型式

模式指定要符合的數字格式。

上述模式表明,該數字必須僅由數字組成,並選擇這些數字。

選擇器

選擇器定義了數字的最終格式。如果字元 / 需要加入一些原本不存在的數字,這裡就是增加這些數字的地方。

選擇器是建立數字的最後一步。根據模式輸出,選擇器建立新的數字。

範例 1

以下範例展示如何將從呼叫中心收到的格式為 0319175200 的號碼轉換為瑞士 E164 格式。 +41 31 917 52 00。

本範例使用了兩條翻譯規則(1. 以及 2.)

本例中的第一條規則實際上並沒有改變數字。對於長度在 1 到 17 個字元之間的數字,除數字以外的任何其他字元都將被刪除。由於沒有非數字字符,所以一切照舊。

第二條規則適用於長度剛好為 10 個字元(原始長度)的數字。 0319175200 符合此規則,因此該規則適用。此模式規定,數字必須以一位數開頭。 (\d{1}),後面跟著一組兩位數字 (\d{2}),後面跟著一組三個數字 (\d{3}), 等等。

然後,選擇器存取模式群組以定義新的數字字串。這意味著 $2 參考第一部分 (\d{2}) 因此包含 31。

範例 2

以下範例展示如何以下列格式傳送從呼叫中心收到的號碼 +14693150217 轉換為美國 E164 格式 +1 469 315 0217。

本範例使用了兩條翻譯規則(1. 以及 2.)

  1. 這個號碼剛好是 12 個字元長,因此應用了「美國號碼前加空格」的規則。
  2. (\+1) 表示該數字必須以…開頭 +1. 如果數字長度為 12 個字符,但不以 a 開頭 +1, 該規則被取消,但一切照舊。
  3. (\d{3}) 表示 +1 後面必須跟3位數字。
  4. (\d{3}) 表示最後 3 位數字後面必須再跟 3 位數字。
  5. (\d{4}) 表示最後 3 位數字後面必須跟 4 位數字。

如果其中任何一項不匹配,則該數字將不會更改。

所以,所有規則都適用於… “+14693150217”. 因此,該數字發生了變化。 “$1 $2 $3 $4”:

  1. $1 指該群體 (\+1), 要傳送到 Service Cloud Voice 的號碼如下所示 +1.
  2. $2 指的是這兩個中的第一個。 (\d{3}),要傳送至 Service Cloud Voice 的號碼如下所示 +1 469.
  3. $3 指的是這兩個中的第二個。 (\d{3}),要傳送至 Service Cloud Voice 的號碼如下所示 +1 469 315。
  4. $4 指的是最後一組 (\d{4}),要傳送至 Service Cloud Voice 的號碼如下所示 +1 469 315 0217。

規則替換部分中的空格 “$1 $2 $3 $4” 直接使用。所以如果你使用 “$1-$2-$3-$4” 該數字將被翻譯為: +1-469-315-0217

您也可以刪除群組:[12, 12]->(\+1)(\d{3})(\d{3})(\d{4})->$2 $3 $4 將被翻譯成:469 315 0217。 [12, 12]->(\+1)(\d{3})(\d{3})(\d{4})-> $3 $4 將被翻譯成:315 0217.

也可以將美國國際號碼轉換為本地號碼,例如:[12, 12]->(\+1)(\d{3})(\d{3})(\d{4})->($2) $3-$4.

然後是傳入的數字 “+14693150217” 將被翻譯成:(469) 315-0217.

範例 3

以下範例展示如何傳送從呼叫中心收到的號碼,格式為: +491515555531 德語 E164 格式 +49 151 5555 531。

本範例使用了兩條翻譯規則(1. 以及 2.)

  1. 這個數字正好是 13 個字符,因此應用了「德語數字前加空格」的規則。
  2. (\+49) 表示該數字必須以…開頭 +49. 如果數字長度為 13 個字符,但不以 a 開頭 +49, 該規則被取消,但一切照舊。
  3. (\d{3}) 表示 +49 後面必須跟3位數字。
  4. (\d{4}) 表示最後 3 位數字後面必須跟 4 位數字。
  5. (\d{3}) 表示最後 4 位數字後面必須跟 3 位數字。

如果其中任何一項不匹配,則該數字將不會更改。

所以所有規則都適用於 “+491515555531”. 因此,該數字發生了變化。 “$1 $2 $3 $4”:

  1. $1 指該群體 (\+49), 要傳送到 Service Cloud Voice 的號碼如下所示 +49.
  2. $2 指的是這兩個中的第一個。 (\d{3}),要傳送至 Service Cloud Voice 的號碼如下所示 +49 151.
  3. $3 指的是這兩個中的第二個。 (\d{4}),要傳送至 Service Cloud Voice 的號碼如下所示 +49 151 5555。
  4. $4 指的是最後一組 (\d{3}),要傳送至 Service Cloud Voice 的號碼如下所示 +49 151 5555 531。

同樣的道理也適用於第一條規則。您可以使用替換零件 $1 $2 $3 $4 從這些數字中選擇要使用的內容。

更多翻譯正規表示式範例

說明 翻譯正規表示式
刪除數字以外的所有字符 [1,17]->[^\d]+
刪除數字以外的所有字符 & + [1,17]->[^+\d]+
說明 翻譯正規表示式
消除 +1 [12,12]->(.{1})(\d{1})(\d{10})->$3
消除 +1 [10,12]->(^\+1+)(\d+)->$2
消除 +49 [10,15]->(^\+49+)(\d+)->$2
消除 +49 [10,15]->(.{1})(\d{2})(\d{9})->$3
消除 +41 [10,13]->(^\+41+)(\d+)->$2
消除 +41 [10,13]->(.{1})(\d{2})(\d{9})->$3
消除 +XX [10,14]->(^\++)(\d{2})(\d+)->$3
說明 翻譯正規表示式
消除 + 並將其替換為零 US E164 [10,12]->(.{1})(\d{1})(\d{10})-> 001 $3
消除 +1 並將其替換為零 US E164 [10,12]->(^\+1+)(\d+)-> 001$2
消除 + 並將其替換為零 DE E164 [12,15]->(.{1})(\d{2})(\d{10})-> 0049 $3
消除 +49 並將其替換為零 DE E164 [10,12]->(^\+49+)(\d+)-> 0049$2
消除 + 並將其替換為零 CH E164 [10,13]->(.{1})(\d{2})(\d{9})-> 0041 $3
消除 +41 並將其替換為零 CH E164 [10,12]->(^\+41+)(\d+)-> 0041$2
說明 翻譯正規表示式
美國電話號碼(含空格) [12,17]->(\d{1})(\d{3})(\d{3})(\d{4})->+1 $2 $3 $4
美國電話號碼(含空格) [12,17]->(\+1)(\d{3})(\d{3})(\d{4})->$1 $2 $3 $4
帶空格的DE號碼 [12,17]->(\d{2})(\d{3})(\d{4})(\d{3})->+49 $2 $3 $4
帶空格的DE號碼 [12,17]->(\+49)(\d{3})(\d{4})(\d{3})->$1 $2 $3 $4
有空格的 CH 號碼 [12,17]->(\d{2})(\d{2})(\d{3})(\d{2})(\d{2})->+41 $2 $3 $4
有空格的 CH 號碼 [12,17]->(\+41)(\d{2})(\d{3})(\d{2})(\d{2})->$1 $2 $3 $4

語音通話頁面配置

設定語音通話記錄頁面

VoiceCall 記錄頁面預設預先配置為 3 列佈局,包含下列元件:

  • 行動 & 建議
  • 通話筆記
  • 通話詳細資料
  • 錄製檔

根據業務需要,可以自由地從頁面中刪除或新增元件。也可以使用不同的頁面佈局,但有些元件(例如通話錄音播放器和對話正文)只能放置在模板的中型和大型區域。

顯示總結原因組件

通話期間和通話結束後必須顯示「結束原因」組件。

將 Cisco Wrap-Up Reason 元件新增至 VoiceCall 記錄頁面:

  1. Cisco Wrap-Up Reason Lightning Web 元件從 Lightning 元件清單的自訂區域拖曳到 VoiceCall Record 頁面中。
  2. 按一下儲存
  3. 按一下 啟動
  4. 按一下 指定為組織預設值
  5. 按一下儲存
  6. 點選 儲存 再點選 後退箭頭 返回頁面。

Cisco 結束通話原因 元件將在通話期間和結束通話期間自動顯示:

如果新增至頁面中,則每次通話都會顯示 Cisco 通話總結原因元件,即使在 Cisco 聯絡中心中未設定通話摘要功能也是如此。

顯示通話錄音播放器

如果已為相應的語音通話保存了錄音鏈接,則會顯示通話錄音播放器。

請依照以下步驟將通話錄音播放器元件新增至語音通話錄音頁面:

  1. 將「通話錄音播放器 Lightning Web 元件」拖曳到「語音通話錄音」頁面。
  2. 點選儲存
  3. 點選啟動
  4. 按一下指定為組織預設值
  5. 點選儲存
  6. 點選儲存再點選一次,然後點選後退箭頭返回頁面。

Webex 管理員

流程配置

螢幕彈出

Webex 聯繫中心流程中提供了「螢幕彈出」節點。它可用於在 Service Cloud Voice 內部或單獨的視窗中觸發螢幕彈出。

有關此功能的更多信息,請參閱 Flow Designer 文件

螢幕彈出在單獨的視窗中

若要在單獨的視窗中開啟螢幕彈出窗口,則必須在「螢幕彈出」節點中提供 絕對 URL 。queryParameters 將作為搜尋參數附加到 URL 中。

支援以下幾種模式:

  • 新瀏覽器標籤頁 - 始終開啟一個新的瀏覽器標籤頁。
  • 現有瀏覽器標籤頁 - 在第一個「現有瀏覽器標籤頁」畫面彈出視窗中,會開啟一個新的瀏覽器標籤頁。此標籤頁將作為後續「現有瀏覽器標籤頁」畫面彈出視窗的專用標籤頁,並且 URL 將在該特定瀏覽器標籤頁內刷新。
  • 桌面內部 - 處理方式與 新瀏覽器標籤頁相同。

目前開啟的頁面可能會阻止重定向。在這種情況下,會彈出一個「現有瀏覽器標籤頁」畫面,並在新的瀏覽器標籤頁中開啟。

本文是否有幫助?
本文是否有幫助?