NotifyOnTaskClient - クライアント
NotifyOnTaskClient API は、Zoom や WebEx などのさまざまな電話通信サービスプロバイダーに、SMS メッセージの送信や電話会議の開始/管理を行うためのメソッドを提供します。
NotifyOnTaskClient UI スクリプトを明示的に含めることで、どの UI でも NotifyOnTaskClient API を使用できます。
NotifyOnTaskClient API を使用すると、次のことが可能になります。
- 電話会議の開始
- 電話会議を終了
- 参加者の追加
- 電話通信ドライバーで可能な以下のアクションの実行
- 参加者をミュート/ミュート解除する
- 電話会議から参加者を除外する
- 電話会議に参加者を追加する
- 電話会議を開始する
- 電話会議を終了する
Notify (com.snc.notify) プラグインには個別のサブスクリプションが必要です。Notify プラグインのアクティブ化の詳細については、「 Notify をアクティブ化する」を参照してください。
NotifyOnTaskClient - addParticipants(オブジェクト data)
指定された参加者を指定された電話会議に追加します。
| 名前 | タイプ | 説明 |
|---|---|---|
| data | オブジェクト | 電話会議を説明するオブジェクト。 |
| data.addToWorkNotes | ブーリアン | 関連するレコードの作業メモフィールドに電話会議に含まれた参加者に関する情報を追加するかどうかを示すフラグ。 この機能を動作させるには、data.table および data.sysId パラメーターにも値を指定する必要があります。これらのパラメーターは、作業メモを追加するレコードを識別します。 デフォルト値:false |
| data.confId | 文字列 | 必須です。 電話会議の sys ID。 会議の sys ID は Notify 電話会議 [notify_conference_call] テーブルにあります。 |
| data.items | アレイ | 必須です。 電話会議に含める各参加者に関する情報。 有効なアレイ値:
|
| data.message | 文字列 | ユーザーがコールに応答したときに読み上げられるメッセージ (「P1 インシデントが作成されました。インスタンスにログインしてください」など)。 |
| data.serviceProvider | 文字列 | 必須です。Zoom や Webex などの会議サービスプロバイダーの名前。 |
| data.sysId | 文字列 | 電話会議に関連付けるソースレコードの Sys ID。 たとえば、特定のインシデントまたは問題について話し合うために電話会議が行われる場合は、インシデントまたは問題レコードの Sys ID をこの値に入力します。この Sys ID は NotifyConference コール [notify_conference_call] テーブルの [Source] 列に保存され、後で追跡できます。 このパラメーターは、data.Table、data.addToWorkNotes、および allowMulticonference パラメーターと組み合わせて使用されます。 この値は、「開始」アクションを使用して最初に電話会議を作成するときに設定する必要があります。必要に応じて、このメソッドを使用して値を設定することもできます。 |
| data.table | 文字列 | 電話会議に関連付けるソースレコードのを含むテーブル。ソースレコードは、「インシデント」や「問題」など、電話会議でのディスカッションのトピックである任意のレコードです。 このテーブル名は NotifyConference コール [notify_conference_call] テーブルの [Table] 列に保存され、追跡できます。 このパラメーターは、data.sysId、data.addToWorkNotes、および allowMulticonference パラメーターと組み合わせて使用されます。 この値は、「開始」アクションを使用して最初に電話会議を作成するときに設定する必要があります。必要に応じて、このメソッドを使用して値を設定することもできます。 |
| タイプ | 説明 |
|---|---|
| オブジェクト | 会議アクションの結果。
|
例
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);
});
}
NotifyOnTaskClient - doConferenceAction(文字列 action, オブジェクト data)
電話会議の開始/終了や、電話会議への参加者の追加、除外、ミュート、またはミュート解除などの指定された電話会議アクションを実行します。
- 電話会議レコードのポインターを、電話会議のディスカッションのトピックであるインシデントや問題といった特定のレコード (ソースレコード) に保存します。
- ソースレコードの複数の電話会議を許可または禁止します。
- 電話会議に参加していた参加者を、ソースレコードの [作業メモ] フィールドに自動的に記録します。
- 参加者が会議からの発信コールに応答したときにメッセージを読み上げます。
| 名前 | タイプ | 説明 |
|---|---|---|
| action | 文字列 | 実行する電話会議アクションを定義します。 利用可能な電話会議アクションは次のとおりです。
|
| data | オブジェクト | 電話会議を説明するオブジェクト。 |
| data.addToWorkNotes | ブール | 関連するレコードの作業メモフィールドに電話会議に含まれた参加者に関する情報を追加するかどうかを示すフラグ。 この機能を動作させるには、data.table および data.sysId パラメーターにも値を指定する必要があります。これらのパラメーターは、作業メモを追加するレコードを識別します。 デフォルト値:false このパラメーターが有効なアクション:
|
| data.allowMulticonference | ブール | 特定のレコードに対して一度に複数の電話会議を許可するかどうかを示すフラグ。 この機能を動作させるには、data.table および data.sysId パラメーターにも値を指定する必要があります。これらのパラメーターは、複数の電話会議を許可されているレコードを識別します。 デフォルト値:false このパラメーターが有効なアクション:
|
| data.confId | 文字列 | 電話会議の sys ID。 会議の sys ID は Notify 電話会議 [notify_conference_call] テーブルにあります。 このパラメーターが必要なアクション:
注: ミュート、ミュート解除、除外などの参加者アクションでは、メソッドが Notify 電話会議参加者 [notify_participant] テーブルからこの情報を取得するために、このパラメーターを設定する必要はありません。 |
| data.fromNumber | 文字列 | 電話会議のために呼び出すサービスプロバイダーの番号。 この値は、Notify 電話番号 [notify_number] テーブルの [Number] または [ Phone number] 列で見つけます。 このパラメーターが必要なアクション:
|
| data.isNewConference | ブール | 新規の電話会議か既存の電話会議かを示すフラグ。 有効な値:
デフォルト値:false このパラメーターが有効なアクション:
|
| data.message | 文字列 | ユーザーがコールに応答したときに読み上げられるメッセージ (「P1 インシデントが作成されました。インスタンスにログインしてください」など)。 このパラメーターが有効なアクション:
|
| data.items | アレイ | 電話会議に含める各参加者に関する情報。 有効なアレイ値:
|
| data.serviceProvider | 文字列 | 必須です。Zoom や Webex などの会議サービスプロバイダーの名前。 このパラメーターが必要なアクション:
|
| data.sysId | 文字列 | 電話会議に関連付けるソースレコードの Sys ID。 たとえば、特定のインシデントまたは問題について話し合うために電話会議が行われる場合は、インシデントまたは問題レコードの Sys ID をこの値に入力します。この Sys ID は NotifyConference コール [notify_conference_call] テーブルの [Source] 列に保存され、後で追跡できます。 このパラメーターは、data.Table、data.addToWorkNotes、および allowMulticonference パラメーターと組み合わせて使用されます。 このパラメーターが有効なアクション:
|
| data.table | 文字列 | 電話会議に関連付けるソースレコードのを含むテーブル。ソースレコードは、「インシデント」や「問題」など、電話会議でのディスカッションのトピックである任意のレコードです。 このテーブル名は NotifyConference コール [notify_conference_call] テーブルの [Table] 列に保存され、追跡できます。 このパラメーターは、data.sysId、data.addToWorkNotes、および allowMulticonference パラメーターと組み合わせて使用されます。 このパラメーターが有効なアクション:
|
| タイプ | 説明 |
|---|---|
| オブジェクト | 会議アクションの結果。
|
次の例は、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'}]);
NotifyOnTaskClient - endConference(オブジェクト data)
指定された電話会議を終了します。
| 名前 | タイプ | 説明 |
|---|---|---|
| data | オブジェクト | 電話会議を説明するオブジェクト。 |
| data.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);
});
}
NotifyOnTaskClient - getNotifyActionTemplate()
doConferenceAction() メソッドで使用する JSON データテンプレートを返します。このテンプレートを使用すると、データオブジェクトが自動的に構造化されるため、手動で作成する必要はありません。
このメソッドを呼び出してから、doConferenceAction() メソッドを呼び出します。目的の電話会議アクションに対して、テンプレート内で目的のパラメーターを設定し、doConferenceAction() コールでテンプレートを渡します。各アクションに有効なパラメーターの詳細については、「 doConferenceAction()」を参照してください。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| data | 電話会議を説明するオブジェクト。 |
| data.addToWorkNotes | 関連するレコードの作業メモフィールドに電話会議に含まれた参加者に関する情報を追加するかどうかを示すフラグ。 この機能を動作させるには、data.table および data.sysId パラメーターにも値を指定する必要があります。これらのパラメーターは、作業メモを追加するレコードを識別します。 デフォルト値:false このパラメーターが有効なアクション:
|
| data.allowMultconference | 特定のレコードに対して一度に複数の電話会議を許可するかどうかを示すフラグ。 この機能を動作させるには、data.table および data.sysId パラメーターにも値を指定する必要があります。これらのパラメーターは、複数の電話会議を許可されているレコードを識別します。 デフォルト値:false このパラメーターが有効なアクション:
|
| data.confId | 電話会議の sys ID。 会議の sys ID は Notify 電話会議 [notify_conference_call] テーブルにあります。 このパラメーターが必要なアクション:
注: ミュート、ミュート解除、除外などの参加者アクションでは、メソッドが Notify 電話会議参加者 [notify_participant] テーブルからこの情報を取得するために、このパラメーターを設定する必要はありません。 |
| data.fromNumber | 電話会議のために呼び出すサービスプロバイダーの番号。 この値は、Notify 電話番号 [notify_number] テーブルの [Number] または [ Phone number] 列で見つけます。 このパラメーターが必要なアクション:
|
| data.isNewConference | 新規の電話会議か既存の電話会議かを示すフラグ。 有効な値:
デフォルト値:false このパラメーターが有効なアクション:
|
| data.items | 電話会議に含める各参加者に関する情報。 有効なアレイ値:
|
| data.message | ユーザーがコールに応答したときに読み上げられるメッセージ (「P1 インシデントが作成されました。インスタンスにログインしてください」など)。 このパラメーターが有効なアクション:
|
| data.serviceProvider | 必須です。Zoom や Webex などの会議サービスプロバイダーの名前。 このパラメーターが必要なアクション:
|
| data.sysId | 電話会議に関連付けるソースレコードの Sys ID。 たとえば、特定のインシデントまたは問題について話し合うために電話会議が行われる場合は、インシデントまたは問題レコードの Sys ID をこの値に入力します。この Sys ID は NotifyConference コール [notify_conference_call] テーブルの [Source] 列に保存され、後で追跡できます。 このパラメーターは、data.Table、data.addToWorkNotes、および allowMulticonference パラメーターと組み合わせて使用されます。 このパラメーターが有効なアクション:
|
| data.table | 電話会議に関連付けるソースレコードのを含むテーブル。ソースレコードは、「インシデント」や「問題」など、電話会議でのディスカッションのトピックである任意のレコードです。 このテーブル名は NotifyConference コール [notify_conference_call] テーブルの [Table] 列に保存され、追跡できます。 このパラメーターは、data.sysId、data.addToWorkNotes、および allowMulticonference パラメーターと組み合わせて使用されます。 このパラメーターが有効なアクション:
|
次の例は、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'}]);
NotifyOnTaskClient - start(オブジェクト data)
新しい電話会議を開始します。
| 名前 | タイプ | 説明 |
|---|---|---|
| data | オブジェクト | 電話会議を説明するオブジェクト。 |
| data.addToWorkNotes | ブーリアン | オプション。関連するレコードの作業メモフィールドに電話会議に含まれた参加者に関する情報を追加するかどうかを示すフラグ。 この機能を動作させるには、data.table および data.sysId パラメーターに値を指定して、作業メモを追加するレコードを特定する必要があります。 デフォルト値:false |
| data.allowMulticonference | ブーリアン | オプション。 特定のレコードに対して一度に複数の電話会議を許可するかどうかを示すフラグ。 この機能を動作させるには、data.table および data.sysId パラメーターにも値を指定する必要があります。これらのパラメーターは、複数の電話会議を許可されているレコードを識別します。 デフォルト値:false |
| data.fromNumber | 文字列 | 必須です。 電話会議のために呼び出すサービスプロバイダーの番号。 この値は、Notify 電話番号 [notify_number] テーブルの [Number] または [ Phone number] 列で見つけます。 |
| data.items | アレイ | オプション。 電話会議に含める各参加者に関する情報。 有効なアレイ値:
|
| data.message | 文字列 | オプション。 ユーザーがコールに応答したときに読み上げられるメッセージ (「P1 インシデントが作成されました。インスタンスにログインしてください」など)。 |
| data.serviceProvider | 文字列 | 必須です。Zoom や Webex などの会議サービスプロバイダーの名前。 |
| data.sysId | 文字列 | オプション。 電話会議に関連付けるソースレコードの Sys ID。 たとえば、特定のインシデントまたは問題について話し合うために電話会議が行われる場合は、インシデントまたは問題レコードの Sys ID をこの値に入力します。この Sys ID は NotifyConference コール [notify_conference_call] テーブルの [Source] 列に保存され、後で追跡できます。 このパラメーターは、data.Table、data.addToWorkNotes、および allowMulticonference パラメーターと組み合わせて使用されます。 |
| data.table | 文字列 | オプション。 電話会議に関連付けるソースレコードのを含むテーブル。ソースレコードは、「インシデント」や「問題」など、電話会議でのディスカッションのトピックである任意のレコードです。 このテーブル名は NotifyConference コール [notify_conference_call] テーブルの [Table] 列に保存され、追跡できます。 このパラメーターは、data.sysId、data.addToWorkNotes、および allowMulticonference パラメーターと組み合わせて使用されます。 |
| タイプ | 説明 |
|---|---|
| オブジェクト | 会議アクションの結果。
|
例
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);
});
}