3

我订阅了 Aws Iot 主题;

12345678/州

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

12345678/影子/更新

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

  1. 我的查询字符串是

选择 * FROM '+/state'

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

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

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

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

4

2 回答 2

5

实际上,使用下面这样的 topic(1) 函数获取主题名称是没有问题的;

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

问题在于政策许可。在向我的策略添加必要的发布权限后。我开始获取有效载荷。

于 2016-08-16T11:55:56.540 回答
0

对于其他不知道为什么的人

${topic(1)}

适用于 Arda,原因如下:

https://docs.aws.amazon.com/iot/latest/developerguide/iot-substitution-templates.html

原来您可以在重新发布主题字符串中执行“替换模板”。

您的下一个问题将是确保分配给规则的角色附加了一个策略,允许它发布到 iot 核心主题(由于某种原因没有获得自动允许这样做的策略)。

于 2020-05-07T01:18:39.937 回答