基于MQTT的文件传输 - 请求的文件ID未找到。

0

【以下的问题经过翻译处理】 我正在尝试建立基于MQTT的文件传输。详情请见附图。

步骤:

  1. 发布DescribeStream请求到describe-topic。
  2. 使用描述主题提供的fileID将GetStream请求发布到get-topic。
  3. 根据fileID拒绝请求。

设备策略(斜体是虚拟值):

  • 允许 - iot:接收,发布 - arn:aws:iot:myregion123123123:topic/$aws/things/thingName/streams/*
  • 允许 - iot:Subscribe - arn:aws:iot:myregion:123123123:topicfilter/$aws/things/thingName/streams/*
  • 允许 - iot:Connect - arn:aws:iot:myregion:123123123:client/clientName

其他:

  • 图像上的传感器名称相同。
  • 设备和存储桶/文件上的区域相同。
  • 设备上的行为与MQTT测试客户端相同。
  • 我尝试的所有其他MQTT操作都可以正常工作。

我无法理解我在这里做错了什么,并且我无法在文档中找到有关ResourceNotFound拒绝的任何信息。我知道该流程在boto3上运作。我已经设置了不同的流程,但出现了相同的错误。我尝试更改请求JSON,但是接着我就会得到不同的错误,例如json格式错误,值类型错误,错误的流程版本等。

如果有人有相关经验,请分享。

编辑:订阅sub策略的arn列错了。应为topicfilter

mqtt测试客户端日志

profile picture
EXPERTE
gefragt vor 6 Monaten6 Aufrufe
1 Antwort
0

【以下的回答经过翻译处理】 我找到了问题所在。创建流时,我没有指定文件ID。默认文件ID是0,这不起作用。创建一个新的流并指定文件ID后,它能够按预期工作。

profile picture
EXPERTE
beantwortet vor 6 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen