- 홈
- /
- 문서
Webex Contact Center for Salesforce Service Cloud Voice는 Cisco의 강력한 CCaaS(Contact Center as a Service)를 Salesforce의 CRM과 통합하여 기업이 Salesforce 인터페이스 내에서 옴니채널 고객 상호 작용(음성, 디지털)을 관리할 수 있도록 지원합니다. 또한 Webex AI를 사용하여 가상 에이전트, 녹취록 및 지능형 라우팅을 제공하고, 통합 데이터를 통해 에이전트를 "슈퍼 에이전트"로 전환하여 더 나은 고객 경험을 제공합니다.
개요
Salesforce Service Cloud Voice용 Webex Contact Center
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는 다음 에디션에서 사용할 수 있습니다.
- Enterprise
- 무제한
- 개발자
라이선스
-
고객은 Webex Contact Center용 Flex 3 Standard 또는 Premium 라이선스 외에도 로그인한 상담원 수만큼 새로운 A-SF-VOICE 추가 기능 라이선스를 구매해야 합니다. 자세한 내용은 Flex 3 주문 안내서를 참조하십시오.
- 파트너 전화 통신을 위한 Salesforce Voice
음성 기능을 활성화하기 전에 조직에 필요한 사전 설정 서비스를 구성해야 합니다.
- 회사 정보로 이동 > 권한 세트 라이선스
- 서비스 클라우드 음성 사용자(파트너 전화)를 확인하세요.
이제 모든 개발자 에디션에는 테스트용 파트너 전화 통신 라이선스 5개가 포함되어 있습니다.
- 서비스 클라우드 음성 사용자(파트너 전화)를 확인하세요.
- 또는 Salesforce 설정으로 이동하여 왼쪽 사이드바에서 "voice" 를 검색하여 이를 확인할 수 있습니다.
- "파트너 전화 통신 컨택 센터" 가 표시되면 SCV 라이선스가 있는 것입니다.
- "파트너 전화 통신 연락 센터" 옵션이 표시되지 않으면 아래 단계를 따라 "서비스 클라우드 음성 활성화" 를 실행하세요.
- Salesforce 설정으로 이동하여 "파트너 전화 설정"을 검색하고 선택한 다음 버튼을 "Service Cloud 음성 활성화"로 전환합니다.
- 상담원이 전화를 걸고 받을 수 있도록 옴니채널을 활성화하세요.
- Salesforce 설정으로 이동하여 "파트너 전화 설정"을 검색하고 선택한 다음 버튼을 "Service Cloud 음성 활성화"로 전환합니다.
옴니채널 활성화
조직에서 옴니채널이 이미 활성화된 경우 이 단계를 건너뛰세요.
- 설정에서 빠른 찾기 상자에 옴니채널 설정 을 입력한 다음 옴니채널 설정을 선택합니다.


