Я написал ниже лямбда-код для отправки SMS. SMS создано, но SMS не доставлено на устройства. Я думаю, что он застрял в очереди SNS или Lambda триггера.
let AWS = require('aws-sdk');
const sns = new AWS.SNS();
exports.handler = async (event, callback) => {
if (!event.request.session || event.request.session.length === 0) {
const phone = event.request.userAttributes.phone_number
const otp = Math.floor(100000 + Math.random() * 900000)
const message = "OTP to login to Stable is "+otp
sns.publish({
Message: message,
MessageAttributes: {
'AWS.SNS.SMS.SMSType': {
DataType: 'String',
StringValue: 'Transactional'
},
'AWS.SNS.SMS.SenderID': {
DataType: 'String',
StringValue: 'sender'
},
},
PhoneNumber: phone
}).promise()
.then(data => {
console.log("Sent message to", phone);
callback(null, data);
})
.catch(err => {
console.log("Sending failed", err);
callback(err);
});
event.response.privateChallengeParameters = {
answer: otp
};
event.response.challengeMetadata = "CUSTOM_CHALLENGE";
}
console.log('raja');
console.log(event);
return event;
};
Как получить сообщение в устройстве? Есть какая-то конфигурация отсутствует?