AWS IoT - 无法找到C SDK来配置设备

时间:2018-03-01 22:27:47

标签: c++ amazon-web-services mqtt aws-iot

当我在AWS IoT控制台中单击Onboard选项时,我看到一个注册事物的选项。单击它,然后单击“开始”,向我显示一个页面,用于选择要注册的SDK。第一步是选择操作系统,然后选择一种语言。此时,我没有看到选择C或C ++ SDK的选项!

https://jsfiddle.net/milacay/e4fe4hsz/21/的页面显示了C / C ++ SDK。但是,AWS IoT SDKs的页面未显示C ++ SDK。

  1. 那么,这些不同的AWS SDK是什么?他们有什么不同?
  2. AWS IoT SDK和AWS IoT Device SDK客户端之间用于连接MQTT代理的区别是什么?
  3. Eclipse Paho客户端可能需要进行哪些更改才能连接到AWS IoT MQTT端点?
  4. 我的目标是在C / C ++中为RTOS设备构建MQTT客户端。我会将它注册在设备的“外部”。

1 个答案:

答案 0 :(得分:1)

<强> 1。不同的SDK

AWS IOT有两个主要类别的AWS开发工具包。

  • 您拥有通常在设备上运行的设备SDK
  • 您拥有通常在云端运行的AWS开发工具包

两者都有各种语言版本。设备SDK通常使用MQTT和x509证书对AWS IOT进行身份验证,但您也可以通过https进行通信。 An overview of the supported protocols for iot clients can be found here。请记住,设备通常倾向于使用MQTT(发布/订阅)与双向长期通信。 http协议只能用于将消息从设备发送到AWS IOT。

如果您使用的是基于C的系统,则有2个选项:

这些使用标准的MQTT通信。

<强> 2。 AWS IoT SDK与Eclipse Paho之间的区别

两者都将使用MQTT / x509证书和MQTT_SSL_VERSION_TLS_1_2。 从理论上讲,两者都应该与Aws IOT一起使用,我已经看到Eclispe Paho MQTT客户端的工作样本是用C ++运行的,用于Aws IOT。

根据我的经验,您通常最好使用供应商SDK,因为他们将拥有更好的支持/样本/功能,然后是更通用的MQTT库。

还有一些关于与云无关并使用MQTT / Paho等标准协议/库来避免(aws)供应商锁定的价值。

第3。 Paho客户端和AWS IOT

AWS IoT需要TLS V1.2,因此您的Paho客户端需要支持。我认为这是should be possible now与Paho cpp。