- 옴니채널 활성화를 선택하세요.
- 저장을 클릭합니다.
제한 사항
- 음성 기능은 Lightning Experience에서만 사용할 수 있습니다.
- 음성 기능은 서비스 클라우드 및 세일즈 클라우드에서 추가 라이선스로 지원됩니다.
- Salesforce 모바일 앱이나 iPad Safari에서는 음성 기능이 지원되지 않습니다.
- 음성 기능은 Google Chrome, Microsoft Edge(Chromium) 및 Mozilla Firefox 웹 브라우저에서만 지원됩니다. 싱글 사인온(SSO)을 사용하려면 쿠키를 활성화해야 합니다.
- 표준 탐색 기능은 지원되지 않습니다.
- 전화 통신은 엄격한 규제를 받으므로 해당 지역에서 음성 통화가 가능한지 여부는 Salesforce 담당자에게 문의하십시오.
Service Cloud Voice 제한 및 제약 사항 및 설치 및 구성 가이드를 참조하십시오.
요구 사항
유휴 코드
유휴 코드 찾기
| 1 |
관리 포털에 로그인하세요. |
| 2 |
고객센터로 이동하세요 > 데스크톱 환경 > Idle/Wrap-up 코드. |
| 3 |
유휴 코드(Idle Code)가 표시되는지 확인하십시오. 그렇지 않으면 필터 드롭다운 버튼을 클릭하고 페이지 상단의 유휴 코드 를 선택하십시오. |
| 4 |
유휴 코드를 클릭하면 상세 보기 화면이 열립니다. 거기서 유휴 코드 ID를 찾을 수 있습니다.
ID를 복사한 다음 존재 상태 매핑 구성에 사용할 수 있습니다. ID 중 하나는 기본 Cisco 준비 안 됨 이유로 사용해야 합니다. |
통합
설치
설치를 진행하기 전에 Salesforce Service Cloud의 필수 조건 및 제한 사항에 대해 알아보려면 필수 조건 및 제한 사항 섹션을 참조하십시오.
Service Cloud Voice용 Webex Contact Center 설치 및 구성
파트너 전화 통신용 서비스 클라우드 음성 라이선스를 획득하면 설정 메뉴에 파트너 전화 통신 설정 페이지가 나타납니다.
자세한 내용은 Salesforce 공식 참조 자료( 직접 링크)에서 확인할 수 있습니다.
| 1 |
설정에서 |
| 2 |
파트너 전화 통화를 통한 음성 기능을 활성화합니다. 파트너 전화 연락 센터 페이지는 설정 메뉴에 나타납니다. Salesforce 샌드박스에 패키지를 배포할 계획이라면 설치 링크의 |
패키지를 설치하세요
패키지를 설치하려면 다음 단계를 따르세요.
| 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 |
컨택센터를 생성하려면 최소 한 명의 사용자에게 다음 권한 세트를 부여하십시오. |
| 5 |
설정 | 사용자 | 사용자를 클릭하세요. |
| 6 |
검색 후 사용자를 선택하세요. |
| 7 |
"권한 세트 할당"까지 아래로 스크롤하십시오. |
| 8 |
과제 편집을 클릭하세요. |
| 9 |
고객센터 관리자용: 연락센터 관리자(파트너 전화) 권한 세트를 할당합니다.
|
| 10 |
고객센터 상담원용: 컨택센터 에이전트(파트너 전화) 권한 세트와 Webex 컨택센터 SCV 에이전트 권한 세트를 할당합니다.
모든 사용자를 위해 설치 옵션을 선택하는 것은 권장하지 않습니다. 이 옵션을 선택하면 사용자 지정 사용자 프로필을 사용하는 모든 사용자에게 패키지 구성 요소 및 개체에 대한 모든 권한(읽기, 생성, 편집 및 삭제)이 부여됩니다. |
| 11 |
사용자가 Service Cloud Voice용 Connect를 사용할 수 있도록 패키지 라이선스를 할당하십시오.
|
| 12 |
또는 설정 | 사용자 | 사용자.를 클릭할 수도 있습니다. |
| 13 |
사용자를 검색하고 선택하세요. |
| 14 |
관리 패키지까지 아래로 스크롤하세요. |
| 15 |
라이선스 할당을 클릭하세요. |
| 16 |
목록에서 Webex Contact Center for Service Cloud Voice 패키지를 선택하십시오. |
| 17 |
추가를 클릭합니다. |
| 18 |
상태 설정 을 생성하여 각 상태에 어떤 서비스 채널이 할당되는지 정의합니다. 에이전트는 자신이 받을 자격이 있는 업무 유형에 따라 서로 다른 상태로 옴니채널에 로그인할 수 있습니다. |
| 19 |
설정에서 빠른 찾기 상자에 |
| 20 |
새로 만들기를 클릭합니다. "온라인" 상태와 "바쁨" 상태를 각각 최소 하나씩 생성하세요.
|
에이전트에 현재 상태를 할당합니다.
| 1 |
설정에서 빠른 찾기 상자에 '권한 세트'를 입력한 다음 '권한 세트'를 선택합니다. |
| 2 |
파트너 전화 통신 권한 설정을 클릭하여 엽니다. |
| 3 |
서비스 존재 상태 액세스를 클릭하세요. |
| 4 |
편집을 클릭합니다. |
| 5 |
사용 가능한 서비스 상태 목록에서 이전에 생성한 상태(들)를 선택하고 추가 를 클릭하여 권한 세트와 연결합니다. 이 권한 세트가 할당된 상담원은 사용 가능한 모든 현재 상태로 옴니채널에 로그인할 수 있습니다. |
| 6 |
저장을 클릭합니다. |
| 7 |
같은 페이지에서 과제 관리 를 클릭하세요. 그런 다음 오른쪽 상단 모서리에 있는 할당 추가 를 클릭하고 원하는 사용자를 선택한 다음 다음을 클릭하고 할당된 사용자에 대한 만료 옵션 을 선택한 다음(선택 사항) 할당을 클릭합니다. Service Cloud Voice는 VoiceCall 레코드를 처리하기 위해 외부 도메인을 사용합니다. 설정( 공식 문서를 열려면 여기를 클릭하세요) 의 "원격 사이트 설정"에 다음 URL을 추가해야 합니다. ):
예: 인스턴스 URL을 찾는 방법. |
| 8 |
로그인 후 브라우저 주소 표시줄의 URL을 확인하세요. 인스턴스 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입니다. 예: 출처 조직 URL: https://cisco.lightning.force.com 예: 추가할 URL:
|
| 9 |
에이전트가 Service Cloud Voice를 사용하려면 Lightning Service Console 앱에 Omni-Channel 유틸리티 항목이 필요합니다.
Salesforce의 공식 참조는 Salesforce 도움말 포털( 직접 링크 [] )에서 파트너 전화 통신을 사용하여 Service Cloud Voice에 대한 에이전트 환경 구성 페이지를 여는 [ Let's Do This버튼 을 클릭하여 찾을 수 있습니다. |
| 10 |
설정에서 빠른 찾기 상자에 파트너 전화 설정 을 입력한 다음 파트너 전화 설정을 선택합니다. |
| 11 |
5 추가 음성 설정섹션으로 스크롤하십시오. |
| 12 |
Lightning Experience에서 소프트폰을 사용하는 동안 헤더가 비활성화된 Visualforce 페이지에 대한 클릭재킹 방지 기능을 활성화 하려면 Salesforce 인스턴스 URL 외에도 소프트폰과 사용자 지정 툴바가 로드되는 도메인 을 신뢰할 수 있는 도메인으로 추가해야 합니다. 이러한 설정과 신뢰할 수 있는 도메인 목록은 설정 | 보안 |세션 설정에서 찾을 수 있습니다. 올바른 Visualforce 도메인을 검색하려면 설정 | 사용자 지정 코드 | Visualforce 페이지 로 이동하여 예: MyDomainName--cisco_wxcc_scv.vf.force.com Salesforce 인스턴스 도메인을 얻으려면 브라우저 URL 표시줄에 표시된 URL을 복사하고 인라인 프레임용 신뢰할 수 있는 도메인 목록 에 추가하고 IFrame 유형으로 Visualforce 페이지 를 선택합니다. 예: MyDomainName.lightning.force.com 조직에 마이 도메인이 배포되어 있지 않은 경우 URL 형식이 다릅니다. My Domain이 배포되어 있고 조직에서 향상된 도메인이 사용 설정되어 있지 않은 경우 URL 형식이 다릅니다. 향상된 도메인이 활성화되지 않은 경우 Visualforce, Experience Builder, Site.com 스튜디오 및 콘텐츠 파일의 URL 안정화 설정(내 도메인)도 이 형식에 영향을 미칩니다. 자세한 내용은 Salesforce 도움말의 내 도메인 URL 형식 을 참조하세요. Lightning Experience용 클릭재킹 방지 및 신뢰할 수 있는 도메인 설정 |
| 13 |
통화 중 녹음 제어 기능을 표시하려면 상담원은 이를 할당하려면 상태 설정 단계에서 생성된 권한 세트에 추가하십시오.
|
구성
Contact Center
컨택센터 정의 파일은 특정 CTI 시스템에 대해 Salesforce에서 컨택센터를 정의하는 데 사용되는 필드 및 값 집합을 지정합니다. Salesforce는 여러 CTI 시스템 공급업체와의 통합을 지원하기 위해 컨택 센터 정의 파일을 사용합니다.
자세한 내용은 Salesforce의 공식 문서( 직접 링크)에서 확인할 수 있습니다.
컨택 센터 가져오기
베타 버전에서 업그레이드: 이 가이드에서는 Salesforce Service Cloud Voice용 Webex Contact Center 통합의 일반 출시(GA) 버전을 새로 설치하는 방법을 설명합니다.
통합 기능의 베타 버전에서 업그레이드하는 경우 기존 파트너 연락 센터 레코드를 재사용하지 마십시오. 대신에:
- GA 릴리스에 포함된 파트너 컨택 센터 XML 파일을 가져옵니다.
- 가져온 XML을 사용하여 새 파트너 컨택 센터 레코드를 생성합니다.
- 새로 생성된 파트너 컨택 센터를 사용하도록 구성을 업데이트하세요.
GA 파트너 컨택 센터 XML에는 올바른 커넥터 URL 및 기타 메타데이터를 포함하여 업데이트된 구성 값이 포함되어 있습니다. 베타 XML에서 생성된 파트너 컨택 센터 레코드를 재사용하면 오래된 구성 값이 유지되어 통합이 제대로 작동하지 않을 수 있습니다.
| 1 |
설정에서 빠른 찾기 상자에 파트너 전화 연락 센터 를 입력한 다음 파트너 전화 연락 센터를 선택합니다. 기존에 운영 중인 고객센터 목록(있는 경우)이 표시됩니다.
|
| 2 |
페이지 오른쪽의 고객센터 만들기 를 클릭하세요. |
| 3 |
전화 서비스 제공업체로 Webex Contact Center 를 선택하십시오. 그 후 다음을 클릭합니다. 파일 탐색기가 열립니다.
|
| 4 |
콜센터 정의가 포함된 |
| 5 |
열기를 클릭합니다. 파일이 불러와졌습니다.
|
| 6 |
컨택센터 목록 보기에서 귀사의 컨택센터가 표시되는지 확인하십시오. |
컨택센터 구성하기
| 1 |
설정에서 빠른 찾기 상자에 파트너 전화 연락 센터 를 입력한 다음 파트너 전화 연락 센터를 선택합니다. | ||||||||||||||||||||||||||||||
| 2 |
이전에 가져온 고객센터를 클릭하세요. | ||||||||||||||||||||||||||||||
| 3 |
편집을 클릭합니다.
| ||||||||||||||||||||||||||||||
| 4 |
연락센터 페이지 하단에서 [ 연락센터 사용자 섹션 아래의 [ 추가 버튼을 클릭합니다. | ||||||||||||||||||||||||||||||
| 5 |
딸깍 하는 소리 + 오픈 컨택 센터에 접근할 수 있는 사용자 옆에 있습니다. |
사용자 정의
Webex Contact Center 통합용 외부 클라이언트 앱
Webex Contact Center Salesforce 커넥터용 외부 클라이언트 앱 구성
Service Cloud Voice를 최대한 활용하려면 컨택 센터 통화 흐름을 조정하여 음성 통화 기록을 생성하고 IVR 통화 중에 Salesforce 옴니채널 흐름을 실행할 수 있습니다.
인증서 생성
조직의 보안 정책에 따라 디지털 인증서를 이미 생성했는지 확인하십시오.
디지털 인증서를 생성하려면 https://developer.salesforce.com/docs/atlas.en-us.voice_pt_developer_guide.meta/voice_pt_developer_guide/voice_pt_generate_certificate.htm의 Salesforce 설명서를 참조하세요.
예제
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 통합이 제대로 작동하도록 합니다.
- 설정에서 사용자 | 권한 세트로 이동합니다.
- 새로 만들기 버튼을 클릭하세요.
- 예를 들어 레이블을 입력하세요. SCV Apex 클래스에 대한 IVR 액세스
- 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 전용 통합 프로필의 복제본)을 선택합니다.
- 저장 버튼을 클릭하세요.
- 새 사용자 레코드를 엽니다.
- 이전에 생성된 권한 세트 ("SCV Apex 클래스에 대한 IVR 액세스")를 할당합니다.
- 권한 세트 라이선스 할당 Salesforce API 통합.
Salesforce 외부 클라이언트 앱 생성
새로운 외부 클라이언트 앱을 생성하세요
Salesforce 데이터를 타사 애플리케이션과 연결하는 방법에는 두 가지 옵션이 있습니다. Connected Apps와External Client Apps는 모두 데이터를 통합하기 위한 프레임워크입니다. External Client Apps는 연결된 앱의 차세대 버전입니다.
Cisco Webex Contact Center에서 사용하는 Salesforce 외부 클라이언트 앱을 구성하려면 다음 단계를 따르십시오.
- 설정에서앱 | 외부 클라이언트 앱 | 외부 클라이언트 앱 관리자로 이동합니다.
- 새 외부 클라이언트 앱을 클릭하세요.
- 외부 클라이언트 앱 - 기본 정보
- 외부 클라이언트 앱 이름: WxCC - SCV
- API 이름: WxCC_SCV
- 연락처 이메일: < your email >
- 배포 상태: 로컬을 선택하세요

외부 클라이언트 앱—API (OAuth 설정 활성화)
- 선택하다: OAuth 활성화
- 앱 설정
- 콜백 URL: http://localhost:1717/OauthRedirect as 샘플 콜백 URL
- OAuth 범위
- OAuth 스코프를 선택하세요:
- API를 통해 사용자 데이터를 관리합니다.
- 언제든지 요청을 수행할 수 있습니다(refresh_token, offline_access)

흐름 활성화
- 선택하다: JWT 베어러 플로우 활성화
- '파일 업로드'를 클릭하고 디지털 인증서가 포함된
server.crt파일을 업로드하세요.

보안
웹 서버 흐름에 대한 비밀 키 필요 옵션의 체크를 해제하세요.

- 만들기버튼을 클릭하세요.
- 탭 정책 으로 변경한 다음편집버튼을 클릭합니다.
- 정책—OAuth 정책
- 플러그인 정책
- 허용된 사용자: 관리자가 승인한 사용자는 사전 승인됩니다.
- 변경 사항을 확인하세요
- 앱 인증
- 새로 고침 토큰 정책: 토큰을 즉시 만료하도록 선택하세요
- 지적 재산권 완화: IP 제한 적용을 선택하세요

- 플러그인 정책
- 정책—앱 정책
- 시작 페이지—없음
- 권한 세트 선택—이전에 생성한 권한 세트("SCV Apex 클래스에 대한 IVR 액세스")를 할당합니다.

- 저장을 클릭합니다.
- 탭 설정으로 변경하세요.
-
OAuth 설정 섹션에서소비자 키 및 비밀버튼을 클릭하고 이메일을 기다린 후 신원을 확인하세요. 새 브라우저 탭에서 소비자 세부 정보가 표시되는 화면이 열립니다.

- 복사 를 클릭하고소비자 키를 저장하세요. 소비자 키는 나중에 Webex Contact Center Control Hub에서 Salesforce 커넥터를 생성하는 데 사용됩니다.

-
Webex Contact Center 구성 및 음성 통화 기록 생성 스크립트
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를 사용하려면 IVR 통합을 위한 Salesforce 외부 클라이언트 앱 을 구성해야 합니다.
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 카드에서 '설정' 또는 '커넥터 추가'를 클릭합니다.
중요: 주기적으로 비밀번호를 변경하여 보안을 유지하세요. 연동 보안을 유지하려면 개인 키와 인증서를 정기적으로 교체해야 합니다. Webex Hub의 Contact Center Connector에서 개인 키를 업데이트하고 Salesforce의 External Client App에서 인증서를 업데이트합니다. 문제 해결 팁 '완료'를 클릭한 후에도 커넥터가 저장되지 않는 경우:
|
Webex 고객센터 주요 절차
| 유량 변수 | 설명 |
|---|---|
| 음성 통화 기록 ID에 대한 흐름 변수 | 통화를 식별하는 고유 ID입니다. 음성 통화 기록을 생성하는 데 필요합니다. 형식: wxcc_<Interaction Id> 예: wxcc_fc4ec7d8-4c91-49aa-b764-081fbba344a8
|
| 통화 시작 시간을 저장하는 로컬 변수 |
음성 통화 기록을 생성하거나 음성 통화를 업데이트할 때 사용됩니다.
|
| 큐에 대한 로컬 변수 name/id |
Omni Flow 실행에서 반환됨, 통화 라우팅에 사용됩니다. 이 변수는 Omni Flow 실행 기능을 사용할 때만 필요합니다.
|
| 에이전트용 로컬 변수 name/id |
Omni Flow 실행에서 반환됨, 통화 라우팅에 사용됩니다. 이 변수는 Omni Flow 실행 기능을 사용할 때만 필요합니다.
|
주요 흐름 개요

- 벤더 콜 키 생성
- 통화 시작 시간 설정
- HTTP 요청: 음성 통화 녹음 생성
- 음성 통화 기록 생성에 대한 HTTP 응답 평가
- 음성 통화 기록 생성 시 오류 처리
- HTTP 요청: 옴니플로우 실행
- Omni Flow 실행을 위한 HTTP 응답 평가
- Omni Flow 실행 시 오류 처리
- 통화 라우팅을 계속 진행하세요
| 흐름 | 설명 |
|---|---|
| 벤더 콜 키 생성 |
Service Cloud Voice에서 처리되는 모든 통화는 Salesforce에 음성 통화 기록을 생성하며, 공급업체 통화 키(Vendor Call Key)라는 고유 ID가 필요합니다. Webex Contact Center에서 생성된 음성 통화 기록의 경우, 공급업체 통화 키는 WxCC 플로우에서 정의한 다음 플로우 변수를 사용하여 통화와 함께 상담원에게 전달해야 합니다. vendorCallKey 값은 다음 규칙을 준수해야 합니다.
|
| 통화 시작 시간 설정 |
통화 시작 시간의 UTC 타임스탬프입니다. 이 타임스탬프는 음성 통화 기록을 생성하고, 발신자가 상담원에게 연결되기 전에 전화를 끊을 경우 음성 통화 기록을 업데이트하는 데 사용됩니다.
|
| HTTP 요청: 음성 통화 녹음 생성 |
이 단계는 모든 통화에 필수적입니다. 음성 통화 기록이 생성된 후에는 음성 통화 기록 ID와 공급업체 통화 키를 변수에 담아 상담원에게 전달해야 합니다. Service Cloud Voice의 Contact Center 구성에서 사용 변수를 구성하십시오. |
| HTTP 요청 설정 |
|
HTTP 요청: 음성 통화 녹음 생성
이 단계는 모든 통화에 필수적입니다. 음성 통화 기록이 생성된 후에는 음성 통화 기록 ID와 공급업체 통화 키를 변수에 담아 상담원에게 전달해야 합니다. Service Cloud Voice의 Contact Center 구성에서 사용 변수를 구성하십시오.
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\": \"\"}"
}
매개변수
| 속성 이름 | 값 |
|---|---|
| 콜센터개발자 이름 | 컨택센터 개발자 이름 |
| certDevName | API 인증서 이름(컨택 센터에 설정된 대로) |
| 벤더콜키 | 고유 통화 ID: {{SCV_VendorCallKey}} |
| 종료 시간 | CalledNumber/DNIS: {{NewPhoneContact.DNIS}} |
| 출처 | CallingNumber/ANI: {{NewPhoneContact.ANI}} |
| 시작 시간 | UTC 타임스탬프 {{SCV_CallStartTime}} (스크립트에서 통화 수락 직후 설정됨) |
| callAttributes |
음성 통화 기록에 추가되는 표준 및 사용자 지정 필드를 나타내며, 각 키-값 쌍은 표준 또는 사용자 지정 필드와 해당 값에 대응합니다. 예: |
파싱 설정
- 콘텐츠 유형: JSON
- 출력 변수: SCV_음성 통화 기록 ID
- 경로 표현식:
$.data.voiceCallId
상담원에게 전달될 음성 통화 기록 ID입니다.
음성 통화 기록 생성에 대한 HTTP 응답 평가
음성 통화 생성 HTTP 요청의 HTTP 상태를 확인하십시오.
- 레이블: 상태코드음성통화생성
- 변수: CreateVoiceCall.httpStatusCode
상태 코드인 경우 == 200 => 성공적이거나 그렇지 않은 경우 => 요청이 실패했습니다. 오류 처리 중
음성 통화 기록 생성 시 오류 처리
데모용 / 디버그 전용으로, HTTP 상태 코드에 따라 메시지를 재생합니다.
음성 통화 생성이 성공하면 옴니 플로우 실행을 진행하십시오. 그렇지 않으면 통화 라우팅을 계속 진행하십시오.
HTTP 요청: 옴니플로우 실행 (선택 사항)
다음과 같은 경우에 Omni-Flow 실행 기능을 사용하십시오.
- 예를 들어 레코드를 검색하거나 생성하는 등의 자동화된 작업을 실행하고, 해당 레코드를 음성 통화 레코드와 연결합니다.
- 기록을 검색하고 화면 팝업을 실행합니다.
- Salesforce와 Cisco 큐 동기화
- Service Cloud Voice가 라우팅 결정을 내리도록 하세요.
이 요청은 항상 통화를 연결해야 하는 "대기열" 또는 "상담원"을 반환합니다.
이 요청을 실행한 후, 발신자가 상담원과 통화하기 전에 전화를 끊으면 반드시 통화 경로 해제 메시지를 보내십시오. Webex Contact Center 이벤트 흐름을 참조하십시오.
HTTP 요청 설정
- 활동 레이블: ExecuteOmniFlow
- 인증된 엔드포인트 사용: 활성화됨
- 커넥터: 이전 단계에서 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"
}
}
매개변수
| 속성 이름 | 값 |
|---|---|
| 콜센터개발자 이름 | 컨택센터 개발자 이름 |
| certDevName | API 인증서 이름(컨택 센터에 설정된 대로) |
| 음성 통화 ID | 이전 단계에서 생성된 음성 통화 기록의 ID: {{SCV_VoiceCallRecordId}} |
| 다이얼 번호 | CalledNumber/DNIS: {{NewPhoneContact.DNIS}} |
| flowDevName | 실행할 Omni-Flow의 개발자 이름 |
| fallbackQueue | 대체 Salesforce 큐의 큐 ID 또는 큐 API 이름 |
| 흐름 입력 매개변수 |
옴니채널 흐름에 대한 추가 입력(키-값 쌍). 예: |
파싱 설정
대기열
- 콘텐츠 유형: JSON
- 출력 변수: SCV_OmniFlowQueue
- 경로 표현식:
$.data.queue
Execute Omni-Flow에서 반환된 "Queue"는 라우팅에 사용할 수 있습니다.
에이전트- 콘텐츠 유형: JSON
- 출력 변수: SCV_옴니플로우에이전트
- 경로 표현식:
$.data.agent
Execute Omni-Flow에서 반환된 "Agent"는 라우팅에 사용할 수 있습니다.
Omni Flow 실행을 위한 HTTP 응답 평가
Omni Flow 실행 HTTP 요청의 HTTP 상태를 확인하십시오.
- 레이블: statusCodeExecuteOmniFlow
- 변수: ExecuteOmniFlow.httpStatusCode
상태 코드인 경우 == 200 => 성공적이거나 그렇지 않은 경우 => 요청이 실패했습니다. 오류 처리 중입니다.
Omni Flow 실행 시 오류 처리
데모용 / 디버그 전용으로, HTTP 상태 코드에 따라 메시지를 재생합니다.
Execute Omni Flow가 성공적으로 실행되면 변수 SCV_OmniFlowQueue 및 SCV_OmniFlowAgent는 설정되지 않습니다. 통화 흐름에서의 라우팅 결정.
통화 라우팅을 계속 진행하세요
통화 흐름을 유지하고 상담원에게 통화를 연결합니다. 선택 사항이며, SCV_OmniFlowQueue 및 SCV_OmniFlowAgent를 사용하여 큐와 에이전트를 선택할 수 있습니다.
Webex 컨택센터 이벤트 흐름
발신자가 상담원이 전화를 받기 전에 통화를 끊으면 Service Cloud Voice를 업데이트하고 통화를 종료해야 합니다.
- Execute Omni-Flow를 사용한 경우, 대기 중인 서비스 라우팅(PSR)을 삭제하려면 Clear Routing을 전송하십시오.
- 음성 통화 기록의 시작 및 종료 시간을 업데이트하고 상태를 '새로 생성됨'에서 '완료됨'으로 변경하려면 '음성 통화 업데이트'를 보내십시오.

