在AWS IOT中发布二进制数据时,AWS Lambda不会被调用?

时间:2018-04-09 05:05:43

标签: amazon-web-services aws-lambda aws-iot

我已将lambda配置为IOT规则。 MQTT主题将获取二进制数据,并且在数据到达时规则应该调用lambda。

当我发布普通的JSON数据时会调用lambda,但如果我发布任何二进制数据,则不会调用lambda。

但与此同时,我能够通过我的独立消费者使用发布到MQTT的二进制数据,并能够成功地对其进行反序列化。

那么我在这里失踪的是什么?

1 个答案:

答案 0 :(得分:3)

当消息有效负载应作为原始二进制数据(而不是JSON对象)处理时,您可以使用*运算符在SELECT子句中引用它。

按规则执行此操作:

SELECT encode(*,' base64')AS数据,时间戳()AS ts FROM' a / b'

这样会调用它。

https://docs.aws.amazon.com/iot/latest/developerguide/iot-sql-select.html