NotifyNow (hérité) : global
L’API NotifyNow héritée fournit des fonctionnalités pour l’envoi d’e-mails, l’envoi de SMS et la configuration de téléconférences.
NotifyNow : addConferenceCallParticipant(String conferenceCall, String participant)
Ajoute des utilisateurs ad hoc à une téléconférence en cours.
Lorsque la méthode est appelée avec un numéro de téléphone pour le paramètre participant et qu’il y a exactement un enregistrement sys_user qui correspond au numéro de téléphone, cet enregistrement sys_user sera associé au participant. Le champ du numéro de téléphone du participant sera laissé vide car le numéro de téléphone se trouve dans l’enregistrement sys_user. S’il y a plusieurs enregistrements sys_user qui correspondent au numéro de téléphone, ou s’il n’y a pas de résultats, le champ Numéro de téléphone du participant est renseigné et aucune référence sys_user n’est stockée, car l’utilisateur n’est pas connu.
| Nom | Type | Description |
|---|---|---|
| Téléconférence | String ou GlideRecord | Le sys_id ou GlideRecord d’une téléconférence active. |
| participant | String ou GlideRecord | Le sys_id ou GlideRecord d’un utilisateur disposant d’un numéro de téléphone conforme E.164 ou E.164. |
| Type | Description |
|---|---|
| GlideRecord | L’enregistrement du nouveau participant qui a été ajouté à la téléconférence. |
// add a new participant by conference call sys_id (string) and phone number (string)
var nn = new SNC.NotifyNow();
gs.log(nn.addConferenceCallParticipant('d193b242eb020100a04d4910f206fe39', '+31612345678'));
// add a new participant by conference call sys_id (string) and user record (GlideRecord)
var user = new GlideRecord('sys_user');
user.query('user_name', 'myUserName');
if (user.hasNext() && user.next()) {
var nn = new SNC.NotifyNow();
gs.log(nn.addConferenceCallParticipant('d193b242eb020100a04d4910f206fe39', user));
// you could have added the user by sys_id as well:
// nn.addConferenceCallParticipant('d193b242eb020100a04d4910f206fe39', user.getValue('sys_id'));
} else {
gs.log('no such user');
}
// add a new participant by conference call record (GlideRecord) and phone number (string)
var conferenceCall = new GlideRecord('notifynow_conference_call');
conferenceCall.query('title', 'IA0001001');
if (conferenceCall.hasNext() && conferenceCall.next()) {
var nn = new SNC.NotifyNow();
gs.log(nn.addConferenceCallParticipant(conferenceCall, '+31612345678'));
} else {
gs.log('no such conference call');
}
NotifyNow : convertLocalPhoneNumberToE164(String userID, String phoneNumber)
Convertit un numéro de téléphone local en numéro de téléphone compatible E.164 en fonction de l’emplacement d’un utilisateur.
| Nom | Type | Description |
|---|---|---|
| userID | Chaîne | La sys_id d’un enregistrement de sys_user à partir duquel obtenir des informations sur l’emplacement. |
| phoneNumber | Chaîne | Le numéro de téléphone. |
| Type | Description |
|---|---|
| Chaîne | Le numéro de téléphone conforme E.164. |
var localPhoneNumber = '01784 221600';
var userName = 'Heath Vanalphen';
var user = new GlideRecord('sys_user');
user.get('name',userName);
var E164Number = new SNC.NotifyNow().convertLocalPhoneNumberToE164(user.getUniqueValue(), localPhoneNumber);
gs.log('converted: ' + localPhoneNumber + ' to ' + E164Number + ' based on ' + user.getValue('name') +
'\'s location (' + user.getValue('location') + ')');
NotifyNow : getConferenceCallParticipants(String conferenceCallId, booléen isCallable)
Renvoie tous les participants pour une téléconférence.
| Nom | Type | Description |
|---|---|---|
| conferenceCallId | Chaîne | ID de la téléconférence. |
| isCallable | Booléen | Marqueur facultatif permettant de renvoyer uniquement les utilisateurs que vous pouvez appeler (vrai) ou ceux que vous ne pouvez pas appeler (faux). |
| Type | Description |
|---|---|
| GlideRecord | Les participants |
var nn = new SNC.NotifyNow();
var user = nn.getConferenceCallParticipants('c2e91710eb120100f34087b9d106fe37');
while (user.hasNext() && user.next()) {
if (user.getValue('participant')) {
gs.log('user: ' + user.getValue('sys_id'));
} else {
gs.log('phone number: ' + user.getValue('phone_number'));
}
}
var nn = new SNC.NotifyNow();
var user = nn.getConferenceCallParticipants('c2e91710eb120100f34087b9d106fe37', true);
while (user.hasNext() && user.next()) {
if (user.getValue('participant')) {
gs.log('user: ' + user.getValue('sys_id'));
} else {
gs.log('phone number: ' + user.getValue('phone_number'));
}
}
var conferenceCallId = '32b11430eb1201003cf587b9d106feb8';
// get all participants
gs.log('all conference call participants:');
var nn = new SNC.NotifyNow();
var user = nn.getConferenceCallParticipants(conferenceCallId);
gs.log(user);
// get all callable participants
gs.log('all conference call participants we can call:');
user = nn.getConferenceCallParticipants(conferenceCallId, true);
gs.log(user);
// get all un callable participants
gs.log('all conference call participants that are already in an active session and whom we cannot call:');
user = nn.getConferenceCallParticipants(conferenceCallId, false);
gs.log(user);
NotifyNow : getFrequently CalledUsers(limite de nombre)
Renvoie un certain nombre d’utilisateurs fréquemment appelés, jusqu’au paramètre limite, par ordre alphabétique.
| Nom | Type | Description |
|---|---|---|
| limite | Numéro | Nombre maximal de résultats. |
| Type | Description |
|---|---|
| GlideRecord | Les utilisateurs fréquemment appelés par ordre alphabétique. |
var nn = new SNC.NotifyNow();
var fc = nn.getFrequentlyCalledUsers(10);
while (fc.hasNext() && fc.next()) {
gs.log("got user " + fc.getValue('name') + ' - ' + fc.getValue('sys_id'));
}
NotifyNow : getPreferredE164SMSNumber(utilisateur GlideRecord)
Renvoie le numéro de téléphone compatible E.164 préféré d’un utilisateur pour les messages SMS.
| Nom | Type | Description |
|---|---|---|
| utilisateur | GlideRecord ou chaîne | Enregistrement utilisateur ou sys_id d’un utilisateur à partir duquel obtenir le numéro de téléphone compatible E.164. |
| Type | Description |
|---|---|
| Chaîne | Numéro de téléphone conforme à la norme E.164 ou nul. |
var userID = "<user sys_id>";
var E164Number = new SNC.NotifyNow().getPreferredE164SMSNumber(userID);
gs.log('the preferred phone number for sending SMS notifications is ' + E164Number + ' for user with id: ' + userID);
NotifyNow : getPreferredE164VoiceNumber(utilisateur GlideRecord)
Renvoie le numéro de téléphone compatible E.164 préféré d’un utilisateur pour les appels vocaux.
| Nom | Type | Description |
|---|---|---|
| utilisateur | GlideRecord ou chaîne | Enregistrement utilisateur ou sys_id d’un utilisateur à partir duquel obtenir le numéro de téléphone compatible E.164. |
| Type | Description |
|---|---|
| Chaîne | Numéro de téléphone conforme à la norme E.164 ou nul. |
var userID = "<user sys_id>";
var E164Number = new SNC.NotifyNow().getPreferredE164VoiceNumber(userID);
gs.log('the preferred phone number for setting up voice calls is ' + E164Number + ' for user with id: ' + userID);
NotifyNow : getPreferredEmailAddress(utilisateur GlideRecord)
Renvoie l’adresse e-mail préférée d’un utilisateur
| Nom | Type | Description |
|---|---|---|
| utilisateur | GlideRecord ou chaîne | Enregistrement utilisateur ou sys_id d’un utilisateur à partir duquel obtenir l’adresse e-mail. |
| Type | Description |
|---|---|
| Chaîne | Adresse e-mail ou Null. |
var userID = "some user sys id";
var email = new SNC.NotifyNow().getPreferredEmailAddress(userID);
gs.log('the preferred email address for sending email notifications is ' + email + ' for user with id: ' + userID);
NotifyNow : getReadyState()
Indique si Notification est configurée correctement ou non.
Cette méthode n’est accessible qu’aux administrateurs ou aux utilisateurs disposant du rôle notifynow_admin. Les utilisateurs disposant de tous les autres rôles reçoivent le message Faux lorsqu’ils essaient d’exécuter la fonction dans un script.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Booléen | Vrai si Notification est configurée correctement, sinon faux. |
var nn = new SNC.NotifyNow();
gs.log(((nn.getReadyState()) ? "OK" : "NOT OK"));
NotifyNow : getStatus()
Renvoie l’état actuel de la configuration de Notification.
Cette méthode n’est accessible qu’aux administrateurs ou aux utilisateurs disposant du rôle notifynow_admin. Les utilisateurs ayant tous les autres rôles reçoivent le message Non autorisé lors de la tentative d’exécution de la fonction dans un script.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chaîne | Un des messages d’état possibles.
|
var nn = new SNC.NotifyNow();
gs.log(nn.getStatus());
NotifyNow : initiateConferenceCall(String[] conferenceCallParticipants, String conferenceCallTitle)
Lancer une nouvelle téléconférence.
| Nom | Type | Description |
|---|---|---|
| participants à la conférence | Chaîne | Un ou plusieurs utilisateurs, participants à une téléconférence, identifiés par le sys_ids à partir de la table sys_user ou de numéros de téléphone conformes E.164. |
| conferenceCallTitle | Chaîne | Titre de la téléconférence. Ce paramètre a une longueur maximale de 40 caractères. |
| Type | Description |
|---|---|
| GlideRecord | Enregistrement de la téléconférence ou nul en cas d’erreur. |
Cela lance une téléconférence avec des numéros de téléphone compatibles E.164 pour les participants, sans le paramètre optionnel d’enregistrement source et n’envoie aucun détail de téléconférence par SMS ou e-mail.
var participants = ['+31205655548', '+31205655552', '+31652825393'];
// set up conference call
var nn = new SNC.NotifyNow();
var conferenceCall = nn.initiateConferenceCall(participants, "testing12");
gs.log('started conference call: ' + conferenceCall.getUniqueValue()); NotifyNow : initiateConferenceCall(String[], conferenceCallParticipants, String, conferenceCallTitle, GlideRecord, sourceRecord, booléen, privé)
Lancer une nouvelle téléconférence.
| Nom | Type | Description |
|---|---|---|
| participants à la conférence | Chaîne | Un ou plusieurs utilisateurs, participants à une téléconférence, identifiés par le sys_ids à partir de la table sys_user ou de numéros de téléphone conformes E.164. |
| conferenceCallTitle | Chaîne | Titre de la téléconférence. Ce paramètre a une longueur maximale de 40 caractères. |
| sourceRecord | GlideRecord | Enregistrement source à associer à la téléconférence, tel qu’un numéro d’incident ou de problème. |
| privé | Booléen | Valeur permettant de contrôler si une téléconférence est privée. Cette valeur est définie par défaut sur faux. |
| Type | Description |
|---|---|
| GlideRecord | Enregistrement de la téléconférence ou nul en cas d’erreur. |
Une téléconférence est lancée avec les participants disposant d’un numéro de téléphone conforme E.164 et les participants de la table sys_user, et envoie les détails de la téléconférence par SMS et par e-mail à tous les participants.
// define phone number participants
var participants = ['+31205655548', '+31205655552', '+31652825393'];
// we also want to add two Dutch sys_user participants
var user = new GlideRecord('sys_user');
user.addNotNullQuery('mobile_phone');
user.addQuery('mobile_phone', 'STARTSWITH', '+316');
user.setLimit(2);
user.query();
// add users to the participant array
while (user.hasNext() && user.next()) {
gs.log('adding user ' + user.getValue('name') + ' with phone number ' +
user.getValue('mobile_phone') + ' to the participant array');
participants.push(user.getUniqueValue());
}
// define a source record to associate with the conference call
var source = new GlideRecord("cmdb_ci");
source.query("asset_tag", "P1000167");
if (source.hasNext() && source.next()) {
// set up conference call
var nn = new SNC.NotifyNow();
var conferenceCall = nn.initiateConferenceCall(participants, "testing 1 2", source);
// check if the conference call was successfully created
if (conferenceCall != null) {
gs.log('started conference call: ' + conferenceCall.getUniqueValue());
} else {
gs.log('could not start the conference call :(');
}
} NotifyNow : isCallable(String participant)
Détermine si un utilisateur peut être appelé ou non.
Un utilisateur doit avoir un numéro de téléphone valide pour pouvoir être appelé. Un utilisateur qui est déjà dans une session active ne peut pas être appelé.
| Nom | Type | Description |
|---|---|---|
| participant | String ou GlideRecord | Un enregistrement sys_user ou notifynow_participant ou un numéro de téléphone conforme E.164. |
| Type | Description |
|---|---|
| booléen | Indique si ce participant peut être appelé ou non. |
var nn = new SNC.NotifyNow();
gs.log('by number: ' + nn.isCallable('+31612345678'));
var user = GlideRecord('sys_user');
user.query('sys_id', '13d39544eb5201003cf587b9d106fea9');
if (user.hasNext() && user.next())
gs.log('by user: ' + nn.isCallable(user));
var participant = GlideRecord('notifynow_participant');
participant.query('sys_id', '33b11430eb1201003cf587b9d106feb9');
if (participant.hasNext() && participant.next())
gs.log('by participant: ' + nn.isCallable(participant));
NotifyNow : isSMSCapable()
Vérifie si le numéro de téléphone associé au compte Twilio est capable d’envoyer des messages SMS.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Booléen | Si le numéro de téléphone associé au compte Twilio est capable d’envoyer des messages SMS. |
gs.log('The twilio number is SMS capable: ' + ((new SNC.NotifyNow().isSMSCapable()) ? 'yes' : 'no'));
NotifyNow : isSMSCapable(String userID)
Vérifie si un utilisateur est en mesure d’envoyer des SMS.
| Nom | Type | Description |
|---|---|---|
| userID | Chaîne | Le sys_id de l’utilisateur dont vous souhaitez vérifier s’il existe un numéro de téléphone compatible avec les SMS. |
| Type | Description |
|---|---|
| Booléen | Si l’utilisateur peut envoyer des SMS. |
gs.log('the user is able to send SMS messages (e.g. has a SMS device): ' + ((new SNC.NotifyNow().isSMSCapable('<user sys_id>')) ?
'yes' : 'no'));
NotifyNow : isVoiceCapable()
Vérifie si le numéro de téléphone associé au compte Twilio est compatible avec les appels téléphoniques.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Booléen | Indique si le numéro de téléphone associé au compte Twilio est compatible avec les appels téléphoniques. |
gs.log('the Twilio number is Voice capable: ' + ((new SNC.NotifyNow().isVoiceCapable()) ? 'yes' : 'no'));
NotifyNow : isVoiceCapable(String userID)
Vérifie si un utilisateur est en mesure de passer des appels vocaux.
| Nom | Type | Description |
|---|---|---|
| userID | Chaîne | Le sys_id de l’utilisateur dont vous souhaitez vérifier s’il existe un numéro de téléphone compatible avec les appels vocaux. |
| Type | Description |
|---|---|
| booléen | Si l’utilisateur dispose d’un numéro de téléphone compatible avec les appels vocaux. |
gs.log('the user is able to send SMS messages (e.g. has a SMS device): ' +
((new SNC.NotifyNow().isVoiceCapable('someuserid')) ? 'yes' : 'no'));
NotifyNow : kick(participant GlideRecord)
Supprime un participant d’une téléconférence.
| Nom | Type | Description |
|---|---|---|
| participant | GlideRecord | Le participant à la téléconférence à supprimer de l’appel. |
| Type | Description |
|---|---|
| Booléen | Vrai si le participant a été supprimé, sinon faux. |
var participantId = "<participant sys_id>";
var participant = new GlideRecord('notifynow_participant');
participant.get(participantId);
if (participant.isValid()) {
// kick participant
result = new SNC.NotifyNow().kick(participant);
gs.log('participant kicked: ' + result);
}
NotifyNow : désactiver le son (participant GlideRecord)
Désactive le son d’un participant à une téléconférence.
| Nom | Type | Description |
|---|---|---|
| participant | GlideRecord | Le micro du participant à la téléconférence doit être mis en sourdine. |
| Type | Description |
|---|---|
| Booléen | Vrai si le micro du participant a été coupé, sinon faux. |
var participantId = "<participant sys_id>";
var participant = new GlideRecord('notifynow_participant');
participant.get(participantId);
if (participant.isValid()) {
// mute participant
result = new SNC.NotifyNow().mute(participant);
gs.log('participant muted: ' + result);
}
NotifyNow : sendEmailQuestion(String emailAddress, String question, GlideRecord sourceRecord, String emailSubject)
Envoyer une question par e-mail à une adresse e-mail.
La méthode sendEmailQuestion produit un corps de question et demande aux utilisateurs de cliquer sur un lien pour indiquer leur choix.
| Nom | Type | Description |
|---|---|---|
| emailAddress | Chaîne | Adresse e-mail à laquelle envoyer la question. |
| question | String ou GlideRecord | Enregistrement de question à envoyer ou sys_id d’un enregistrement de question. |
| sourceRecord | GlideRecord | Enregistrement source facultatif à associer à la question SMS, tel qu’un incident. |
| emailSubject | Chaîne | Texte facultatif pour remplacer l’objet de l’e-mail par défaut. |
| Type | Description |
|---|---|
| Chaîne | La conversation sys_id. |
Cet exemple illustre l’utilisation de l’objet d’e-mail par défaut.
var user = GlideRecord("sys_user");
user.get("email", "someone@somedomain.com");
new SNC.NotifyNow().sendEmailQuestion(user.getValue('email'), "b6b34500bf3111003cf585ce2c0739ce", user); Cet exemple utilise une remontée pas à pas et spécifie un enregistrement source et un objet d’e-mail.
new SNC.NotifyNow().sendEmailQuestion("someone@somedomain.com", "b6071733bf1111003cf585ce2c07390f", current,
"Please answer this question"); Cet exemple utilise la remontée pas à pas et spécifie un objet d’e-mail, mais pas d’enregistrement source.
new SNC.NotifyNow().sendEmailQuestion("someone@somedomain.com", "b6071733bf1111003cf585ce2c07390f",
"Please answer this question"); NotifyNow : sendSMS(String phoneNumber, String smsBody)
Envoie un message SMS à un numéro de téléphone mobile compatible E.164.
Notification prend en charge les numéros internationaux. L’utilisation de cette méthode avec un numéro qui ne prend pas en charge l’envoi de SMS entraîne la consignation d’une erreur.
| Nom | Type | Description |
|---|---|---|
| phoneNumber | Chaîne | Numéro de téléphone conforme E.164 auquel envoyer le message. |
| corps smsbody | Chaîne | Le message à envoyer, 1 600 caractères maximum. |
| Type | Description |
|---|---|
| nul |
new SNC.NotifyNow().sendSMS("+31612345678", "This is a message without source record");
NotifyNow : sendSMS(String phoneNumber, String smsBody, source GlideRecord)
Envoie un message SMS à un numéro de téléphone mobile compatible E.164.
Notification prend en charge les numéros internationaux. L’utilisation de cette méthode avec un numéro qui ne prend pas en charge l’envoi de SMS entraîne la consignation d’une erreur.
Voir aussi : Configuration avancée pour SMS.
| Nom | Type | Description |
|---|---|---|
| phoneNumber | Chaîne | Numéro de téléphone conforme E.164 auquel envoyer le message. |
| corps smsbody | Chaîne | Le message à envoyer, 1 600 caractères maximum. |
| source | GlideRecord | Enregistrement source à associer à ce message SMS. |
| Type | Description |
|---|---|
| nul |
var source = new GlideRecord("my_table");
source.query("my_field", "my_value");
if (source.hasNext() && source.next()) {
// send a text message
var nn = new SNC.NotifyNow();
var message = "this is just a test";
var number = "+31612345678";
nn.sendSMS(number, message, source);
}
Cet exemple utilise la remontée pas à pas et l’enregistrement actuel comme enregistrement source.
new SNC.NotifyNow().sendSMS("+31612345678", "this is a test", current);
NotifyNow : sendSMSQuestion(String phoneNumber, String question, GlideRecord sourceRecord)
Envoie une question par SMS.
| Nom | Type | Description |
|---|---|---|
| phoneNumber | Numéro de téléphone conforme E.164 auquel envoyer le message. | |
| question | String ou GlideRecord | Enregistrement de question à envoyer ou sys_id d’un enregistrement de question. |
| sourceRecord | Enregistrement source facultatif à associer à la question SMS, tel qu’un incident. |
| Type | Description |
|---|---|
| Chaîne | La conversation sys_id ou nulle si le SMS n’a pas été envoyé avec succès. |
var question = new GlideRecord("notifynow_question");
question.query();
// get the first question
if (question.hasNext() && question.next()) {
// send the sms question
var number = "+31612345678";
var nn = new SNC.NotifyNow();
nn.sendSMSQuestion(number, question.getUniqueValue(), current);
}
NotifyNow : umute(participant GlideRecord)
Active le micro d’un participant lors d’une téléconférence.
| Nom | Type | Description |
|---|---|---|
| participant | GlideRecord | Le micro désactivé du participant à la téléconférence doit être activé. |
| Type | Description |
|---|---|
| Booléen | Vrai si le micro du participant a été activé, sinon faux. |
var participantId = "<participant sys_id>";
var participant = new GlideRecord('notifynow_participant');
participant.get(participantId);
if (participant.isValid()) {
// unmute participant
result = new SNC.NotifyNow().unmute(participant);
gs.log('participant unmuted: ' + result);
}