- PhoneContactEnded - 이 이벤트는 실시간 통화가 종료되고 모든 참가자가 제거될 때 발생합니다.
- HTTP 요청: 클리어 라우팅
- HTTP 요청: 음성 통화 업데이트
HTTP 요청: 클리어 라우팅
- 레이블: 클리어 라우팅
- 인증된 엔드포인트 사용: 활성화됨
- 커넥터: 이전 단계에서 Salesforce 커넥터가 생성되었습니다.
- 요청 경로:
/services/apexrest/cisco_wxcc_scv/voice/v1/clearRouting - 방법: POST
요청 콘텐츠 유형: Application/JSON
요청 본문
{
"callCenterDevName": "",
"certDevName": "",
"voiceCallId": "{{SCV_VoiceCallRecordId}}"
}
매개변수
| 속성 이름 | 값 |
|---|---|
| 콜센터개발자 이름 | 컨택센터 개발자 이름 |
| certDevName | 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 }
}
매개변수
| 속성 이름 | 값 |
|---|---|
| 콜센터개발자 이름 | 컨택센터 개발자 이름 |
| certDevName | API 인증서 이름(컨택 센터에 설정된 대로) |
| 음성 통화 ID | 이전 단계에서 생성된 음성 통화 기록의 ID: SCV_음성 통화 기록 ID |
| 시작 시간 | 통화 시작의 UTC 타임스탬프 {{SCV_CallStartTime}} (음성 통화 기록 생성에 사용됨) |
| endTime | 현재 UTC 타임스탬프 `{{now() |
| 연결 해제 이유 | 통화 종료 사유. 속성 isError 이 제대로 표시되려면 true 으로 설정되어야 합니다. |
파싱 설정
비용은 청구되지 않습니다.
참조
언어 번역
(선택 사항) 번역 워크벤치 활성화
이 설정은 번역 언어 설정을 사용하는 경우에만 적용됩니다.
| 1 |
설정 → 번역 워크벤치 → 번역 언어 설정으로 이동하세요. |
| 2 |
활성화] 를 클릭하여 번역 언어를 선택하세요. |
(선택 사항) 플랫폼 전용 언어 활성화
이 설정은 EN-US 이외의 언어에만 적용됩니다.
| 1 |
설정 → 회사 설정 → 언어 설정으로 이동하세요. |
| 2 |
필요한 언어를 선택하세요. |
| 3 |
다음 확인란을 선택하십시오.
|
| 4 |
변경 사항을 저장합니다. |
언어를 활성화하고 사용자(작업)를 선택하세요.
| 1 |
설정 → 번역 워크벤치 → 번역 언어 설정으로 이동하세요. |
| 2 |
언어를 선택하고 번역할 사용자를 선택하세요. |
| 3 |
변경 사항을 저장합니다. |
다국어 설정
사용자 지정 라벨 번역
| 1 |
설정 → 사용자 지정 레이블로 이동하세요. |
| 2 |
열 사용자 지정 레이블의 이름을 선택하세요.
|
| 3 |
관련 번역 목록에서 |
| 4 |
번역할 언어를 선택하세요. |
| 5 |
번역된 값을 번역 텍스트 필드에 입력하세요. 사용자의 기본 언어가 번역 언어인 경우, 이 텍스트는 레이블의 값 필드에 지정된 값을 재정의합니다. |
| 6 |
변경 사항을 저장합니다. |
Salesforce에서 사용자 기능에 필요한 권한
Webex Contact Center SCV 에이전트 권한 세트에는 Webex Contact Center 가젯 및 에이전트용으로 개발된 통합 기능을 사용하는 데 필요한 모든 권한이 포함되어 있습니다.
Apex 클래스 액세스(섹션)
- cisco_wxcc_scv.CiscoScvWxcc
- cisco_wxcc_scv.서비스응답핸들러
- cisco_wxcc_scv.서비스라우팅
- cisco_wxcc_scv.TelephonyIntegrationHandler
사용자 정의 메타데이터 유형 액세스(섹션)
- cisco_wxcc_scv.WxCC 연결
Visualforce 페이지 액세스(섹션)
- cisco_wxcc_scv.CiscoScvLoginWxCC
- cisco_wxcc_scv.CiscoScvMainWxCC
- cisco_wxcc_scv.CiscoScvOAuthRedirect
- cisco_wxcc_scv.CiscoScvSwLoader
서비스 클라우드 음성 API 래퍼
전제 조건
Service Cloud Voice API Wrapper를 사용하려면 IVR 통합을 위한 Salesforce 외부 클라이언트 앱 을 구성해야 합니다.
Service Cloud Voice API 래퍼를 사용하세요
Salesforce용 Service Cloud Voice(SCV)는 전화 통합 REST API를 사용하여 음성 통화를 생성 및 업데이트하고, 옴니채널 흐름을 실행하고, 음성 통화와 관련된 보류 중인 서비스 라우팅 레코드를 삭제합니다. 이 서비스는 JWT 인증과 PATCH HTTP 메서드 사용을 필요로 하는데, 현재 Cisco IP 대화형 음성 응답(IVR)에서는 이를 지원하지 않습니다.
(IVR 시스템뿐만 아니라) SCV용 전화 통합 REST API 사용을 간소화하기 위해 기존 Salesforce API를 래핑하는 새로운 API 세트가 제공되었으며, Webex Contact Center for Service Cloud Voice 패키지가 설치된 Salesforce 조직에서 직접 액세스할 수 있습니다.
Service Cloud Voice API Wrapper 는 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 )을 사용하면 INVALID_SESSION_ID errorCode와 함께 401 Unauthorized 상태가 반환됩니다.
음성 통화 생성(섹션)
VoiceCall 레코드에 참여자(즉, 발신자와 수신자) 정보를 포함하는 VoiceCall 레코드를 생성합니다. VoiceCall 레코드를 생성하면 Salesforce에 대화가 생성됩니다. 이 API는 실시간 환경에서만 사용해야 합니다. 즉, 호출이 시작될 때만 이 API를 호출해야 합니다. 이 API는 요청 페이로드에 parentVoiceCallId 매개변수를 포함시켜 통화 전환 및 회의 통화에 대한 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"
}
응답(성공)
{
"data": {
"voiceCallId": "00X000012345abc"
},
"errors": null,
"success": true
}
응답 (오류 포함)
{
"data": null,
"errors": ["Error message 1", "Error message 2"],
"success": false
} 음성 통화 업데이트
통화가 종료된 후 VoiceCall을 업데이트합니다. 이 API를 사용하여 VoiceCall 생성 단계에서 사용할 수 없는 통화 관련 매개변수를 업데이트할 수 있습니다. 음성 통화 업데이트 API는 비동기 작업입니다. API 호출 상태를 조회할 수 없습니다.
이 엔드포인트를 사용하면 통화가 종료된 후에도 VoiceCall을 생성할 수 있습니다. 이 동작은 통화가 중단되거나 부재중인 경우 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는 통화 라우팅에 다음과 같은 우선순위를 사용합니다.
- 발신 번호와 일치하는 전화 채널에 대해 옴니채널 흐름 및 대체 대기열 설정을 사용합니다. 흐름이 우선입니다. 해당 흐름이 실패하면 대체 큐가 사용됩니다.
- 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 음성 발신자 ID 또는 전화 통신 공급업체의 연락처 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 레코드가 자동으로 삭제됩니다. 하지만, 파트너 전화 시스템을 사용할 때 부재중 전화나 통화 포기와 같은 경우에는 PSR 기록을 지우기 위해 이 API를 명시적으로 호출해야 하는 경우가 있습니다.
엔드포인트 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 음성 발신자 ID 또는 전화 통신 공급업체의 연락처 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"}
'이름' 필드는 엄밀히 말하면 사용되지 않습니다. 이는 해당 규칙의 목적을 빠르게 파악할 수 있도록 사람이 읽기 쉬운 문자열을 추가하기 위한 것입니다. 좋은 이름의 예로는 다음과 같은 것들이 있습니다. 선행 0을 모두 제거합니다, 선행 플러스를 추가합니다 등
번역 규칙 생성
규칙은 정규 표현식으로 제공됩니다. 더 정확히 말하자면: 정규 표현식의 자바스크립트 구현입니다.
MDN 웹 문서에서 정규 표현식 문서를 읽어보는 것이 좋은 시작 방법입니다.
하지만 복잡한 정규 표현식을 만드는 것은 종종 번거롭습니다. 따라서 설정을 최대한 쉽게 하기 위해 추가 구문을 추가했습니다.
아래 그림은 전화번호 변환 규칙의 일반적인 구문을 보여줍니다.
술부
이 술어는 일치시킬 숫자의 길이를 정의하는 간격을 지정하는 데 사용됩니다.
위의 조건은 길이가 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.)
- 이 숫자는 정확히 12자리이므로 "미국 숫자에는 공백을 추가"하는 규칙이 적용됩니다.
- (\+1) 숫자는 반드시 ~로 시작해야 한다고 말합니다. +1. 숫자가 12자리이지만 쉼표(,)로 시작하지 않으면 +1, 규칙이 취소되었고 아무것도 변경되지 않았습니다.
- (\d{3})는 다음과 같이 말합니다. +1 반드시 3자리 숫자가 뒤따라야 합니다.
- (\d{3})는 마지막 3자리 숫자 뒤에 또 다른 3자리 숫자가 와야 함을 의미합니다.
- (\d{4})는 마지막 3자리 숫자 뒤에 4자리 숫자가 와야 한다고 말합니다.
이 중 어느 하나라도 일치하지 않으면 숫자는 변경되지 않습니다.
그러므로 모든 규칙은 에도 적용됩니다. “+14693150217”. 따라서 숫자는 다음과 같이 변경됩니다. “$1 $2 $3 $4”:
- $1 그룹을 가리킨다 (\+1), Service Cloud Voice로 보낼 번호는 다음과 같습니다. +1.
- $2 둘 중 첫 번째를 가리킵니다. (\d{3}), Service Cloud Voice로 보낼 번호는 다음과 같습니다. +1 469.
- $3 둘 중 두 번째를 가리킨다 (\d{3}), Service Cloud Voice로 보낼 번호는 다음과 같습니다. +1 469 315.
- $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.)
- 이 숫자는 정확히 13자이므로 "독일 숫자에는 공백을 추가"하는 규칙이 적용됩니다.
- (\+49) 숫자는 반드시 ~로 시작해야 한다고 말합니다. +49. 숫자가 13자리이지만 쉼표(,)로 시작하지 않으면 +49, 규칙이 취소되었고 아무것도 변경되지 않았습니다.
- (\d{3})는 다음과 같이 말합니다. +49 반드시 3자리 숫자가 뒤따라야 합니다.
- (\d{4})는 마지막 3자리 숫자 뒤에 4자리 숫자가 와야 한다고 말합니다.
- (\d{3})는 마지막 4자리 숫자 뒤에 3자리 숫자가 와야 함을 의미합니다.
이 중 어느 하나라도 일치하지 않으면 숫자는 변경되지 않습니다.
그러므로 모든 규칙은 에도 적용됩니다. “+491515555531”. 따라서 숫자는 다음과 같이 변경됩니다. “$1 $2 $3 $4”:
- $1 그룹을 가리킨다 (\+49), Service Cloud Voice로 보낼 번호는 다음과 같습니다. +49.
- $2 둘 중 첫 번째를 가리킵니다. (\d{3}), Service Cloud Voice로 보낼 번호는 다음과 같습니다. +49 151.
- $3 둘 중 두 번째를 가리킨다 (\d{4}), Service Cloud Voice로 보낼 번호는 다음과 같습니다. +49 151 5555.
- $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 |
| 설명 | 번역 정규 표현식 |
|---|---|
| 제거하다 + 그리고 0으로 바꾸세요 US E164 | [10,12]->(.{1})(\d{1})(\d{10})-> 001 $3 |
| 제거하다 +1 그리고 0으로 바꾸세요 US E164 | [10,12]->(^\+1+)(\d+)-> 001$2 |
| 제거하다 + 그리고 DE E164를 0으로 바꾸세요. | [12,15]->(.{1})(\d{2})(\d{10})-> 0049 $3 |
| 제거하다 +49 그리고 DE E164를 0으로 바꾸세요. | [10,12]->(^\+49+)(\d+)-> 0049$2 |
| 제거하다 + 그리고 그것을 0으로 바꾸세요 CH E164 | [10,13]->(.{1})(\d{2})(\d{9})-> 0041 $3 |
| 제거하다 +41 그리고 그것을 0으로 바꾸세요 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 녹음 페이지를 구성하세요
VoiceCall 녹음 페이지는 기본적으로 3단 레이아웃과 다음과 같은 구성 요소로 사전 설정되어 있습니다.
- 행위 & 추천 사항
- 통화 메모
- 통화 세부 사항
- 녹화
비즈니스 요구사항에 따라 페이지에서 구성 요소를 자유롭게 제거하거나 추가할 수 있습니다. 다양한 페이지 레이아웃을 사용할 수도 있지만, 통화 녹음 플레이어 및 대화 본문과 같은 일부 구성 요소는 템플릿의 중간 크기 또는 큰 영역에만 맞출 수 있습니다.
마무리 이유 구성요소를 표시합니다.
통화 종료 사유 구성 요소는 통화 중과 통화 종료 시에 표시되어야 합니다.
VoiceCall 기록 페이지에 Cisco 통화 종료 사유 구성 요소를 추가합니다.
- Lightning 구성 요소 목록의 사용자 지정 영역에서 Cisco Wrap-Up Reason Lightning 웹 구성 요소를 VoiceCall Record 페이지로 드래그합니다.
- 저장을 클릭합니다.
- 활성화를 클릭합니다.
- 조직 기본값으로 지정을 클릭합니다.
- 저장을 클릭합니다.
- 저장 을 다시 클릭한 다음 뒤로 화살표 를 클릭하여 이전 페이지로 돌아갑니다.
Cisco Wrap-Up Reason 구성 요소는 통화 중 및 WrapUp 중에 자동으로 표시됩니다.
페이지에 추가되면 Cisco 통화 종료 사유 구성 요소가 Cisco Contact Center에 통화 종료 사유가 구성되어 있지 않은 경우에도 모든 통화에 표시됩니다.
통화 녹음 플레이어를 표시합니다.
해당 음성 통화에 대한 녹음 링크가 저장된 경우 통화 녹음 플레이어가 표시됩니다.
VoiceCall Record 페이지에 통화 녹음 플레이어 구성 요소를 추가하려면 다음 단계를 따르십시오.
- 통화 녹음 플레이어 Lightning 웹 구성 요소를 VoiceCall 녹음 페이지로 드래그하세요.
- 저장을 클릭하세요.
- 활성화를 클릭하세요.
- 조직 기본값으로 지정을 클릭합니다.
- 저장을 클릭하세요.
- 저장[ ]을 다시 클릭한 다음 뒤로 가기 화살표를 클릭하여 이전 페이지로 돌아갑니다.
Webex 관리
흐름 구성
화면 팝
Webex 컨택센터 워크플로에서 "화면 팝업" 노드를 사용할 수 있습니다. 이 기능은 Service Cloud Voice 내부 또는 별도의 창에서 화면 팝업을 트리거하는 데 사용할 수 있습니다.
이 기능에 대한 자세한 내용은 Flow Designer 문서 에서 확인할 수 있습니다.
스크린팝이 별도의 창으로 열립니다
화면 팝업을 별도의 창에서 열려면 "화면 팝업" 노드에 절대 URL을 제공해야 합니다. 쿼리 매개변수는 검색 매개변수로 URL에 추가됩니다.
다음 모드가 지원됩니다.
- 새 브라우저 탭 - 항상 새 브라우저 탭에서 열립니다.
- 기존 브라우저 탭 - 기존 브라우저 탭 화면이 처음 팝업될 때 새 브라우저 탭이 열립니다. 해당 탭은 이후에 기존 브라우저 탭 화면이 팝업될 때 전용 탭이 되며, URL은 해당 브라우저 탭 내에서 새로 고쳐집니다.
- 데스크톱 내부 - 새 브라우저 탭과 동일한 방식으로 처리됩니다.
현재 열려 있는 페이지로 인해 리디렉션이 차단될 수 있습니다. 이 경우 기존 브라우저 탭 화면이 새 브라우저 탭에서 팝업으로 열립니다.





