알림OnTaskClient - 클라이언트
NotifyOnTaskClient API는 및 Webex와 같은 Zoom 다양한 전화 통신 서비스 공급자에 대해 SMS 메시지를 보내거나 전화 회의를 시작/관리하기 위한 메서드를 제공합니다.
모든 UI는 NotifyOnTaskClient UI 스크립트를 명시적으로 포함하여 NotifyOnTaskClient API를 사용할 수 있습니다.
NotifyOnTaskClient API를 사용하여 다음을 수행할 수 있습니다.
- 전화 회의 시작
- 전화 회의 종료
- 참가자 추가
- 다음과 같이 전화 통신 드라이버를 통해 사용할 수 있는 작업을 수행합니다.
- 참가자 음소거/음소거 해제
- 전화 회의에서 참가자 제거
- 전화 회의에 참가자 추가
- 전화 회의 시작
- 전화 회의 종료
알림(com.snc.notify) 플러그인을 사용하려면 별도의 구독이 필요합니다. 알림 플러그인 활성화에 대한 자세한 내용은 알림 활성화를 참조하십시오.
알림OnTaskClient - addParticipants(객체 데이터)
지정된 전화 회의에 지정된 참가자를 추가합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 데이터 | 객체 | 전화 회의를 설명하는 객체입니다. |
| data.addToWorkNotes | 부울 | 관련 기록의 작업 메모 필드에 전화 회의에 포함된 참가자에 대한 정보를 추가할지 여부를 나타내는 플래그입니다. 이 기능이 작동하려면 and data.sysId 매개 변수의 값 data.table 도 지정해야 합니다. 이러한 매개변수는 작업 메모를 추가할 기록을 식별합니다. 기본값: false |
| 데이터.confId | 문자열 | 전화 회의의 Sys_id입니다. 테이블: 알림 전화 회의[notify_conference_call] |
| 데이터.항목 | 배열 | 각 참가자가 전화 회의에 포함할 정보입니다. |
| data.items.email | 문자열 | 참가자의 이메일 주소입니다. |
| data.items.id | 문자열 | 사용자 sys_id 테이블: 사용자 [sys_User] |
| data.items.notifyParticipantId | 문자열 | 참가자 sys_id. 테이블: 참가자에게 알림 [notify_participant] |
| data.items.phoneNumber | 문자열 | 참가자의 전화 번호입니다. 이 값이 OR notifyParticipantId 매개변수와 id 함께 전달되면 이 값은 사용자/참가자 기록의 전화 번호를 대체하며 전화를 거는 데 사용됩니다. |
| data.message | 문자열 | 사용자가 호출에 응답할 때 소리내어 읽어주는 메시지입니다(예: "P1 인시던트가 생성되었습니다. 인스턴스에 로그인하십시오."). |
| data.serviceProvider | 문자열 | 필수. Zoom 또는 Webex와 같은 회의 서비스 제공자의 이름입니다. |
| 데이터.sysId | 문자열 | 전화 회의와 연결할 소스 기록의 Sys_id입니다. 예를 들어 특정 인시던트나 문제를 논의하기 위해 전화 회의가 열리는 경우 인시던트 또는 문제 기록의 sys_id 이 값에 입력합니다. 이 sys_id NotifyConference Call [notify_conference_call] 테이블의 소스 열에 저장되며 나중에 추적할 수 있습니다. 이 매개 변수는 , data.addToWorkNotes및 allowMulticonference 매개 변수와 data.Table함께 사용됩니다. 컨퍼런스 회의가 처음 "시작" 작업을 통해 생성될 때 이 값을 구성해야 합니다. 필요한 경우 이 방법을 통해 이 값을 설정할 수도 있습니다. |
| 데이터.테이블 | 문자열 | 전화 회의와 연결할 소스 기록이 들어 있는 테이블입니다. 소스 기록은 전화 회의에서 논의되는 "인시던트" 또는 "문제"와 같은 기록일 수 있습니다. 이 테이블 이름은 알림 전화 회의 [notify_conference_call] 테이블의 테이블 열에 저장되며 추적할 수 있습니다. 이 매개 변수는 , data.addToWorkNotes및 allowMulticonference 매개 변수와 data.sysId함께 사용됩니다. 컨퍼런스 회의가 처음 "시작" 작업을 통해 생성될 때 이 값을 구성해야 합니다. 필요한 경우 이 방법을 통해 이 값을 설정할 수도 있습니다. |
| 유형 | 설명 |
|---|---|
| 객체 | 회의 작업의 결과입니다.
|
다음 코드 예제에서는 이 메서드를 호출하는 방법을 보여 줍니다.
function addToConferenceCall() {
var data = NotifyOnTaskClient.getNotifyActionTemplate();
data.serviceProvider = 'Telephony'; // e.g 'Zoom', 'WebEx'
data.confId = 'Active conference sysId';
data.items.push({ id: 'userSysId' });
data.items.push({ phoneNumber: '+917799555331' });
data.items.push({ email: 'yln99518@gmail.com' });
NotifyOnTaskClient.addParticipants(data).then(function (result) {
var joinActionResult = result[0];
if(joinActionResult.status) {
joinActionResult.successMessages.forEach(function(msg) {
console.log(msg);
});
return;
}
joinActionResult.warnMessages.forEach(function(msg) {
console.warn(msg);
});
joinActionResult.errorMessages.forEach(function(msg) {
console.error(msg);
});
}, function (errMsg) {
console.log(errMsg);
});
}
알림OnTaskClient - doConferenceAction(문자열 작업, 객체 데이터)
전화 회의 시작/종료, 전화 회의에서 참가자 참가, 제거, 음소거 또는 음소거 해제 등 지정된 전화 회의 작업을 수행합니다.
- 전화 회의 기록에 전화 회의의 논의 주제인 인시던트 또는 문제 등의 특정 기록(소스 기록)에 대한 포인터를 저장합니다.
- 소스 기록에 대해 여러 컨퍼런스 회의를 허용/허용하지 않습니다.
- 소스 기록의 작업 메모 필드에 전화 회의에 참여했던 참가자를 자동으로 로깅합니다.
- 참가자가 회의에서 걸려오는 전화에 응답할 때 메시지를 소리 내어 읽게 합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 작업 | 문자열 | 수행할 전화 회의 작업을 정의합니다. 사용 가능한 컨퍼런스 회의 작업은 다음과 같습니다.
|
| 데이터 | 객체 | 전화 회의를 설명하는 객체입니다. |
| data.addToWorkNotes | 부울 | 관련 기록의 작업 메모 필드에 전화 회의에 포함된 참가자에 대한 정보를 추가할지 여부를 나타내는 플래그입니다. 이 기능이 작동하려면 and data.sysId 매개 변수의 값 data.table 도 지정해야 합니다. 이러한 매개변수는 작업 메모를 추가할 기록을 식별합니다. 기본값: false 이 매개변수가 유효한 작업:
|
| data.allowMulticonference | 부울 | 특정 기록에 대해 한 번에 여러 컨퍼런스 회의를 허용할지 여부를 나타내는 플래그입니다. 이 기능이 작동하려면 and data.sysId 매개 변수의 값 data.table 도 지정해야 합니다. 이러한 매개변수는 여러 컨퍼런스 회의를 가질 수 있는 기록을 식별합니다. 기본값: false 이 매개변수가 유효한 작업:
|
| 데이터.confId | 문자열 | 전화 회의의 Sys_id입니다. 테이블: 알림 전화 회의[notify_conference_call] 이 매개변수가 필요한 작업:
주:
메서드가 알림 전화 회의 참가자[notify_participant] 테이블에서 이 정보를 가져오므로 참가자 작업(예: 음소거, 음소거 해제 및 킥)의 경우 이 매개변수를 설정할 필요가 없습니다. |
| 데이터.fromNumber | 문자열 | 전화 회의를 위해 호출할 서비스 제공자 번호입니다. 알림 전화 번호 [notify_number] 테이블의 번호 또는 전화 번호 열에서 이 값을 찾습니다. 이 매개변수가 필요한 작업:
|
| data.isNewConference | 부울 | 새 컨퍼런스 회의인지 기존 컨퍼런스 회의인지 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
기본값: false 이 매개변수가 유효한 작업:
|
| data.message | 문자열 | 사용자가 호출에 응답할 때 소리내어 읽어주는 메시지입니다(예: "P1 인시던트가 생성되었습니다. 인스턴스에 로그인하십시오."). 이 매개변수가 유효한 작업:
|
| 데이터.항목 | 배열 | 각 참가자가 전화 회의에 포함할 정보입니다. 유효한 배열 값:
|
| data.serviceProvider | 문자열 | 필수. Zoom 또는 Webex와 같은 회의 서비스 제공자의 이름입니다. 이 매개변수가 필요한 작업:
|
| 데이터.sysId | 문자열 | 전화 회의와 연결할 소스 기록의 Sys_id입니다. 예를 들어 특정 인시던트나 문제를 논의하기 위해 전화 회의가 열리는 경우 인시던트 또는 문제 기록의 sys_id 이 값에 입력합니다. 이 sys_id NotifyConference Call [notify_conference_call] 테이블의 소스 열에 저장되며 나중에 추적할 수 있습니다. 이 매개 변수는 , data.addToWorkNotes및 allowMulticonference 매개 변수와 data.Table함께 사용됩니다. 이 매개변수가 유효한 작업:
|
| 데이터.테이블 | 문자열 | 전화 회의와 연결할 소스 기록이 들어 있는 테이블입니다. 소스 기록은 전화 회의에서 논의되는 "인시던트" 또는 "문제"와 같은 기록일 수 있습니다. 이 테이블 이름은 알림 전화 회의 [notify_conference_call] 테이블의 테이블 열에 저장되며 추적할 수 있습니다. 이 매개 변수는 , data.addToWorkNotes및 allowMulticonference 매개 변수와 data.sysId함께 사용됩니다. 이 매개변수가 유효한 작업:
|
| 유형 | 설명 |
|---|---|
| 객체 | 회의 작업의 결과입니다.
|
다음 예제에서는 doConferenceAction()을 호출하여 작업과 참가자를 전달하여 전화 회의 참가자를 조작하는 함수를 만드는 방법을 보여줍니다.
/**
*
* @param {string} action - action to perform on the conference object or participant object
* @param {Array} participants;
*/
function doConferenceAction(action, participants) {
var data = NotifyOnTaskClient.getNotifyActionTemplate();
data.serviceProvider = 'Telephony'; // e.g 'Zoom', 'WebEx'
data.confId = 'Active conference sysId';
data.items = participants;
NotifyOnTaskClient.doConferenceAction(action, data).then(function (result) {
var kickActionResult = result[0];
if (kickActionResult.status)
console.log(action + ' succeeded');
else {
kickActionResult.warnMessages.forEach(function (msg) {
console.warn(msg);
});
kickActionResult.errorMessages.forEach(function (msg) {
console.error(msg);
});
}
}, function (errMsg) {
console.log(errMsg)
});
}
// kick participants
doConferenceAction('kick', [{notifyParticipantId: 'notifyParticipantSysId'}]);
// kick multiple participants
doConferenceAction('multiKick',
[{notifyParticipantId: 'notifyParticipantSysId'},
{notifyParticipantId: 'notifyParticipantSysId'}]);
// Mute participants
doConferenceAction('mute', [{notifyParticipantId: 'notifyParticipantSysId'}]);
doConferenceAction('mute', [{notifyParticipantId: 'notifyParticipantSysId'}]);
doConferenceAction('multiMute',
[{notifyParticipantId: 'notifyParticipantSysId'},
{notifyParticipantId: 'notifyParticipantSysId'}]);
// self join to any confernece.
doConferenceAction('selfJoin', [{id: 'logged in userId'}]);
알림OnTaskClient - endConference(객체 데이터)
지정된 전화 회의를 종료합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 데이터 | 객체 | 전화 회의를 설명하는 객체입니다. |
| 데이터.confId | 문자열 | 전화 회의의 Sys_id입니다. |
| data.serviceProvider | 문자열 | 필수. Zoom 또는 Webex와 같은 회의 서비스 제공자의 이름입니다. |
| 유형 | 설명 |
|---|---|
| 객체 | 회의 작업의 결과입니다.
|
function endConferenceCall() {
var data = NotifyOnTaskClient.getNotifyActionTemplate();
data.serviceProvider = 'Telephony'; // e.g 'Zoom', 'WebEx'
data.confId = 'Active conference sysId';
NotifyOnTaskClient.endConference(data).then(function (result) {
var endActionResult = result[0];
if (endActionResult.status)
console.log('Conference has been ended');
else {
endActionResult.warnMessages.forEach(function (msg) {
console.warn(msg);
});
endActionResult.errorMessages.forEach(function (msg) {
console.error(msg);
});
}
}, function (errMsg) {
console.log(errMsg);
});
}
알림OnTaskClient - getNotifyActionTemplate()
doConferenceAction() 메서드와 함께 사용할 JSON 데이터 템플릿을 반환합니다. 이 템플릿을 사용하면 데이터 객체가 자동으로 구조화되므로 수동으로 만들 필요가 없습니다.
doConferenceAction() 메서드를 호출하기 전에 이 메서드를 호출합니다. 원하는 전화 회의 작업을 위해 템플릿 내에서 원하는 매개변수를 설정한 다음 doConferenceAction() 호출에서 템플릿을 전달합니다. 각 작업의 유효한 매개변수에 대한 자세한 내용은 doConferenceAction()을 참조하십시오.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 데이터 | 전화 회의를 설명하는 객체입니다. |
| data.addToWorkNotes | 관련 기록의 작업 메모 필드에 전화 회의에 포함된 참가자에 대한 정보를 추가할지 여부를 나타내는 플래그입니다. 이 기능이 작동하려면 and data.sysId 매개 변수의 값 data.table 도 지정해야 합니다. 이러한 매개변수는 작업 메모를 추가할 기록을 식별합니다. 기본값: false 이 매개변수가 유효한 작업:
|
| data.allowMultconference | 특정 기록에 대해 한 번에 여러 컨퍼런스 회의를 허용할지 여부를 나타내는 플래그입니다. 이 기능이 작동하려면 and data.sysId 매개 변수의 값 data.table 도 지정해야 합니다. 이러한 매개변수는 여러 컨퍼런스 회의를 가질 수 있는 기록을 식별합니다. 기본값: false 이 매개변수가 유효한 작업:
|
| 데이터.confId | 전화 회의의 Sys_id입니다. 테이블: 알림 전화 회의[notify_conference_call] 이 매개변수가 필요한 작업:
주:
메서드가 알림 전화 회의 참가자[notify_participant] 테이블에서 이 정보를 가져오므로 참가자 작업(예: 음소거, 음소거 해제 및 킥)의 경우 이 매개변수를 설정할 필요가 없습니다. |
| 데이터.fromNumber | 전화 회의를 위해 호출할 서비스 제공자 번호입니다. 알림 전화 번호 [notify_number] 테이블의 번호 또는 전화 번호 열에서 이 값을 찾습니다. 이 매개변수가 필요한 작업:
|
| data.isNewConference | 새 컨퍼런스 회의인지 기존 컨퍼런스 회의인지 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
기본값: false 이 매개변수가 유효한 작업:
|
| 데이터.항목 | 각 참가자가 전화 회의에 포함할 정보입니다. 유효한 배열 값:
|
| data.message | 사용자가 호출에 응답할 때 소리내어 읽어주는 메시지입니다(예: "P1 인시던트가 생성되었습니다. 인스턴스에 로그인하십시오."). 이 매개변수가 유효한 작업:
|
| data.serviceProvider | 필수. Zoom 또는 Webex와 같은 회의 서비스 제공자의 이름입니다. 이 매개변수가 필요한 작업:
|
| 데이터.sysId | 전화 회의와 연결할 소스 기록의 Sys_id입니다. 예를 들어 특정 인시던트나 문제를 논의하기 위해 전화 회의가 열리는 경우 인시던트 또는 문제 기록의 sys_id 이 값에 입력합니다. 이 sys_id NotifyConference Call [notify_conference_call] 테이블의 소스 열에 저장되며 나중에 추적할 수 있습니다. 이 매개 변수는 , data.addToWorkNotes및 allowMulticonference 매개 변수와 data.Table함께 사용됩니다. 이 매개변수가 유효한 작업:
|
| 데이터.테이블 | 전화 회의와 연결할 소스 기록이 들어 있는 테이블입니다. 소스 기록은 전화 회의에서 논의되는 "인시던트" 또는 "문제"와 같은 기록일 수 있습니다. 이 테이블 이름은 알림 전화 회의 [notify_conference_call] 테이블의 테이블 열에 저장되며 추적할 수 있습니다. 이 매개 변수는 , data.addToWorkNotes및 allowMulticonference 매개 변수와 data.sysId함께 사용됩니다. 이 매개변수가 유효한 작업:
|
다음 예제에서는 getNotifyActionTemplate()을 호출하여 doConferenceAction()에 대한 작업을 정의하는 데 필요한 데이터 템플릿을 가져오는 방법을 보여 줍니다.
/**
*
* @param {string} action - action to perform on the conference object or participant object
* @param {Array} participants;
*/
function doConferenceAction(action, participants) {
var data = NotifyOnTaskClient.getNotifyActionTemplate();
data.serviceProvider = 'Telephony'; // e.g 'Zoom', 'WebEx'
data.confId = 'Active conference sysId';
data.items = participants;
NotifyOnTaskClient.doConferenceAction(action, data).then(function (result) {
var kickActionResult = result[0];
if (kickActionResult.status)
console.log(action + ' succeeded');
else {
kickActionResult.warnMessages.forEach(function (msg) {
console.warn(msg);
});
kickActionResult.errorMessages.forEach(function (msg) {
console.error(msg);
});
}
}, function (errMsg) {
console.log(errMsg)
});
}
// kick participants
doConferenceAction('kick', [{notifyParticipantId: 'notifyParticipantSysId'}]);
// kick multiple participants
doConferenceAction('multiKick',
[{notifyParticipantId: 'notifyParticipantSysId'},
{notifyParticipantId: 'notifyParticipantSysId'}]);
// Mute participants
doConferenceAction('mute', [{notifyParticipantId: 'notifyParticipantSysId'}]);
doConferenceAction('mute', [{notifyParticipantId: 'notifyParticipantSysId'}]);
doConferenceAction('multiMute',
[{notifyParticipantId: 'notifyParticipantSysId'},
{notifyParticipantId: 'notifyParticipantSysId'}]);
// self join to any confernece.
doConferenceAction('selfJoin', [{id: 'logged in userId'}]);
알림OnTaskClient - 시작(객체 데이터)
새 전화 회의를 시작합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 데이터 | 객체 | 전화 회의를 설명하는 객체입니다. |
| data.addToWorkNotes | 부울 | 옵션입니다.관련 기록의 작업 메모 필드에 전화 회의에 포함된 참가자에 대한 정보를 추가할지 여부를 나타내는 플래그입니다. 이 기능이 작동하려면 작업 메모를 추가할 기록을 식별하는 및 data.sysId 매개변수의 data.table 값도 지정해야 합니다. 기본값: false |
| data.allowMulticonference | 부울 | 옵션입니다. 특정 기록에 대해 한 번에 여러 컨퍼런스 회의를 허용할지 여부를 나타내는 플래그입니다. 이 기능이 작동하려면 and data.sysId 매개 변수의 값 data.table 도 지정해야 합니다. 이러한 매개변수는 여러 컨퍼런스 회의를 가질 수 있는 기록을 식별합니다. 기본값: false |
| 데이터.fromNumber | 문자열 | 필수 전화 회의를 위해 호출할 서비스 제공자 번호입니다. 알림 전화 번호 [notify_number] 테이블의 번호 또는 전화 번호 열에서 이 값을 찾습니다. |
| 데이터.항목 | 배열 | 옵션입니다. 각 참가자가 전화 회의에 포함할 정보입니다. |
| data.items.email | 문자열 | 참가자의 이메일 주소입니다. |
| data.items.id | 문자열 | 사용자 sys_id 테이블: 사용자 [sys_User] |
| data.items.notifyParticipantId | 문자열 | 참가자 sys_id. 테이블: 참가자에게 알림 [notify_participant] |
| data.items.phoneNumber | 문자열 | 참가자의 전화 번호입니다. 이 값이 OR notifyParticipantId 매개변수와 id 함께 전달되면 이 값은 사용자/참가자 기록의 전화 번호를 대체하며 전화를 거는 데 사용됩니다. |
| data.message | 문자열 | 옵션입니다. 사용자가 호출에 응답할 때 소리내어 읽어주는 메시지입니다(예: "P1 인시던트가 생성되었습니다. 인스턴스에 로그인하십시오."). |
| data.serviceProvider | 문자열 | 필수. Zoom 또는 Webex와 같은 회의 서비스 제공자의 이름입니다. |
| 데이터.sysId | 문자열 | 옵션입니다. 전화 회의와 연결할 소스 기록의 Sys_id입니다. 예를 들어 특정 인시던트나 문제를 논의하기 위해 전화 회의가 열리는 경우 인시던트 또는 문제 기록의 sys_id 이 값에 입력합니다. 이 sys_id NotifyConference Call [notify_conference_call] 테이블의 소스 열에 저장되며 나중에 추적할 수 있습니다. 이 매개 변수는 , data.addToWorkNotes및 allowMulticonference 매개 변수와 data.Table함께 사용됩니다. |
| 데이터.테이블 | 문자열 | 옵션입니다. 전화 회의와 연결할 소스 기록이 들어 있는 테이블입니다. 소스 기록은 전화 회의에서 논의되는 "인시던트" 또는 "문제"와 같은 기록일 수 있습니다. 이 테이블 이름은 알림 전화 회의 [notify_conference_call] 테이블의 테이블 열에 저장되며 추적할 수 있습니다. 이 매개 변수는 , data.addToWorkNotes및 allowMulticonference 매개 변수와 data.sysId함께 사용됩니다. |
| 유형 | 설명 |
|---|---|
| 객체 | 회의 작업의 결과입니다.
|
다음 코드 예제에서는 이 메서드를 호출하는 방법을 보여 줍니다.
function startConferenceCall() {
var data = NotifyOnTaskClient.getNotifyActionTemplate();
data.table = 'incident';
data.sysId = '1234';
data.serviceProvider = serviceProvider;
data.addToWorkNotes = true;
data.fromNumber = 'Telephony Number';
data.items.push({ id: 'userSysId' });
data.items.push({ phoneNumber: '+917799555332' });
data.items.push({ email: 'yln99517@gmail.com' });
NotifyOnTaskClient.start(data).then(function (result) {
var startActionResult = result[0];
if(startActionResult.status) {
startActionResult.successMessages.forEach(function(msg) {
console.log(msg);
});
return;
}
startActionResult.warnMessages.forEach(function(msg) {
console.warn(msg);
});
startActionResult.errorMessages.forEach(function(msg) {
console.error(msg);
});
}, function (errMsg) {
console.log(errMsg);
});
}