Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mqtt AWS物联网规则引擎不工作_Mqtt_Iot_Aws Iot - Fatal编程技术网

Mqtt AWS物联网规则引擎不工作

Mqtt AWS物联网规则引擎不工作,mqtt,iot,aws-iot,Mqtt,Iot,Aws Iot,我正在使用node.js SDK编写一个简单的发布/订阅示例,在这个示例中,我订阅了主题“传感器/警报”,同时定期发布带有负载的主题“传感器/温度” {“临时”:[0-20之间的编号]}(例如{“临时”:20}) 我已使用以下规则配置了规则引擎 “从温度>10的“传感器/温度”中选择*” 哪个触发器 “AWS物联网重新发布行动” 我已从AWS-IOT控制台为此规则设置了适当的角色。但当客户端代码发布有效负载为{“temp”:12}或有效负载中任何大于10的数字的主题时,规则引擎应该开始工作并重新

我正在使用node.js SDK编写一个简单的发布/订阅示例,在这个示例中,我订阅了主题“传感器/警报”,同时定期发布带有负载的主题“传感器/温度”

{“临时”:[0-20之间的编号]}(例如{“临时”:20})

我已使用以下规则配置了规则引擎

“从温度>10的“传感器/温度”中选择*”

哪个触发器

“AWS物联网重新发布行动”

我已从AWS-IOT控制台为此规则设置了适当的角色。但当客户端代码发布有效负载为{“temp”:12}或有效负载中任何大于10的数字的主题时,规则引擎应该开始工作并重新发布到主题“sensor/alert”,但不幸的是它没有。 我已经使用AWS MQTT客户端检查了发布和订阅逻辑。在客户端代码中,发布和订阅逻辑工作正常,但规则引擎不工作。 我正在使用AWS免费帐户。 我无法解决该问题。感谢您的帮助

提前感谢。

我认为是“从温度>10的“传感器”中选择*而不是传感器/温度”

您应该尝试发布此消息

{"temp" : "12"}

例如,现在您应该订阅主题sensorrepublished,并且您应该能够为消息种子

您要触发的目标在哪里? 如果是Lambda,则需要像这样在Lambda中添加权限

response = client.add_permission(
FunctionName='Lambda_Name',
StatementId='FunctionPermission',
Action='lambda:InvokeFunction',
Principal="iot.amazonaws.com",
SourceAccount = "yourAccount"
)
谢谢