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 des actions disponibles via le pilote de téléphonie, telles que :
- Activer ou 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 Notification (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. |
| data.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 and data.sysId . Ces paramètres identifient l’enregistrement dans lequel ajouter les notes de travail. Valeur par défaut : false |
| données.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 de Notification [notify_conference_call]. |
| 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, par exemple « Un incident P1 a été créé, veuillez vous connecter à l’instance ». |
| données.serviceProvider | Chaîne | Requis. Nom du fournisseur de services de conférence, tel que Zoom ou Webex. |
| données.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, définissez 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 Notification Téléconférence [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 « démarrer ». 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 de notification [notify_conference_call] et peut faire l’objet d’un 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 « démarrer ». Si nécessaire, vous pouvez également définir cette valeur via cette méthode. |
| Type | Description |
|---|---|
| Objet | Résultats de l’action de la conférence.
|
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 spécifiée de téléconférence, telle que démarrer/mettre fin à une téléconférence ou rejoindre, supprimer, désactiver ou rétablir le son de participants à une téléconférence.
- Enregistrez les pointeurs de l’enregistrement de la 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.
- Autoriser/interdire plusieurs téléconférences pour un enregistrement source.
- Enregistrez automatiquement les participants qui ont participé à 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. |
| data.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 and 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.allowMulticonference | Booléen | Marqueur indiquant s’il faut autoriser 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 and 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 :
|
| données.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 de Notification [notify_conference_call]. Actions pour lesquelles ce paramètre est obligatoire :
Remarque : Les actions des participants telles que désactiver le micro, réactiver le micro et expulser 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]. |
| data.fromNumber | Chaîne | Numéro du fournisseur de service à appeler pour la téléconférence. Localisez 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 obligatoire :
|
| 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, par exemple « Un incident P1 a été créé, veuillez vous connecter à l’instance ». Actions pour lesquelles ce paramètre est valide :
|
| données.éléments | Tableau | Informations que chaque participant doit inclure dans la téléconférence. Valeurs de tableau valides :
|
| données.serviceProvider | Chaîne | Requis. Nom du fournisseur de services de conférence, tel que Zoom ou Webex. Actions pour lesquelles ce paramètre est obligatoire :
|
| données.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, définissez 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 Notification Téléconférence [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 de notification [notify_conference_call] et peut faire l’objet d’un 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 la 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 transmettant 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. |
| données.confId | Chaîne | ID système de la téléconférence. |
| données.serviceProvider | Chaîne | Requis. Nom du fournisseur de services de conférence, tel que Zoom ou Webex. |
| Type | Description |
|---|---|
| Objet | Résultats de l’action de la conférence.
|
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. |
| data.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 and 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 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 and 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 :
|
| données.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 de Notification [notify_conference_call]. Actions pour lesquelles ce paramètre est obligatoire :
Remarque : Les actions des participants telles que désactiver le micro, réactiver le micro et expulser 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]. |
| data.fromNumber | Numéro du fournisseur de service à appeler pour la téléconférence. Localisez 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 obligatoire :
|
| 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 :
|
| 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, par exemple « Un incident P1 a été créé, veuillez vous connecter à l’instance ». Actions pour lesquelles ce paramètre est valide :
|
| données.serviceProvider | Requis. Nom du fournisseur de services de conférence, tel que Zoom ou Webex. Actions pour lesquelles ce paramètre est obligatoire :
|
| données.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, définissez 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 Notification Téléconférence [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 de notification [notify_conference_call] et peut faire l’objet d’un 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. |
| data.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 |
| data.allowMulticonference | Booléen | Facultatif. Marqueur indiquant s’il faut autoriser 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 and data.sysId . Ces paramètres identifient l’enregistrement qui est autorisé à avoir plusieurs téléconférences. Valeur par défaut : false |
| data.fromNumber | Chaîne | Requis. Numéro du fournisseur de service à appeler pour la téléconférence. Localisez 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]. |
| 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, par exemple « Un incident P1 a été créé, veuillez vous connecter à l’instance ». |
| données.serviceProvider | Chaîne | Requis. Nom du fournisseur de services de conférence, tel que Zoom ou Webex. |
| données.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, définissez 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 Notification Téléconférence [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 de notification [notify_conference_call] et peut faire l’objet d’un 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 la conférence.
|
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);
});
}