问题标签 [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.

0 投票
2 回答
1499 浏览

aws-iot - Aws Iot Rule 重新发布到动态主题

我订阅了 Aws Iot 主题;

12345678/州

我尝试编写一个规则来获取该主题的有效负载

12345678/影子/更新

我按照以下步骤编写了我的规则;

  1. 我的查询字符串是

选择 * FROM '+/state'

  1. 我的行动是重新发布所有内容而不更改为下面这样的其他主题

$$aws/things/${topic(1)}/shadow/update

当我编写一些静态数据而不是“测试”之类的主题(1)函数时,它可以工作。但是,我无法动态获取主题名称。没有合适的文档解释如何获得该主题名称。

获取主题名称的正确方法是什么,在我的情况下是“12345678”?

0 投票
0 回答
1084 浏览

amazon-web-services - 在 AWS 上处理 WebSockets 消息的最简单方法是什么?

在 AWS 上部署 WebSockets 客户端的好方法是什么?

我正在 AWS 上构建一个应用程序,它需要订阅多个 WebSockets 和几个 REST 源并处理传入消息 (WebSockets) 或发出定期请求 (REST)。我正在尝试无服务器并最大限度地利用 AWS 平台服务,以消除管理虚拟机、操作系统补丁等的需要(并希望降低成本)。

到目前为止,我的想法是每次消息到达时触发 Lambda 函数。然后,该函数可以转换/规范化消息并将其推送到 SQS 队列以供其他子系统进一步处理。

会有两种类型的 Lambda 客户端,一种订阅 WebSockets 消息,另一种在被 CloudWatch 调度调用时定期发出 HTTP 请求。它看起来像这样:

http://i.imgur.com/8M7YGif.png

这种方法对我的 REST 客户端来说似乎是合理的,但我无法确定是否可以使用 Lambda 订阅 WebSockets 消息。Lambdas 可以由 IoT 触发,显然 IoT 现在支持 WebSockets,但显然只是作为 MQTT 协议的传输:

AWS IoT 现在支持 WebSocket、自定义 Keepalive 间隔和增强型控制台

在不部署整个 EC2 或 Docker 实例的情况下部署 WebSockets 客户端的最佳/最简单/最便宜的方法是什么?

0 投票
1 回答
869 浏览

python - AWS IoT 设备未收到 iOS 应用程序发布的消息

所以我正在构建一个可以通过 AWS IoT 与设备通信的 iOS 应用程序。设备和应用程序都订阅了更新/接受、获取/接受和更新/增量。我可以从任一方发布更新,并且更新反映在 AWS IoT 事物影子上,但不知何故,更新从未从一台设备中继到另一台设备。因此,如果我在应用程序上按发送,更新将显示在 AWS IoT 上,但据称订阅主题的设备似乎从未收到此类更新,反之亦然。 下面是设备端的代码片段。

0 投票
1 回答
1930 浏览

node.js - 使用 Node.js 在 aws-iot 上更新 thing-shadow 得到一些错误。还附加了参考代码

这样做时出现错误:-

错误:getaddrinfo ENOTFOUND at errnoException (dns.js:37:11) at Object.onanswer [as oncomplete] (dns.js:124:16)

0 投票
1 回答
991 浏览

node.js - 如何使用 aws-iot 从设备发送图像(大小 > 128KB 的文件)

由于 aws IoT 支持 128KB 作为默认消息大小,使用 nodejs sdk 连接到 aws-iot 的设备如何发送大小> 128KB 的图像或文件。

0 投票
2 回答
685 浏览

amazon-web-services - 如何使用经过身份验证的 AWS Cognito 身份访问 AWS IoT 终端节点?

我在 JavaScript (paho-mqtt-js) 中使用 MQTT 客户端连接到 AWS IoT 端点,如果我使用自己的 AWS 凭证,我就可以连接。

但是,如果我使用 Cognito 为登录用户生成的凭据,我将无法这样做。我在 IAM 中的 Cognito 授权角色附加了“AWSIoTFullAccess”策略,所以我很困惑为什么这些凭证每次都返回 403 错误。

对此的任何帮助将不胜感激。

0 投票
2 回答
1155 浏览

android - 如何在 android 应用程序上获得 aws-iot 的影子?我为此使用了 rest api(由 aws 创建),但需要了解如何使用 rest api 添加标头?

现在,直到我在 nodejs 中实现 web 服务器,其中连续脚本正在运行,并且阴影将通过根据用户给出的输入来更新。

这个链接基本上是为了添加规范的标题所以我应该添加任何额外的标题吗?如果我错了。

此链接用于与我的问题相关的网络套接字通信

从上面的两个链接中,我了解了我如何在 android mobile 中执行此操作,但我得到了相同的响应

在这里,我使用 nodeJs 进行树莓派通信。它工作正常并更新它。

同样从应用程序如何取回阴影?

此图像是来自 nodeJs 的 aws-iot 事物影子更新。此处创建的 API 用于移动设备以在您的移动设备上获取结果

在这张图片中,当我在休息客户端上点击相同的 api 时出现错误,缺少身份验证令牌。我为此使用了规范标头,但不是运气

0 投票
0 回答
771 浏览

amazon-web-services - AWS IoT 规则引擎不工作

不知何故,AWS IoT 规则都不适合我。我发布到主题,并发送了 SNS(根据示例)。选择 * FROM 'acme/temp'

所有策略和信任策略都是正确的,但它不会触发规则。可悲的是日志级别是调试配置但云手表只显示信息,没有信息知道为什么没有触发规则。

信任政策

角色政策

请建议如何排除故障。

我在 AWS 控制台中使用 MQTT 客户端将消息发布到主题。如果我订阅,那么我会收到消息。我把我的规则配置放在这里 forums.aws.amazon.com/thread.jspa?messageID=741034&tstart=0 你能想出我能排除故障的任何方法吗..无论我写什么规则和定义什么动作..它没有启动物联网规则引擎。我正在使用我们东部 1 地区。

0 投票
1 回答
1218 浏览

amazon-web-services - AWS IOT:在规则和操作中注册事物和事物属性的使用

我对 aws iot 解决方案有几个问题:

我想注册一个具有一些属性的“事物”并将客户端证书关联到该事物。
我可以用 java sdk 做到这一点吗?也许你有一个例子的链接?
(在aws-iot-device-sdk中没找到,只看过aws cli例子)

如果设备(具有客户端证书)发布消息,我如何使用关联的事物及其属性?(在操作或规则中)
仅查看以获取影子设备,而不是“事物”:
http ://docs.aws.amazon.com/iot/latest/developerguide/iot-sql-functions.html# iot-sql-function-get-thing-shadow

任何人都可以帮助我吗?

问候,
马库斯

0 投票
1 回答
1030 浏览

amazon-web-services - 通过不可靠的连接将 AWS IoT 命令从云发送到设备

我们正在考虑将 AWS IoT 用于即将推出的项目,该项目以网络连接不可靠的设备为特色。一项要求是向设备发送命令。命令必须可靠地传递(确认),并且当命令稍后完成时,设备还应该发出成功/失败的信号。鉴于 AWS 不支持持久会话,似乎仅将命令发布到 MQTT 主题并不能确保消息得到传递——对吗?

我们一直在推测将命令插入设备影子的“所需”状态内的命令数组中。然后,设备可以通过在影子的“已报告”状态下复制命令来确认命令的接收,并通过在“已报告”状态下设置命令内的结果字段来报告成功/失败。

鉴于我们缺乏使用 AWS IoT 的经验,这似乎是一种明智的方法吗?或者任何人都可以看到更整洁的东西吗?一件令人讨厌的事情是影子会累积已完成的命令,这大概意味着我最终将需要某种内务处理来删除已完成的命令,以将影子保持在合理的大小。

最后,有谁知道带宽使用有多聪明——如果我的服务器将一个元素添加到嵌套在“所需”状态深处的一百个元素的数组中,实际上有多少数据流过网络?同样,当我的设备将元素移动到“报告”状态时。