4

我正在研究创建一个嵌入式 AWS IoT 项目,并希望将 google protobuf(二进制序列化)用于消息有效负载 - 用于大小、易于解析、可靠性等。

AWS IoT 使用 JSON,Protobuf 可以很好地与 JSON 相互转换。我不太熟悉 AWS 服务的设置方式,无论如何我可以在到达/发送之前从二进制转换为 json 吗?我以为我可以将数据包传递给 Lambda 并基本上做我想做的事,但这是否意味着我不能再通过规则引擎运行它?大多数数据包最终会进入 DynamoDB,如果这有什么不同的话。

在这方面的任何建议将不胜感激!

4

3 回答 3

2

protobuf 具有 python 支持,lambda 也是如此,因此您可以在 lambda 中解压缩 protobuf 并使用结果写入 DynamoDB 或其他任何内容。祝你好运。

于 2016-04-16T19:54:40.573 回答
2

帖子有点旧,但情况正在演变。

如本aws 论坛公告中所述,现在可以使用 base64 编码(仅支持的格式)将整个 mqtt 有效负载编码为字符串,然后调用 lambda 函数。encode可以在此处找到 sql函数文档

于 2016-11-04T14:26:30.510 回答
1

这个想法是合理的,但目前不支持直接从 IoT 代理 -> lambda 推送二进制数据。可能它可以运行 IoT-> Kinesis->Lambda,但这还没有得到证实。

已请求支持替代消息包。有关更多详细信息/更新,请参阅此线程: https ://forums.aws.amazon.com/thread.jspa?messageID=682020栤

于 2016-04-18T17:06:09.183 回答