使用Mqtt.fx(1.7.1)连接AWS IOT设备中心

本文将介绍如何通过Mqtt.fx(1.7.1)连接到AWS的IoT设备中心。

首先来看AWS相应的配置。

*需要注意的时,为了支持Mqtt.fx连接,AWS IoT设备的访问"Policy",必须做如下设置,以允许外部设备(非AWS设备)访问。

在“General”页面,需要配置"Broker Address"和"Broker Port"。至于"Client ID",自己定义一个即可。其他的设置,采用默认值即可。

上图中的"Broker Address",对应的就是IoT设备中心注册的设备地址。

举例来说,我在AWS IOT中心中注册了一个设备"MyGreenHouse"。

对应的RESP接口URL为"a1t3lraoip1d6s-ats.iot.ap-southeast-2.amazonaws.com",也就是这里填写的"Broker Address".

现在进入第二个配置页面"User Credentials"。由于AWS IOT不支持用户名/密码登录方式,因此留空。

接下来是第三个配置页面"SSL/TLS",请按照下图配置即可。

因为我在IoT中心中创建的设备,使用AWS颁发的证书,因此只需要从AWS云端下载"CA File","Client Certificate File"和“Client Key File",并上传到相应的文件选择框即可。

其中,"CA File“指的是AWS IOT中心的根证书,可以从网上直接下载,也可以使用我已经下载好的文件。

另外两个文件包括一个证书文件(可以随时下载)和一个私钥文件(只能创建IOT设备时下载)。

建议在创建设备时全部下载备用。

这样基本上就完成了所有配置-后面两个页面"Proxy"和"LWT"留空即可。当然如果你是用了http代理,也需要配置相应的"Proxy"选项。

完成所有配置项之后,我们来试验一下MQTT消息的发送和接收。

1)在主界面,选中AWS IoT连接,点击“Connect”按钮连接对应的AWS IOT设备。具体的连接过程,可以进入"Log"页面查看。下图表示已经连接成功的情况。

再次切换到"Publish"页面,尝试消息发送。当然,除了发送方,还需要设定接收方。为了方便起见,我们直接使用AWS IoT中心提供的测试页面进行接收。这里双方使用"my/greenhouse"这个topic进行通讯。

点击"订阅主题“,进入侦听模式。

另一方面,从”mqtt.fx"中发布消息到同一topic(可以分别尝试Qos0/1/2)。

点击“Publish"按钮,就可以在AWS IoT中心对的测试页面,看到该消息。

笔者尝试在"Qos2"选项激活的情况下,发送消息失败。这说明,AWS IoT中心,并不支持Qos2。

与上面的实验类似,在"mqtt.fx"中订阅该主题的消息,然后从AWS云端发送消息(默认为Qos1等级),也是可行的。

点击“发布到主题”,就能够在"mqtt.fx"中看到该消息。实际测试中,发送三条消息,只收到了两条,有一条丢掉了。

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值