NotifyNow (Legado) - Global

  • Versão de lançamento: Washingtondc
  • Atualizado 1 de fev. de 2024
  • 14 min. de leitura
  • A API NotifyNow legada fornece funcionalidade para enviar e-mails, enviar mensagens SMS e configurar chamadas em conferência.

    Use isso quando quiser usar a funcionalidade Notify com aplicações em seu sistema.
    Nota:
    Esta API está incluída com a funcionalidade Notify legada. Para APIs incluídas no recurso Notify atual, consulte as APIs Notify, NotifyAction, NotifyPhoneNumbere NotifyClient.

    NotifyNow - addConferenceCallParticipant(String conferenceCall, String participant)

    Adiciona usuários ad-hoc a uma chamada em conferência em andamento.

    Quando o método é chamado com um número de telefone para o parâmetro do participante e há exatamente um registro sys_user que corresponde ao número de telefone, esse registro sys_user será relacionado ao participante. O campo de número de telefone do participante será deixado em branco porque o número de telefone está no registro sys_user. Se houver vários registros sys_user que correspondam ao número de telefone, ou se não houver resultados, o campo de número de telefone do participante será preenchido e não haverá referência armazenada a sys_user porque o usuário não é conhecido.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    ConferenceCall String ou GlideRecord O sys_id ou GlideRecord de uma chamada em conferência ativa.
    participante String ou GlideRecord O sys_id ou GlideRecord de um usuário com um número de telefone compatível com E.164 ou um número de telefone compatível com E.164.
    Tabela 2. Retorna
    Tipo Descrição
    GlideRecord O registro de participante do novo participante que foi adicionado à chamada em conferência.
    // 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 - getReadyState ()

    Indica se o Notify está configurado corretamente ou não.

    Este método só pode ser acessado por administradores ou usuários com a função notifynow_admin. Usuários com todas as outras funções recebem a mensagem False ao tentar executar a função em um script.

    Tabela 3. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 4. Retorna
    Tipo Descrição
    Booliano Verdadeiro se o Notify estiver configurado corretamente, caso contrário, falso.
    var nn = new SNC.NotifyNow();
    gs.log(((nn.getReadyState()) ? "OK" :  "NOT OK"));

    NotifyNow - getStatus ()

    Retorna o status atual da configuração do Notify.

    Este método só pode ser acessado por administradores ou usuários com a função notifynow_admin. Usuários com todas as outras funções recebem a mensagem Não autorizado ao tentar executar a função em um script.

    Tabela 5. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 6. Retorna
    Tipo Descrição
    Cadeia de caracteres Uma das mensagens de status possíveis.
    Status Descrição
    NO_NUMBER_MESSAGE A conta não tem um número de telefone configurado. Certifique-se de configurar o número de telefone para a conta.
    NO_ENDPOINTS_MESSAGE A conta não tem seus endpoints configurados corretamente. Certifique-se de configurar os endpoints para a conta.
    ACCOUNT_OK_MESSAGE A conta está ativa e pronta para uso.
    ACCOUNT_NO_AUTH O AuthToken do Twilio não é válido.
    ACCOUNT_NOT_CONFIGURED O AccountSID ou AuthToken do Twilio não são válidos.
    var nn = new SNC.NotifyNow();
    gs.log(nn.getStatus());

    NotifyNow - InitteConferenceCall (Cadeia de caracteres [] conferenceCallParticipants, Cadeia de caracteres conferenceCallTitle)

    Iniciar nova chamada em conferência.

    Tabela 7. Parâmetros
    Nome Tipo Descrição
    conferenceCallParticipants Cadeia de caracteres Um ou mais usuários, participantes da chamada de conferência, identificados pelo sys_ids na tabela sys_user ou números de telefone compatíveis com E.164.
    conferenceCallTitle Cadeia de caracteres Título da chamada em conferência. Este parâmetro tem um tamanho máximo de 40 caracteres.
    Tabela 8. Retorna
    Tipo Descrição
    GlideRecord O registro da chamada em conferência, ou nulo se houve um erro.

    Isso inicia uma chamada de conferência com números de telefone compatíveis com E.164 para os participantes, sem o parâmetro de registro de origem opcional e não envia detalhes da chamada em conferência por 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 - InitteConferenceCall (Cadeia de caracteres [] conferenceCallParticipants, Cadeia de caracteres conferenceCallTitle, GlideRecord sourceRecord, Booliano privado)

    Iniciar nova chamada em conferência.

    Tabela 9. Parâmetros
    Nome Tipo Descrição
    conferenceCallParticipants Cadeia de caracteres Um ou mais usuários, participantes da chamada de conferência, identificados pelo sys_ids na tabela sys_user ou números de telefone compatíveis com E.164.
    conferenceCallTitle Cadeia de caracteres Título da chamada em conferência. Este parâmetro tem um tamanho máximo de 40 caracteres.
    sourceRecord GlideRecord Registro de origem para associar à chamada em conferência, como um número de incidente ou problema.
    privado Booliano Valor para controlar se uma chamada em conferência é privada. O valor fica falso por padrão.
    Tabela 10. Retorna
    Tipo Descrição
    GlideRecord O registro da chamada em conferência, ou nulo se houve um erro.

    Isso inicia uma chamada em conferência com participantes que têm um número de telefone compatível com E.164 e participantes da tabela sys_user e envia detalhes da chamada em conferência por SMS e e-mail para todos os participantes.

    // 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(participante String)

    Determina se um usuário pode ser chamado ou não.

    Um usuário deve ter um número de telefone válido para ser chamado. Um usuário que já está em uma sessão ativa não pode ser chamado.

    Tabela 11. Parâmetros
    Nome Tipo Descrição
    participante String ou GlideRecord Um registro sys_user ou notifynow_participant, ou um número de telefone compatível com E.164.
    Tabela 12. Retorna
    Tipo Descrição
    booliano Se este participante pode ser chamado ou não.
    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 ()

    Verifica se o número de telefone associado à conta do Twilio é capaz de enviar mensagens SMS.

    Tabela 13. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 14. Retorna
    Tipo Descrição
    Booliano Se o número de telefone associado à conta do Twilio é capaz de enviar mensagens SMS.
    gs.log('The twilio number is SMS capable: ' + ((new SNC.NotifyNow().isSMSCapable()) ? 'yes' : 'no'));

    NotifyNow - isSMSCapable(String userID)

    Verifica se um usuário pode enviar mensagens SMS.

    Tabela 15. Parâmetros
    Nome Tipo Descrição
    userID Cadeia de caracteres O sys_id do usuário para o qual você deseja verificar um número de telefone compatível com SMS.
    Tabela 16. Retorna
    Tipo Descrição
    Booliano Se o usuário pode enviar mensagens 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()

    Verifica se o número de telefone associado à conta do Twilio é capaz de configurar chamadas por telefone.

    Tabela 17. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 18. Retorna
    Tipo Descrição
    Booliano Se o número de telefone associado à conta do Twilio é capaz de configurar chamadas por telefone.
    gs.log('the Twilio number is Voice capable: ' + ((new SNC.NotifyNow().isVoiceCapable()) ? 'yes' : 'no'));

    NotifyNow - isVoiceCapable(String userID)

    Verifica se um usuário pode fazer chamadas de voz.

    Tabela 19. Parâmetros
    Nome Tipo Descrição
    userID Cadeia de caracteres O sys_id do usuário para o qual você deseja verificar um número de telefone compatível com chamada de voz.
    Tabela 20. Retorna
    Tipo Descrição
    booliano Se o usuário tem um número de telefone compatível com chamada de voz.
    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(participante GlideRecord)

    Remove um participante de uma chamada em conferência.

    Tabela 21. Parâmetros
    Nome Tipo Descrição
    participante GlideRecord O participante da chamada em conferência a ser removido da chamada.
    Tabela 22. Retorna
    Tipo Descrição
    Booliano Verdadeiro se o participante foi removido, caso contrário, falso.
    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 - mute(participante GlideRecord)

    Ativa o mudo para um participante da chamada em conferência.

    Tabela 23. Parâmetros
    Nome Tipo Descrição
    participante GlideRecord O participante da chamada em conferência a ser silenciado na chamada.
    Tabela 24. Retorna
    Tipo Descrição
    Booliano Verdadeiro se o participante foi silenciado, caso contrário, falso.
    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 - umute(participante GlideRecord)

    Desativa o mudo para um participante da chamada em conferência.

    Tabela 25. Parâmetros
    Nome Tipo Descrição
    participante GlideRecord O participante da chamada em conferência a ter o microfone reativado na chamada.
    Tabela 26. Retorna
    Tipo Descrição
    Booliano Verdadeiro se o participante foi teve o microfone reativado, caso contrário, falso.
    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);
    }

    NotifyNow - sendEmailQuestion (String emailAddress, String question, GlideRecord sourceRecord, String emailSubject)

    Envia uma pergunta por e-mail para um endereço de e-mail.

    O método sendEmailQuestion produz um corpo de pergunta e requer que os usuários cliquem em um link para indicar suas escolhas.

    Tabela 27. Parâmetros
    Nome Tipo Descrição
    e-mailAddress Cadeia de caracteres Endereço de e-mail para o qual a pergunta será enviada.
    pergunta String ou GlideRecord O registro de pergunta a ser enviado ou o sys_id de um registro de pergunta.
    sourceRecord GlideRecord Um registro de origem opcional para associar à pergunta do SMS, como um incidente.
    emailSubject Cadeia de caracteres Texto opcional para substituir o assunto do e-mail padrão.
    Tabela 28. Retorna
    Tipo Descrição
    Cadeia de caracteres O sys_id da conversa.

    Este exemplo demonstra o uso do assunto de e-mail padrão.

    var user = GlideRecord("sys_user");
    user.get("email", "someone@somedomain.com");
     
    new SNC.NotifyNow().sendEmailQuestion(user.getValue('email'), "b6b34500bf3111003cf585ce2c0739ce", user);

    Este exemplo usa referência com pontos e especifica um registro de origem e o assunto de e-mail.

    new SNC.NotifyNow().sendEmailQuestion("someone@somedomain.com", "b6071733bf1111003cf585ce2c07390f", current, 
            "Please answer this question");

    Este exemplo usa referência com pontos e especifica um assunto de e-mail mas nenhum registro de origem.

    new SNC.NotifyNow().sendEmailQuestion("someone@somedomain.com", "b6071733bf1111003cf585ce2c07390f", 
            "Please answer this question");

    NotifyNow - sendSMS(String phoneNumber, String smsBody)

    Envia uma mensagem SMS para um número de telefone celular compatível com E.164.

    O Notify oferece suporte a números internacionais. Usar este método com um número que não é compatível com o envio de mensagens SMS resulta em um erro sendo registrado.

    Tabela 29. Parâmetros
    Nome Tipo Descrição
    phoneNumber Cadeia de caracteres O número de telefone compatível com E.164 para o qual enviar a mensagem.
    smsBody Cadeia de caracteres A mensagem a ser enviada, máximo de 1600 caracteres.
    Tabela 30. Retorna
    Tipo Descrição
    vazio
    new SNC.NotifyNow().sendSMS("+31612345678", "This is a message without source record");

    NotifyNow - sendSMS(String phoneNumber, String smsBody, GlideRecord source)

    Envia uma mensagem SMS para um número de telefone celular compatível com E.164.

    O Notify oferece suporte a números internacionais. Usar este método com um número que não é compatível com o envio de mensagens SMS resulta em um erro sendo registrado.

    Veja também: Configuração avançada de SMS.

    Tabela 31. Parâmetros
    Nome Tipo Descrição
    phoneNumber Cadeia de caracteres O número de telefone compatível com E.164 para o qual enviar a mensagem.
    smsBody Cadeia de caracteres A mensagem a ser enviada, máximo de 1600 caracteres.
    origem GlideRecord O registro de origem a ser associado a esta mensagem SMS.
    Tabela 32. Retorna
    Tipo Descrição
    vazio
    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);
    }

    Este exemplo usa referência com pontos e o registro atual como o registro de origem.

    new SNC.NotifyNow().sendSMS("+31612345678", "this is a test", current);

    NotifyNow - sendSMSQuestion(String phoneNumber, String question, GlideRecord sourceRecord)

    Envia uma pergunta por SMS.

    Tabela 33. Parâmetros
    Nome Tipo Descrição
    phoneNumber Um número de telefone compatível com E.164 para o qual enviar a mensagem.
    pergunta String ou GlideRecord O registro de pergunta a ser enviado ou o sys_id de um registro de pergunta.
    sourceRecord Um registro de origem opcional para associar à pergunta do SMS, como um incidente.
    Tabela 34. Retorna
    Tipo Descrição
    Cadeia de caracteres O sys_id da conversa ou nulo se o SMS não foi enviado com sucesso.
    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 - convertLocalPhoneNumberToE164(String userID, String phoneNumber)

    Converte um número de telefone local em um número de telefone compatível com E.164 com base na localização do usuário.

    Tabela 35. Parâmetros
    Nome Tipo Descrição
    userID Cadeia de caracteres O sys_id de um registro sys_user do qual as informações de local serão obtidas.
    phoneNumber Cadeia de caracteres O número de telefone.
    Tabela 36. Retorna
    Tipo Descrição
    Cadeia de caracteres O número de telefone compatível com 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, Boolean isCallable)

    Retorna todos os participantes de uma chamada em conferência.

    Tabela 37. Parâmetros
    Nome Tipo Descrição
    ConferenceCallId Cadeia de caracteres O ID da chamada em conferência.
    isCallable Booliano Um sinalizador opcional para retornar somente os usuários que você pode chamar (verdadeiro) ou aqueles que você não pode chamar (falso).
    Tabela 38. Retorna
    Tipo Descrição
    GlideRecord Os participantes
    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 - getFrequentlyCalledUsers(Number limit)

    Retorna um número de usuários chamados com frequência, até o parâmetro de limite, em ordem alfabética.

    Tabela 39. Parâmetros
    Nome Tipo Descrição
    limite Número Número máximo de resultados.
    Tabela 40. Retorna
    Tipo Descrição
    GlideRecord Os usuários chamados com frequência em ordem alfabética.
    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(usuário GlideRecord)

    Retorna o número de telefone compatível com E.164 preferencial do usuário para mensagens SMS.

    Tabela 41. Parâmetros
    Nome Tipo Descrição
    usuário GlideRecord ou String O registro do usuário ou o sys_id de um usuário do qual o número de telefone compatível com E.164 será obtido.
    Tabela 42. Retorna
    Tipo Descrição
    Cadeia de caracteres O número de telefone compatível com E.164 ou nulo.
    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(usuário de GlideRecord)

    Retorna o número de telefone compatível com E.164 preferencial do usuário para chamadas de voz.

    Tabela 43. Parâmetros
    Nome Tipo Descrição
    usuário GlideRecord ou String O registro do usuário ou o sys_id de um usuário do qual o número de telefone compatível com E.164 será obtido.
    Tabela 44. Retorna
    Tipo Descrição
    Cadeia de caracteres O número de telefone compatível com E.164 ou nulo.
    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(usuário GlideRecord)

    Retorna o endereço de e-mail preferido pelo usuário

    Tabela 45. Parâmetros
    Nome Tipo Descrição
    usuário GlideRecord ou String O registro do usuário ou o sys_id de um usuário do qual o endereço de e-mail será obtido.
    Tabela 46. Retorna
    Tipo Descrição
    Cadeia de caracteres O endereço de e-mail ou nulo.
    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);