我通过节点SDK从AWS发送SMS。短信发送很好,我正在尝试收到传送信息。显然,这不是那么容易,人们必须建立SNS将日志发送到CloudWatch的和解析的CloudWatch获得配送信息查找邮件ID:https://stackoverflow.com/a/40327061/2054629获取AWS SMS的交付状态
如果我通过SNS网络接口发送短信,登录我看到CloudWatch的日志,但不是在我通过节点SDK发送它们时。在从节点发送它们之前,我无法获得有关如何设置的信息。
理想情况下,我想实现的东西,如:
const sendSMS = async (message, number) => {
// send the SMS
// wait to get delivery info
// resolve with delivery info, or reject if failed
}
目前我有:
import AWS from 'aws-sdk';
AWS.config.update({
accessKeyId: accessKey,
secretAccessKey: secretKey,
region: 'us-east-1',
});
const sns = new AWS.SNS();
const sendSMS = async (message, number) => {
return await new Promise((resolve, reject) => {
sns.publish({
Message: message,
MessageStructure: 'string',
PhoneNumber: number,
}, (err, res) => {
if (err) { return reject(err); }
resolve(res);
});
});
}
只发送短信请求,AWS和喜欢的东西
{
ResponseMetadata: { RequestId: '7e0999a3-xxxx-xxxx-xxxx-xxxxxxxxxxxx' },
MessageId: 'f7f21871-xxxx-xxxx-xxxx-xxxxxxxxxxxx',
}
解析
我不确定是否必须设置SNS应用程序才能获取日志,而且我不想保持简单。
我不认为ES6是一个问题。如何从节点SDK获取与SMS相对应的CloudWatch日志? – Guig