2016-02-11 2 views
0

Я играю с моим эхом Амазонки и написал небольшую функцию, которую, я надеюсь, напишу мне после ответа от моей дочери. Код выполняется отлично, но sns.publish никогда не происходит. Он терпит неудачу - я не могу сделать ошибку. Я считаю, что у меня есть соответствующие разрешения IAM и подписки на тему. Может кто-нибудь помочь?AWS Lambda call SNS

function textMom(kindOfDay){ 
var message = "Test"; 
var sns = new AWS.SNS(); 
console.log("textMethod") 
sns.publish({ 
TopicArn: "arn:aws:sns:us-east-1:", 
Message: message 
}, function(err, data) { 
if(err) { 
console.log('error publishing to SNS'); 
context.fail(err); 
} else { 
console.log('message published to SNS'); 
context.done(null, data); 
} 
console.log(data); 
}); 
} 
+0

Что это печатает? –

+0

он будет записывать «textMethod» в CloudWatch, но ничего после этого. Это похоже на функцию sns.publish, которая просто терпит неудачу. – theTechGrandma

+0

не распечатывает 'сообщение опубликовано SNS'? –

ответ

1

я столкнулся с той же проблемой, и решить путем изменения параметров опубликовать ниже,

sns.publish(params, context.done); 

Это поможет мне проверить моя функция завершена, прежде чем все вызовы закончили. Попробуй!

+0

Желаю ... это не работает. Вы действительно смогли заставить это работать? Получить aws lamdba для публикации в тему sns? – theTechGrandma

+0

Да, я могу вызвать Лямбду AWS IoT, а затем отправил SNS по коду Лямбды, попытался ли вы удалить «export.handler», просто запустите свой код «nodejs index.js»? Таким образом, легче отлаживать. –

+0

Я попробую. – theTechGrandma

Смежные вопросы