amazon-web-services - 在 AWS IOT 中发布二进制数据时未调用 AWS Lambda?

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

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

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

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

那么我在这里缺少什么?

最佳答案

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

按照您的规则执行此操作:

SELECT encode(*, 'base64') AS data, timestamp() AS ts FROM 'a/b'

这样它就会被调用。

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

关于amazon-web-services - 在 AWS IOT 中发布二进制数据时未调用 AWS Lambda?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49725894/

相关文章:

javascript - AWS Lambda 的 Webpack 配置?

amazon-s3 - 如何访问转储在 S3 中的 AWS SES 电子邮件的内容?

python-2.7 - Celery 消息队列与 AWS Lambda 任务处理

javascript - AWS 物联网 : Read Thing Shadow

node.js - 使用 aws iot 从 aws lambda 向主题发布 mqtt 消息

php - 替换已弃用的函数 mysql_connect

amazon-web-services - Master无法连接到集群

amazon-web-services - ELK 在 AWS 上的良好设置

amazon-web-services - 使用 AWS IoT 向第三方提供服务

amazon-web-services - AWS 免费套餐使用即将到期