问题标签 [aws-iot]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 导入依赖项时出错
我来自 ruby 编程背景,我已经开始学习 java。我完全爱上了它。现在我正在尝试运行示例 aws iot java sdk 项目,但我不断收到此错误。
当我查看 maven 依赖文件夹并导航到时,com.fasterxml.jackson.databind
我没有找到任何DeserializationFeature
类ObjectMapper
任何想法?
amazon-web-services - 与 Firebase 实时数据库等效的 AWS 是什么?
我目前正在开发一个新的游戏项目,该项目将由一个 React Native 前端和一个基于 Lambda 的后端组成。该应用程序需要一些实时功能,例如活动用户记录、地理围栏等。
我在看 Firebase 的实时数据库,它看起来是一个非常优雅的实时数据同步解决方案,但我认为 AWS 没有任何东西与之类似。
对于仅使用 AWS 服务的“无服务器”实时,我能想到的 3 个选项是:
选项 1:基于 WebSocket 的 AWS IoT 消息传递
这个很明显,通过 IoT SDK 的托管 WebSockets 连接。我正在考虑触发 Lambda 以响应入站和出站事件,并仅使用 WebSockets 作为实时层,像通常那样在应用程序客户端上构建自定义处理逻辑。
至少与 Firebase 相比,这样做的缺点是我必须自己处理事件中的数据,这将在 WebSocket 之上添加另一层管理,并且必须使用应用程序商店中的 API 数据层进行标准化.
优点:
- 可扩展的双向实时连接
缺点:
- 仅在应用程序打开时有效
- 消息结构需要实现
- 要管理的多个传输层
选项 2:推送触发的重新获取
另一种选择是将推送通知用作实时触发器,但使用对 API Gateway 的常规 HTTP 请求来实际获取更新的有效负载。
我喜欢这种方法,因为它只坚持一个传输层和应用程序状态的单一事实来源。当应用程序未打开时,它也会触发更新,因为这些是推送通知。
不利的一面是,这是大量的自定义工作,在推送通知与需要获取的数据之间可能存在困难的映射。
优点:
- 即使应用程序关闭,推送通知也能正常工作
- 单一事实来源,传输层
缺点:
- 最定制的解决方案
- 总体上将涉及更多的 HTTP 请求
选项 3:Cognito Sync 这对我来说比较新,我不确定它是否真的可以从服务器连接。
Cognito Sync 提供用户状态同步。跨设备完成离线支持,并且是我将使用的 Cognito SDK 的一部分。这听起来就像我正在寻找的东西,但找不到任何确凿的证据来证明是否可以从 AWS 而不仅仅是从其中一台设备修改或“触发”更新。
优点:
- 提供抽象的实时数据模型
- 连接到 Cognito 用户记录 OOTB
缺点:
- 不确定是否可以从 Lambdas 修改或更新
我想知道是否有人有在 AWS 上作为基于 Lambda 的架构的一部分进行实时操作的经验,以及您是否对什么是最好的进行方式有意见?
amazon-kinesis - 与许多生产者的 Kinesis 分片
我需要从大量数据源(例如手机)收集数据。例如,1000 部手机,每部手机每 20 分钟上传一批 1MB。我正在考虑使用带有单个分片的 Kinesis 流来摄取数据(总吞吐量约为 1MB/s)。单个手机直接访问 Kinesis API 是否有意义,或者我应该将自己的前端(例如,Web 服务器)放在前面?做出此决定时要牢记的主要限制/考虑因素是什么?
PS 使用 AWS IoT 基础设施的替代方案会更加昂贵
amazon-dynamodb - AWS IOT 到第三方 DynamoDB 服务
使用 AWS IOT 规则功能,我可以定义将 MQTT 数据映射到 DynamoDB 的规则。是否可以代替在同一账户上使用本地 DynamoDB 使用来自不同账户的第三方 DynamoDB 资源来实现相同的结果?如果为正,如何实现?
json - 从 aws IoT 规则的 json 数据中仅接收一个参数
我正在从 AWS IoT 接收数据,传入的数据如下所示:
每次有新数据进入时,我都会设置短信提醒。通过短信我只想接收温度。当前查询字符串为:
我假设我必须将星号更改为温度,但是当我这样做时,我收到的短信是空白的。我尝试浏览文档,但找不到答案。
编辑:
如果我使用
我得到 {"Temperature": 4} 有没有办法获得价值?
amazon-web-services - 如何使用 aws iot java sdk 为事物创建规则?
我试图在不使用 AWS 提供的 UI 而是使用 java sdk 的情况下创建规则。查看 java sdk 的代码,我没有看到任何创建规则的代码。任何帮助,将不胜感激。
amazon-web-services - AWS Lambda 和发布到 AWS MQTT 主题 - 是否可能
首先,我想知道是否可以从 lambda 函数将消息发布到 AWS IOT MQTT 主题?我找到了我尝试过的以下 python 代码,但它似乎不起作用:
我已确保该策略已更新(以上内容取自这篇文章:如何在 Amazon AWS Lambda 函数中发布到 MQTT 主题?),但我似乎没有收到任何发布到该主题的内容。想知道我是否遗漏了一些基本的东西,或者 AWS 是否根本不允许您这样做?
测试 Lambda 函数时我没有收到任何错误,只是没有看到有关该主题的任何消息。
amazon-web-services - 如何使用 aws iot 规则引擎更新 dynamo db 的多列
我有一组数据:id
、name
和。height
weight
我正在以 json 格式将此数据发送到 aws iot。从那里我需要更新发电机数据库中的各个列,因此我创建了 3 条规则来更新name
,height
并将权重保持id
为分区键。
但是当我发送消息时,只有一列得到更新。如果我禁用任何 2 条规则,则其余规则可以正常工作。因此,每次我更新时,列都会被覆盖。
如何更新传入消息中的所有三列?
node.js - Publish mqtt message to topic from aws lambda using aws iot
I need to publish data from aws lambda through mqtt protocol using aws iot. i have created a lambda function with node.js code. like this
I got mqtt message on subscriber. but lambda produce error message like this
I have used context.succeed() instead of callback, lambda is exited properly. i cant get any messages on subscriber.
In both cases console prints published successfully message properly.
What is the issue related with my publishing code?