aws

AWS SNS(Amazon Simple Notification Service) SMS

C/H 2019. 4. 2. 09:49

AWS SMS

  • AWS 설명서 » Amazon SNS » 개발자 안내서 » 사용자 알림에 Amazon SNS 사용 » 휴대폰 번호가 구독자인 경우 사용자 알림에 Amazon SNS 사용(SMS 전송) » SMS 메시징 기본 설정 지정

지원되는 리전

  • AWS 설명서 » Amazon SNS » 개발자 안내서 » 사용자 알림에 Amazon SNS 사용 » 휴대폰 번호가 구독자인 경우 사용자 알림에 Amazon SNS 사용(SMS 전송) » 지원되는 리전 및 국가

 

요금

전송

  • AWS 설명서 » Amazon SNS » 개발자 안내서 » Amazon SNS 작동 방식 » Amazon SNS 메시지 전송 상태
    • Amazon SNS는 다음 Amazon SNS 엔드포인트가 있는 주제에 전송된 알림 메시지의 전송 상태를 로깅하기 위한 지원을 제공합니다.
      • 애플리케이션
      • HTTP
      • Lambda
      • SQS
    • 메시지 전송 상태 속성을 구성하면 Amazon SNS 엔드포인트를 구독하는 주제에 전송된 메시지에 대한 로그 항목이 CloudWatch Logs에 전송됩니다. 메시지 전송 상태를 로깅하면 다음과 같이 더욱 확장된 운영 이해를 제공할 수 있습니다.
      • 메시지가 Amazon SNS 엔드포인트에 전송되었는지 확인
      • Amazon SNS 엔드포인트에서 Amazon SNS로 전송된 응답 식별
      • 메시지 유지 시간(게시 타임스탬프 시간부터 Amazon SNS 엔드포인트에 넘겨주기 직전까지의 시간) 결정
    • 메시지 전송 상태에 맞게 주제 속성을 구성하려면 AWS Management 콘솔, AWS 소프트웨어 개발 키트(SDK) 또는 쿼리 API를 사용할 수 있습니다.
  • AWS 설명서 » Amazon SNS » 개발자 안내서 » 사용자 알림에 Amazon SNS 사용 » 휴대폰 번호가 구독자인 경우 사용자 알림에 Amazon SNS 사용(SMS 전송) » SMS 활동 모니터링 » Amazon CloudWatch 측정치 및 SMS 전송 로그 보기
    • Amazon SNS는 SMS 메시지 전송에 대한 측정치를 자동으로 수집하고 Amazon CloudWatch에 푸시합니다. CloudWatch를 사용하여 이러한 측정치를 모니터링하고 측정치가 임계값을 초과할 때 알리는 경보를 생성할 수 있습니다. 예를 들어 측정치를 모니터링하여 사용자의 SMS 전송 속도와 당월 누적 SMS 요금을 알아볼 수 있습니다.
    • CloudWatch 측정치 모니터링, CloudWatch 경보 설정, 사용 가능한 측정치 유형에 대한 자세한 내용은 CloudWatch를 사용하여 Amazon SNS 주제 모니터링 단원을 참조하십시오.

한글

Node.js

Conclose

Code

config.json

{
  "accessKeyId": "{accessKeyId}",
  "secretAccessKey": "{secretAccessKey}",
  "region": "ap-northeast-1"
}

SDK for JavaScript 설치

npm i aws-sdk

aws-doc-sdk-examples/javascript/example_code/sns/sns_publishsms.js

// SMS 메시지 게시
const AWS = require('aws-sdk');
AWS.config.loadFromPath(__dirname+'/config.json');
// AWS.config.update({region: 'REGION'});  // set region

var params = { // Create publish parameters
  Message: 'TEXT_MESSAGE', /* required */
  PhoneNumber: 'E.164_PHONE_NUMBER',
};

// Create promise and SNS service object
var publishTextPromise = new AWS.SNS({apiVersion: '2010-03-31'}).publish(params).promise();

// Handle promise's fulfilled/rejected states
publishTextPromise.then(
  function(data) {
    console.log("MessageID is " + data.MessageId);
  }).catch(
    function(err) {
    console.error(err, err.stack);
  });
반응형