확장점을 사용하여 클릭 투 다이얼 사용자 지정
확장점을 사용하여 Genesys Cloud for Salesforce에서 클릭하여 다이얼 동작을 사용자 정의할 수 있습니다. 확장 지점은 Salesforce Apex 프로그래밍 언어를 사용합니다.
전제 조건
- 확장 지점 설정 섹션이 포함된 관리 패키지 버전입니다. 자세한 내용은 확장 지점 구성.
Salesforce에서 다음을 구현하는 Apex 클래스가 있는 단일 Apex 파일을 만듭니다. purecloud.CTIExtension.ClickToDial 상호 작용. 통합에서 코드를 호출할 수 있도록 Apex 클래스를 전역으로 정의합니다.
purecloud.CTIExtension.ClickToDial 인터페이스
Genesys Cloud for Salesforce에서 클릭하여 다이얼 기능을 사용자 정의하기 위해 정의할 수 있는 메서드 서명이 포함되어 있습니다.
사용
메소드 서명을 사용하십시오. purecloud.CTIExtension.ClickToDial 클릭 투 다이얼 기능의 작동 방식을 정의하는 인터페이스입니다.
onClickToDial 메소드
전화 통화 또는 SMS 메시지를 시작합니다.
Salesforce에서 클릭하여 다이얼 이벤트에 대해 클라이언트에 경고하면 클라이언트는 Apex 코드의 매개변수를 기반으로 클릭하여 다이얼 이벤트를 수행합니다. 이 메서드는 기본 클릭하여 다이얼 동작을 변경하는 데이터를 반환할 수 있습니다.
Apex 코드가 예외를 트리거하면 통합에서 기본 클릭하여 다이얼 동작을 수행합니다. 값이 반환되지 않으면 통합에서 클릭하여 다이얼 동작을 억제합니다.
입력 속성
메서드에 전달되는 JSON 데이터에는 다음 속성이 포함됩니다.
이름 | 데이터 유형 | 설명 | 설명 |
---|---|---|---|
숫자 | 문자열 | 통합에서 호출하는 전화 번호입니다. | |
개체 | 문자열 | Salesforce의 연락처 또는 계정과 같은 개체 유형입니다. | |
개체 ID | 문자열 | 활동과 자동 연결할 연락처 또는 계정과 같은 관련 개체의 ID입니다. | 개체 ID 단일 레코드에만 해당됩니다. |
개체 이름 | 문자열 | Salesforce의 레코드 이름입니다. |
출력 속성
메서드에서 반환된 JSON 데이터에서 지원되는 속성은 다음과 같습니다.
이름 | 데이터 유형 | 설명 | 설명 |
---|---|---|---|
숫자 | 문자열 | 보다 입력 속성 테이블. | |
개체 | 문자열 | 보다 입력 속성 테이블. | |
개체 ID | 문자열 | 보다 입력 속성 테이블. | |
개체 이름 | 문자열 | 보다 입력 속성 테이블. | |
속성 | 개체 | 상호 작용에 추가할 속성의 키-값 쌍입니다. | |
대기열 ID | 문자열 | 대신 전화를 걸 대기열의 ID입니다. | |
자동 배치 | 부울 | 통합에서 자동으로 전화를 걸거나(true), 통합이 이름 또는 번호 상자에 전화 번호를 채웁니다(false). | |
유형 | 문자열 | 상호작용 유형. |
유효한 값: 전화, SMS. 그렇지 않은 경우 유형 제공되며 기본값은 호출입니다. |
발신자 이름 | 문자열 | 전화를 받는 사람에게 표시되는 이름입니다. | |
발신자 ID | 문자열 | 전화를 받는 사람에게 표시되는 전화 번호입니다. | |
연결 | 배열 | 클라이언트의 이름 또는 관련 대상 상자에 추가할 Salesforce 레코드 목록입니다. |
자세한 내용은 클릭 투 다이얼, 클릭 투 다이얼 구성, 그리고 사용자 지정 Visualforce 페이지에서 클릭 투 다이얼 만들기.
예
- 통합에서 코드를 호출할 수 있도록 Apex 클래스를 전역으로 정의합니다.
- 둘 이상의 확장점(또는 인터페이스)을 구현하는 경우 모두 동일한 Apex 파일에 배치합니다.
global class MyCTIExtensions implements purecloud.CTIExtension.ClickToDial {
public String onClickToDial(String data) {
// Example: Specify On Behalf of Queue, Caller ID and Name for click-to-dial.
Map<String, Object> clickToDialData = (Map<String, Object>) JSON.deserializeUntyped(data);
clickToDialData.put('queueId', '04a183b6-de9e-4c01-9e88-eab81799ad0d');
clickToDialData.put('callerIdName', 'John Smith');
clickToDialData.put('callerId', '+13175550123');
return JSON.serialize(clickToDialData);
}
}
자세한 내용은 Salesforce용 Genesys Cloud의 확장 지점.
통합에 대한 자세한 내용은 다음을 참조하십시오. Salesforce용 Genesys Cloud 정보.