NotifyNow(레거시) - 전역

  • 릴리스 버전: Washingtondc
  • 업데이트 날짜 2024년 02월 01일
  • 읽기25분
  • 레거시 NotifyNow API는 이메일 보내기, SMS 메시지 보내기, 전화 회의 설정 기능을 제공합니다.

    시스템의 애플리케이션에서 Notify 기능을 사용하려는 경우 사용합니다.
    주:
    이 API는 레거시 알림 기능에 포함되어 있습니다. 현재 Notify 기능에 포함된 API는 Notify, NotifyAction, NotifyPhoneNumberNotifyClient API를 참조하세요.

    NotifyNow - addConferenceCallParticipant(문자열 conferenceCall, 문자열 참가자)

    진행 중인 전화 회의에 임시 사용자를 추가합니다.

    참가자 매개 변수에 대한 전화 번호를 사용하여 메서드가 호출되고 전화 번호와 일치하는 sys_user 레코드가 정확히 하나라도 있는 경우 해당 sys_user 레코드는 참가자와 관련됩니다. 전화 번호가 sys_user 기록에 있기 때문에 참가자의 전화 번호 필드는 비어 있게 됩니다. 전화 번호와 일치하는 sys_user 기록이 여러 개 있거나 결과가 없는 경우 참가자의 전화 번호 필드가 채워지고 사용자를 알 수 없기 때문에 sys_user에 대한 참조가 저장되지 않습니다.

    표 1. 매개변수
    이름 유형 설명
    conferenceCall 문자열 또는 GlideRecord 활성 전화 회의의 sys_id 또는 GlideRecord입니다.
    참가자 문자열 또는 GlideRecord E.164 호환 전화 번호 또는 E.164 호환 전화 번호를 가진 사용자의 sys_id 또는 GlideRecord
    표 2. 반환
    유형 설명
    GlideRecord 전화 회의에 추가된 새 참가자의 참가자 기록입니다.
    // 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()

    알림이 올바르게 설정되었는지 여부를 나타냅니다.

    이 방법은 관리자 또는 notifynow_admin 역할을 가진 사용자만 액세스할 수 있습니다. 다른 모든 역할을 가진 사용자는 스크립트에서 함수를 실행하려고 할 때 False 메시지가 표시됩니다.

    표 3. 매개변수
    이름 유형 설명
    없음
    표 4. 반환
    유형 설명
    부울 알림이 올바르게 설정되었으면 True, 그렇지 않은 경우에는 False입니다.
    var nn = new SNC.NotifyNow();
    gs.log(((nn.getReadyState()) ? "OK" :  "NOT OK"));

    NotifyNow - getStatus()

    알림 구성의 현재 상태를 반환합니다.

    이 방법은 관리자 또는 notifynow_admin 역할을 가진 사용자만 액세스할 수 있습니다. 다른 모든 역할을 가진 사용자는 스크립트에서 함수를 실행하려고 할 때 권한 없음 메시지가 표시됩니다.

    표 5. 매개변수
    이름 유형 설명
    없음
    표 6. 반환
    유형 설명
    문자열 가능한 상태 메시지 중 하나입니다.
    상태 설명
    NO_NUMBER_MESSAGE 계정에 전화 번호가 설정되어 있지 않습니다. 계정에 대한 전화 번호를 설정해야 합니다.
    NO_ENDPOINTS_MESSAGE 계정의 엔드포인트가 올바르게 설정되어 있지 않습니다. 계정에 대한 엔드포인트를 설정해야 합니다.
    ACCOUNT_OK_MESSAGE 계정이 활성 상태이며 사용할 준비가 되었습니다.
    ACCOUNT_NO_AUTH Twilio AuthToken이 잘못되었습니다.
    ACCOUNT_NOT_CONFIGURED Twilio AccountSID 또는 AuthToken이 잘못되었습니다.
    var nn = new SNC.NotifyNow();
    gs.log(nn.getStatus());

    NotifyNow - initiateConferenceCall(String[] conferenceCallParticipants, string conferenceCallTitle)

    새 전화 회의를 시작합니다.

    표 7. 매개변수
    이름 유형 설명
    conferenceCallParticipants 문자열 sys_user 테이블 또는 E.164 호환 전화 번호의 sys_ids으로 식별되는 한 명 이상의 사용자, 전화 회의 참가자입니다.
    conferenceCallTitle (영문) 문자열 전화 회의의 제목입니다. 이 매개변수의 최대 길이는 40자입니다.
    표 8. 반환
    유형 설명
    GlideRecord 전화 회의 기록이거나 오류가 있는 경우 null입니다.

    이렇게 하면 선택적 소스 기록 매개변수 없이 참가자에 대해 E.164 호환 전화 번호로 전화 회의가 시작되고 SMS 또는 이메일을 통해 전화 회의 세부 정보를 보내지 않습니다.

    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, Boolean private)

    새 전화 회의를 시작합니다.

    표 9. 매개변수
    이름 유형 설명
    conferenceCallParticipants 문자열 sys_user 테이블 또는 E.164 호환 전화 번호의 sys_ids으로 식별되는 한 명 이상의 사용자, 전화 회의 참가자입니다.
    conferenceCallTitle (영문) 문자열 전화 회의의 제목입니다. 이 매개변수의 최대 길이는 40자입니다.
    sourceRecord GlideRecord 인시던트 또는 문제 번호와 같은 전화 회의에 연결할 소스 기록입니다.
    개인 부울 전화 회의가 비공개인지 제어하는 값입니다. 기본값은 false입니다.
    표 10. 반환
    유형 설명
    GlideRecord 전화 회의 기록이거나 오류가 있는 경우 null입니다.

    이렇게 하면 E.164 호환 전화 번호가 있는 참가자 및 sys_user 테이블의 참가자와 전화 회의를 시작하고 SMS 및 이메일을 통해 모든 참가자에게 전화 회의 세부 정보를 보냅니다.

    // 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(문자열 참가자)

    사용자가 호출 가능한지 여부를 결정합니다.

    사용자에게 전화를 걸 수 있는 유효한 전화 번호가 있어야 합니다. 이미 활성 세션에 있는 사용자는 호출할 수 없습니다.

    표 11. 매개변수
    이름 유형 설명
    참가자 문자열 또는 GlideRecord sys_user 또는 notifynow_participant 레코드 또는 E.164 호환 전화 번호.
    표 12. 반환
    유형 설명
    부울 이 참가자를 호출할 수 있는지 여부입니다.
    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()

    Twilio 계정과 연결된 전화 번호가 SMS 메시지를 보낼 수 있는지 확인합니다.

    표 13. 매개변수
    이름 유형 설명
    없음
    표 14. 반환
    유형 설명
    부울 Twilio 계정과 연결된 전화 번호가 SMS 메시지를 보낼 수 있는지 여부입니다.
    gs.log('The twilio number is SMS capable: ' + ((new SNC.NotifyNow().isSMSCapable()) ? 'yes' : 'no'));

    NotifyNow - isSMSCapable(문자열 userID)

    사용자가 SMS 메시지를 보낼 수 있는지 확인합니다.

    표 15. 매개변수
    이름 유형 설명
    userID 문자열 SMS 지원 전화 번호를 확인하려는 사용자의 sys_id입니다.
    표 16. 반환
    유형 설명
    부울 사용자가 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()

    Twilio 계정과 연결된 전화 번호가 전화 통화를 설정할 수 있는지 확인합니다.

    표 17. 매개변수
    이름 유형 설명
    없음
    표 18. 반환
    유형 설명
    부울 Twilio 계정과 연결된 전화 번호가 전화 통화를 설정할 수 있는지 여부입니다.
    gs.log('the Twilio number is Voice capable: ' + ((new SNC.NotifyNow().isVoiceCapable()) ? 'yes' : 'no'));

    NotifyNow - isVoiceCapable(문자열 userID)

    사용자가 음성 통화를 할 수 있는지 확인합니다.

    표 19. 매개변수
    이름 유형 설명
    userID 문자열 음성 통화가 가능한 전화 번호를 확인하려는 사용자의 sys_id입니다.
    표 20. 반환
    유형 설명
    부울 사용자에게 음성 통화 가능 전화 번호가 있는지 여부입니다.
    gs.log('the user is able to send SMS messages (e.g. has a SMS device): ' + 
         ((new SNC.NotifyNow().isVoiceCapable('someuserid')) ? 'yes' : 'no'));

    NotifyNow - 킥(GlideRecord 참가자)

    전화 회의에서 참가자를 제거합니다.

    표 21. 매개변수
    이름 유형 설명
    참가자 GlideRecord 통화에서 제거할 전화 회의 참가자입니다.
    표 22. 반환
    유형 설명
    부울 참가자가 제거되면 True이고, 그렇지 않은 경우에는 False입니다.
    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 - 음소거(GlideRecord 참가자)

    전화 회의 중 참가자를 음소거합니다.

    표 23. 매개변수
    이름 유형 설명
    참가자 GlideRecord 음소거할 컨퍼런스 회의 참가자입니다.
    표 24. 반환
    유형 설명
    부울 참가자가 음소거 된 경우 True, 그렇지 않은 경우 False입니다.
    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(GlideRecord 참가자)

    전화 회의에서 참가자의 음소거를 해제합니다.

    표 25. 매개변수
    이름 유형 설명
    참가자 GlideRecord 음소거된 컨퍼런스 회의 참가자의 음소거를 해제합니다.
    표 26. 반환
    유형 설명
    부울 참가자가 음소거 해제된 경우 True이고, 그렇지 않은 경우에는 False입니다.
    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(문자열 emailAddress, 문자열 질문, GlideRecord sourceRecord, 문자열 emailSubject)

    이메일 주소로 이메일 질문을 보냅니다.

    sendEmailQuestion 메서드는 질문 본문을 생성하고 사용자가 링크를 클릭하여 선택 항목을 나타내도록 요구합니다.

    표 27. 매개변수
    이름 유형 설명
    emailAddress 문자열 질문을 보낼 이메일 주소입니다.
    질문 문자열 또는 GlideRecord 보낼 질문 기록 또는 질문 기록의 sys_id입니다.
    sourceRecord GlideRecord 인시던트와 같이 SMS 질문에 연결할 선택적 소스 기록입니다.
    email제목 문자열 기본 이메일 제목을 재정의하는 선택적 텍스트입니다.
    표 28. 반환
    유형 설명
    문자열 대화가 sys_id.

    이 예제에서는 기본 이메일 제목을 사용하는 방법을 보여 줍니다.

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

    이 예시에서는 닷워킹을 사용하고 원본 기록과 이메일 제목을 지정합니다.

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

    이 예시에서는 닷워킹을 사용하고 이메일 제목을 지정하지만 소스 기록은 지정하지 않습니다.

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

    NotifyNow - sendSMS(문자열 phoneNumber, 문자열 smsBody)

    E.164와 호환되는 휴대폰 번호로 SMS 메시지를 보냅니다.

    Notify는 국제 번호를 지원합니다. SMS 메시지 전송을 지원하지 않는 번호와 함께 이 방법을 사용하면 오류가 기록됩니다.

    표 29. 매개변수
    이름 유형 설명
    phoneNumber 문자열 메시지를 보낼 E.164 호환 전화 번호입니다.
    sms본문 문자열 보낼 메시지는 최대 1600자입니다.
    표 30. 반환
    유형 설명
    void
    new SNC.NotifyNow().sendSMS("+31612345678", "This is a message without source record");

    NotifyNow - sendSMS(문자열 phoneNumber, 문자열 smsBody, GlideRecord 소스)

    E.164와 호환되는 휴대폰 번호로 SMS 메시지를 보냅니다.

    Notify는 국제 번호를 지원합니다. SMS 메시지 전송을 지원하지 않는 번호와 함께 이 방법을 사용하면 오류가 기록됩니다.

    참고 항목: SMS에 대한 고급 구성

    표 31. 매개변수
    이름 유형 설명
    phoneNumber 문자열 메시지를 보낼 E.164 호환 전화 번호입니다.
    sms본문 문자열 보낼 메시지는 최대 1600자입니다.
    소스 GlideRecord 이 SMS 메시지와 연결할 소스 기록입니다.
    표 32. 반환
    유형 설명
    void
    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);
    }

    이 예시에서는 닷워킹과 현재 기록을 소스 기록으로 사용합니다.

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

    NotifyNow - sendSMSQuestion(문자열 phoneNumber, 문자열 질문, GlideRecord sourceRecord)

    SMS 질문을 보냅니다.

    표 33. 매개변수
    이름 유형 설명
    phoneNumber 메시지를 보낼 E.164 호환 전화 번호입니다.
    질문 문자열 또는 GlideRecord 보낼 질문 기록 또는 질문 기록의 sys_id입니다.
    sourceRecord 인시던트와 같이 SMS 질문에 연결할 선택적 소스 기록입니다.
    표 34. 반환
    유형 설명
    문자열 대화가 sys_id거나, SMS가 성공적으로 전송되지 않은 경우 null입니다.
    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(문자열 userID, 문자열 phoneNumber)

    사용자의 위치에 따라 로컬 전화 번호를 E.164 호환 전화 번호로 변환합니다.

    표 35. 매개변수
    이름 유형 설명
    userID 문자열 위치 정보를 가져올 sys_user 기록의 sys_id입니다.
    phoneNumber 문자열 전화 번호입니다.
    표 36. 반환
    유형 설명
    문자열 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)

    전화 회의의 모든 참가자를 반환합니다.

    표 37. 매개변수
    이름 유형 설명
    컨퍼런스 콜 ID 문자열 전화 회의의 ID입니다.
    isCallable 부울 호출할 수 있는 사용자(예) 또는 호출할 수 없는 사용자(아니오)만 반환하는 선택적 플래그입니다.
    표 38. 반환
    유형 설명
    GlideRecord 참가자
    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);

    알림 - getFrequentlyCalledUsers(수 제한)

    limit 매개변수까지 자주 호출되는 사용자 수를 알파벳 순서로 반환합니다.

    표 39. 매개변수
    이름 유형 설명
    제한 번호 최대 결과 수입니다.
    표 40. 반환
    유형 설명
    GlideRecord 자주 호출되는 사용자를 알파벳 순으로 표시합니다.
    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(GlideRecord 사용자)

    SMS 메시지에 대해 사용자가 선호하는 E.164 호환 전화 번호를 반환합니다.

    표 41. 매개변수
    이름 유형 설명
    사용자 GlideRecord 또는 String E.164 호환 전화 번호를 가져올 사용자의 사용자 기록 또는 sys_id입니다.
    표 42. 반환
    유형 설명
    문자열 E.164 규격 전화 번호 또는 null입니다.
    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(GlideRecord 사용자)

    음성 호출을 위한 사용자의 기본 E.164 호환 전화 번호를 반환합니다.

    표 43. 매개변수
    이름 유형 설명
    사용자 GlideRecord 또는 String E.164 호환 전화 번호를 가져올 사용자의 사용자 기록 또는 sys_id입니다.
    표 44. 반환
    유형 설명
    문자열 E.164 규격 전화 번호 또는 null입니다.
    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(GlideRecord 사용자)

    사용자의 기본 이메일 주소를 반환합니다.

    표 45. 매개변수
    이름 유형 설명
    사용자 GlideRecord 또는 String 이메일 주소를 가져올 사용자의 사용자 기록 또는 sys_id입니다.
    표 46. 반환
    유형 설명
    문자열 이메일 주소 또는 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);