Is IoT Greengrass core QoS 2

0

When I use awscrt.mqtt.Connection to Greengrass Moquette component:

future, id = connection.publish(topic, message, QoS.EXACTLY_ONCE)
future.result()

return ValueError in both IoT Core and Greengrass core cases:

File "/usr/lib64/python3.7/concurrent/futures/_base.py", line 428, in result
return self.__get_result()
File "/usr/lib64/python3.7/concurrent/futures/_base.py", line 384, in __get_result
raise self._exception
File "/home/ec2-user/.local/lib/python3.7/site-packages/awscrt/mqtt.py", line 700, in publish
packet_id = _awscrt.mqtt_client_connection_publish(self._binding, topic, payload, qos.value, retain, puback)
ValueError

Is IoT Greengrass core support QoS 2?

Andrey
질문됨 일 년 전283회 조회
2개 답변
0

Hi,

AWS IoT Greengrass uses AWS IoT Core as MQTT backend and AWS IoT Core does not support QoS2. QoS1 gives the same reliability as QoS2 and the "only once" semantics of QoS2 can be achieved through other means, such as idempotency.

Cheers,

Massimiliano

AWS
전문가
답변함 일 년 전
0

Are you looking for QoS2 from a Client Device to the Greengrass Core via the local broker, or for communication to AWS IoT Core in the cloud? If the latter, @Massimiliano's answer is valid. If the intent is to use a local MQTT broker, both Moquette or EMQX support QoS2 within the local MQTT domain (but not to the cloud).

If you can provide more detail on what the message flow is, we can provide more specific details.

AWS
Gavin_A
답변함 일 년 전

로그인하지 않았습니다. 로그인해야 답변을 게시할 수 있습니다.

좋은 답변은 질문에 명확하게 답하고 건설적인 피드백을 제공하며 질문자의 전문적인 성장을 장려합니다.

질문 답변하기에 대한 가이드라인