NotifyOnTaskClient : client
L’API NotifyOnTaskClient fournit des méthodes d’envoi de messages SMS ou de démarrage/gestion d’une téléconférence pour divers fournisseurs de services de téléphonie, tels que Zoom et WebEx.
Toute interface utilisateur peut utiliser l’API NotifyOnTaskClient en incluant explicitement le script d’interface utilisateur NotifyOnTaskClient.
À l’aide de l’API NotifyOnTaskClient , vous pouvez :
- Commencer une téléconférence
- Terminer une téléconférence
- Ajouter des participants
- Effectuez les actions disponibles via le pilote de téléphonie, telles que :
- Activer/désactiver le micro des participants
- Supprimer des participants d’une téléconférence
- Ajouter des participants à une téléconférence
- Commencer une téléconférence
- Terminer une téléconférence
Le module d’extension Notify (com.snc.notify) nécessite un abonnement distinct. Pour plus d’informations sur l’activation du module d’extension Notify, consultez Activer Notify.
NotifyOnTaskClient : addParticipants(données de l’objet)
Ajoute les participants spécifiés à une téléconférence spécifiée.
| Nom | Type | Description |
|---|---|---|
| données | Objet | Objet qui décrit la téléconférence. |
| données.addToWorkNotes | Booléen | Marqueur indiquant s’il faut ajouter des informations sur les participants qui ont été inclus dans la téléconférence dans le champ Notes de travail de l’enregistrement associé. Pour que cette fonctionnalité fonctionne, vous devez également spécifier des valeurs dans les data.table paramètres et data.sysId . Ces paramètres identifient l’enregistrement dans lequel ajouter les notes de travail. Valeur par défaut : false |
| data.confId | Chaîne | Requis. ID système de la téléconférence. L’ID système de la conférence se trouve dans la table Téléconférence Notification [notify_conference_call]. |
| éléments données.éléments | Tableau | Requis. Informations que chaque participant doit inclure dans la téléconférence. Valeurs de tableau valides :
|
| data.message | Chaîne | Message lu à haute voix lorsqu’un utilisateur répond à l’appel, tel que « Un incident P1 a été créé, veuillez vous connecter à l’instance ». |
| data.serviceProvider | Chaîne | Obligatoire. Nom du fournisseur de service de conférence, tel que Zoom ou Webex. |
| data.sysId | Chaîne | ID système de l’enregistrement source à associer à la téléconférence. Par exemple, si une téléconférence est organisée pour discuter d’un incident ou d’un problème spécifique, placez l’ID système de l’enregistrement d’incident ou de problème dans cette valeur. Cet ID système est stocké dans la colonne Source de la table NotifyConference Call [notify_conference_call] et peut être suivi ultérieurement. Ce paramètre est utilisé en conjonction avec les data.Tableparamètres , data.addToWorkNotes, et allowMulticonference . Vous devez configurer cette valeur lorsque la téléconférence est initialement créée via une action de démarrage. Si nécessaire, vous pouvez également définir cette valeur via cette méthode. |
| données.table | Chaîne | Table contenant l’enregistrement source à associer à la téléconférence. Un enregistrement source peut être n’importe quel enregistrement, tel qu’un « incident » ou un « problème », qui est le sujet de discussion de la téléconférence. Ce nom de table est stocké dans la colonne Table de la table Téléconférence [notify_conference_call] et peut être suivi. Ce paramètre est utilisé en conjonction avec les data.sysIdparamètres , data.addToWorkNotes, et allowMulticonference . Vous devez configurer cette valeur lorsque la téléconférence est initialement créée via une action de démarrage. Si nécessaire, vous pouvez également définir cette valeur via cette méthode. |
| Type | Description |
|---|---|
| Objet | Résultats de l’action de conférence.
|
Exemple
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 de chaîne, données d’objet)
Effectue l’action de téléconférence spécifiée, comme démarrer/mettre fin à une téléconférence ou rejoindre, supprimer, désactiver ou réactiver le micro des participants d’une téléconférence.
- Enregistrez les pointeurs dans l’enregistrement de téléconférence vers l’enregistrement spécifique (enregistrement source), tel qu’un incident ou un problème, qui est le sujet de discussion de la téléconférence.
- Autorisez/interdisez plusieurs téléconférences pour un enregistrement source.
- Enregistrez automatiquement les participants qui participaient à la téléconférence dans le champ Notes de travail de l’enregistrement source.
- Faites lire un message à haute voix lorsqu’un participant répond à un appel sortant de la conférence.
| Nom | Type | Description |
|---|---|---|
| action | Chaîne | Définit l’action de téléconférence à effectuer. Les actions de téléconférence disponibles sont les suivantes :
|
| données | Objet | Objet qui décrit la téléconférence. |
| données.addToWorkNotes | Booléen | Marqueur indiquant s’il faut ajouter des informations sur les participants qui ont été inclus dans la téléconférence dans le champ Notes de travail de l’enregistrement associé. Pour que cette fonctionnalité fonctionne, vous devez également spécifier des valeurs dans les data.table paramètres et data.sysId . Ces paramètres identifient l’enregistrement dans lequel ajouter les notes de travail. Valeur par défaut : false Actions pour lesquelles ce paramètre est valide :
|
| données.allowMulticonference | Booléen | Marqueur indiquant s’il faut autoriser ou non plusieurs téléconférences pour un enregistrement spécifique à la fois. Pour que cette fonctionnalité fonctionne, vous devez également spécifier des valeurs dans les data.table paramètres et data.sysId . Ces paramètres identifient l’enregistrement qui est autorisé à avoir plusieurs téléconférences. Valeur par défaut : false Actions pour lesquelles ce paramètre est valide :
|
| data.confId | Chaîne | ID système de la téléconférence. L’ID système de la conférence se trouve dans la table Téléconférence Notification [notify_conference_call]. Actions pour lesquelles ce paramètre est requis :
Remarque : Les actions des participants telles que désactiver, réactiver le micro et exclure ne nécessitent pas la définition de ce paramètre, car la méthode obtient ces informations à partir de la table Participant à la téléconférence de Notification [notify_participant]. |
| données.fromNumber | Chaîne | Numéro du fournisseur de service à appeler pour la téléconférence. Recherchez cette valeur dans la colonne Numéro ou Numéro de téléphone de la table Numéro de téléphone de Notification [notify_number]. Actions pour lesquelles ce paramètre est requis :
|
| data.isNewConference | Booléen | Marqueur indiquant s’il s’agit d’une nouvelle téléconférence ou d’une téléconférence existante. Valeurs valides :
Valeur par défaut : false Actions pour lesquelles ce paramètre est valide :
|
| data.message | Chaîne | Message lu à haute voix lorsqu’un utilisateur répond à l’appel, tel que « Un incident P1 a été créé, veuillez vous connecter à l’instance ». Actions pour lesquelles ce paramètre est valide :
|
| éléments données.éléments | Tableau | Informations que chaque participant doit inclure dans la téléconférence. Valeurs de tableau valides :
|
| data.serviceProvider | Chaîne | Obligatoire. Nom du fournisseur de service de conférence, tel que Zoom ou Webex. Actions pour lesquelles ce paramètre est requis :
|
| data.sysId | Chaîne | ID système de l’enregistrement source à associer à la téléconférence. Par exemple, si une téléconférence est organisée pour discuter d’un incident ou d’un problème spécifique, placez l’ID système de l’enregistrement d’incident ou de problème dans cette valeur. Cet ID système est stocké dans la colonne Source de la table NotifyConference Call [notify_conference_call] et peut être suivi ultérieurement. Ce paramètre est utilisé en conjonction avec les data.Tableparamètres , data.addToWorkNotes, et allowMulticonference . Actions pour lesquelles ce paramètre est valide :
|
| données.table | Chaîne | Table contenant l’enregistrement source à associer à la téléconférence. Un enregistrement source peut être n’importe quel enregistrement, tel qu’un « incident » ou un « problème », qui est le sujet de discussion de la téléconférence. Ce nom de table est stocké dans la colonne Table de la table Téléconférence [notify_conference_call] et peut être suivi. Ce paramètre est utilisé en conjonction avec les data.sysIdparamètres , data.addToWorkNotes, et allowMulticonference . Actions pour lesquelles ce paramètre est valide :
|
| Type | Description |
|---|---|
| Objet | Résultats de l’action de conférence.
|
L’exemple suivant montre comment créer une fonction pour appeler doConferenceAction() afin de manipuler les participants d’une téléconférence en passant l’action et les participants.
/**
*
* @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(données de l’objet)
Met fin à la téléconférence spécifiée.
| Nom | Type | Description |
|---|---|---|
| données | Objet | Objet qui décrit la téléconférence. |
| data.confId | Chaîne | ID système de la téléconférence. |
| data.serviceProvider | Chaîne | Obligatoire. Nom du fournisseur de service de conférence, tel que Zoom ou Webex. |
| Type | Description |
|---|---|
| Objet | Résultats de l’action de conférence.
|
Exemple
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()
Renvoie un modèle de données JSON à utiliser avec la méthode doConferenceAction(). L’utilisation de ce modèle structure automatiquement l’objet de données afin que vous n’ayez pas à le créer manuellement.
Appelez cette méthode avant d’appeler la méthode doConferenceAction(). Pour l’action de téléconférence souhaitée, définissez les paramètres souhaités dans le modèle, puis transmettez le modèle dans l’appel doConferenceAction(). Pour plus d’informations sur les paramètres valides pour chaque action, consultez doConferenceAction().
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| données | Objet qui décrit la téléconférence. |
| données.addToWorkNotes | Marqueur indiquant s’il faut ajouter des informations sur les participants qui ont été inclus dans la téléconférence dans le champ Notes de travail de l’enregistrement associé. Pour que cette fonctionnalité fonctionne, vous devez également spécifier des valeurs dans les data.table paramètres et data.sysId . Ces paramètres identifient l’enregistrement dans lequel ajouter les notes de travail. Valeur par défaut : false Actions pour lesquelles ce paramètre est valide :
|
| data.allowMultconference | Marqueur indiquant s’il faut autoriser ou non plusieurs téléconférences pour un enregistrement spécifique à la fois. Pour que cette fonctionnalité fonctionne, vous devez également spécifier des valeurs dans les data.table paramètres et data.sysId . Ces paramètres identifient l’enregistrement qui est autorisé à avoir plusieurs téléconférences. Valeur par défaut : false Actions pour lesquelles ce paramètre est valide :
|
| data.confId | ID système de la téléconférence. L’ID système de la conférence se trouve dans la table Téléconférence Notification [notify_conference_call]. Actions pour lesquelles ce paramètre est requis :
Remarque : Les actions des participants telles que désactiver, réactiver le micro et exclure ne nécessitent pas la définition de ce paramètre, car la méthode obtient ces informations à partir de la table Participant à la téléconférence de Notification [notify_participant]. |
| données.fromNumber | Numéro du fournisseur de service à appeler pour la téléconférence. Recherchez cette valeur dans la colonne Numéro ou Numéro de téléphone de la table Numéro de téléphone de Notification [notify_number]. Actions pour lesquelles ce paramètre est requis :
|
| data.isNewConference | Marqueur indiquant s’il s’agit d’une nouvelle téléconférence ou d’une téléconférence existante. Valeurs valides :
Valeur par défaut : false Actions pour lesquelles ce paramètre est valide :
|
| éléments données.éléments | Informations que chaque participant doit inclure dans la téléconférence. Valeurs de tableau valides :
|
| data.message | Message lu à haute voix lorsqu’un utilisateur répond à l’appel, tel que « Un incident P1 a été créé, veuillez vous connecter à l’instance ». Actions pour lesquelles ce paramètre est valide :
|
| data.serviceProvider | Obligatoire. Nom du fournisseur de service de conférence, tel que Zoom ou Webex. Actions pour lesquelles ce paramètre est requis :
|
| data.sysId | ID système de l’enregistrement source à associer à la téléconférence. Par exemple, si une téléconférence est organisée pour discuter d’un incident ou d’un problème spécifique, placez l’ID système de l’enregistrement d’incident ou de problème dans cette valeur. Cet ID système est stocké dans la colonne Source de la table NotifyConference Call [notify_conference_call] et peut être suivi ultérieurement. Ce paramètre est utilisé en conjonction avec les data.Tableparamètres , data.addToWorkNotes, et allowMulticonference . Actions pour lesquelles ce paramètre est valide :
|
| données.table | Table contenant l’enregistrement source à associer à la téléconférence. Un enregistrement source peut être n’importe quel enregistrement, tel qu’un « incident » ou un « problème », qui est le sujet de discussion de la téléconférence. Ce nom de table est stocké dans la colonne Table de la table Téléconférence [notify_conference_call] et peut être suivi. Ce paramètre est utilisé en conjonction avec les data.sysIdparamètres , data.addToWorkNotes, et allowMulticonference . Actions pour lesquelles ce paramètre est valide :
|
L’exemple suivant montre comment appeler getNotifyActionTemplate() pour obtenir le modèle de données nécessaire pour définir les actions de 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 (données de l’objet)
Démarre une nouvelle téléconférence.
| Nom | Type | Description |
|---|---|---|
| données | Objet | Objet qui décrit la téléconférence. |
| données.addToWorkNotes | Booléen | Facultatif.Marqueur indiquant s’il faut ajouter des informations sur les participants qui ont été inclus dans la téléconférence dans le champ Notes de travail de l’enregistrement associé. Pour que cette fonctionnalité fonctionne, vous devez également spécifier des valeurs pour les data.table paramètres et data.sysId afin d’identifier l’enregistrement dans lequel ajouter les notes de travail. Valeur par défaut : false |
| données.allowMulticonference | Booléen | Facultatif. Marqueur indiquant s’il faut autoriser ou non plusieurs téléconférences pour un enregistrement spécifique à la fois. Pour que cette fonctionnalité fonctionne, vous devez également spécifier des valeurs dans les data.table paramètres et data.sysId . Ces paramètres identifient l’enregistrement qui est autorisé à avoir plusieurs téléconférences. Valeur par défaut : false |
| données.fromNumber | Chaîne | Requis. Numéro du fournisseur de service à appeler pour la téléconférence. Recherchez cette valeur dans la colonne Numéro ou Numéro de téléphone de la table Numéro de téléphone de Notification [notify_number]. |
| éléments données.éléments | Tableau | Facultatif. Informations que chaque participant doit inclure dans la téléconférence. Valeurs de tableau valides :
|
| data.message | Chaîne | Facultatif. Message lu à haute voix lorsqu’un utilisateur répond à l’appel, tel que « Un incident P1 a été créé, veuillez vous connecter à l’instance ». |
| data.serviceProvider | Chaîne | Obligatoire. Nom du fournisseur de service de conférence, tel que Zoom ou Webex. |
| data.sysId | Chaîne | Facultatif. ID système de l’enregistrement source à associer à la téléconférence. Par exemple, si une téléconférence est organisée pour discuter d’un incident ou d’un problème spécifique, placez l’ID système de l’enregistrement d’incident ou de problème dans cette valeur. Cet ID système est stocké dans la colonne Source de la table NotifyConference Call [notify_conference_call] et peut être suivi ultérieurement. Ce paramètre est utilisé en conjonction avec les data.Tableparamètres , data.addToWorkNotes, et allowMulticonference . |
| données.table | Chaîne | Facultatif. Table contenant l’enregistrement source à associer à la téléconférence. Un enregistrement source peut être n’importe quel enregistrement, tel qu’un « incident » ou un « problème », qui est le sujet de discussion de la téléconférence. Ce nom de table est stocké dans la colonne Table de la table Téléconférence [notify_conference_call] et peut être suivi. Ce paramètre est utilisé en conjonction avec les data.sysIdparamètres , data.addToWorkNotes, et allowMulticonference . |
| Type | Description |
|---|---|
| Objet | Résultats de l’action de conférence.
|
Exemple
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);
});
}