やりたかったこと
AWSのLambdaとSNSを連携させて、SMSを送信する。
複数の人に一斉に送信するのではなく、必要な時に一人にだけ送信できれば良い・・・
やってみた
Lambda
const AWS = require('aws-sdk');
const sns = new AWS.SNS({apiVersion: '2010-03-31'});
exports.handler = async (event) => {
try{
let phoneNumber = event.number;
let message = event.message;
var params = {
Message: message, /* required */
PhoneNumber: phoneNumber
};
let res = await sendSMS(params);
return res;
}catch(e){
console.log('ERROR!',e)
}
};
const sendSMS = (params) => {
return new Promise(function (resolve, reject) {
sns.publish(params, function(err, data) {
if (err){
console.log('ERROR! : SendSMS')
console.log(err, err.stack);
reject(err)
}else{
console.log('SUCCESS! : SendSMS')
console.log(data);
resolve(data)
}
});
});
}