I have the following code in lambda to receive SQS messages: When I inject a message into SQS, the lambda triggers, but says data.Messages is null.
function receiveMessages(callback)
{
var params = {
QueueUrl: TASK_QUEUE_URL,
MaxNumberOfMessages: 2,
WaitTimeSeconds: 1,
AttributeNames: ["All"]
};
SQS.receiveMessage(params, function(err, data)
{
if (err)
{
console.error(err, err.stack);
callback(err);
}
else if (data.Messages == null)
{
console.log("null message", data);
callback(null,null);
}
else
{
callback(null, data.Messages);
}
});
}
It is not obvious what I might be doing wrong. I tried both a fifo and a non-fifo queue