MQTT.fx连接华为云

一、打开华为云首页

二、注册账号

        如果有华为云账号则跳过该步骤。

        没有账号则点击右上角注册。

三、实名认证

        已实名认证跳过该步骤。

        注册完账号之后登录账号,点击主页右上角账户左边的控制台。

        填入自己的个人信息进行实名认证。

四、创建产品

        点击左上角华为标志旁边的三个叠一起的横杠。

        找到“设备接入Io TDA ”,注意看,我这里是最近用了这个玩意,他才出现在“最近访问”里的,如果你没有用过这玩意,那么直接在搜索栏里输入“设备接入”,它也会出现的,然后鼠标右键点击。

      

       进来之后点击左侧栏中的 “产品”。

       点击创建产品。

       因为我之前创建过,所以产品列表里有东西,如果你的没有东西,是正常的。请不要焦虑,不要在脑子里想“啊啊啊啊啊,怎么跟教程又双叒叕不一样了”

       所属资源空间 默认不用动;填写 产品名称,越短越好,尽量英文;协议类型默认MQTT也不用改,我们用的也是  MQTT ; 数据格式 JSON 也不用改;设备类型选择 选 自定义类型;下面设备类型的框框手动输入 无;最后点击 确定。

       他会弹出来这么个界面,点击 “查看详情” 。如果手滑了,不消息点到了确认也不要着急,他会显示在下面产品列表中,点击右边操作栏里的 “详情” 即可。

五、添加服务 创建属性

        紧接着他会来到这么个界面,鼠标滚轮下滑,找到“自定义模型”并点击。

       服务ID最好填写英文,服务类型和服务描述可以自拟或者不写,填完之后点击确定。

        点击新建属性。

       属性名称最好英文,这里举了温度作为例子,属性描述是对这个属性的描述,自拟或不写,数据类型根据情况自行选择,访问权限我一般给完,可根据实际情况更改,取值范围根据实际情况更改,步长和单位自拟或者不写。保证头上带红星的不留空之后,即可点击确定进行下一步。

       这样下面属性列表里就会出现刚刚新建的属性了,若是需要额外的服务可点击标红的“添加服务” 按钮,若是需要添加新的属性可以点击属性栏上面的 “新建属性按钮”。

六、注册设备

       点击左侧栏中“设备”右边的倒三角符号让他变成正三角,这项就会显示出来“所有设备”,然后点击“所有设备”,点击页面中标红的“注册设备”。

       这一页的东西建议都写上。

       所属资源空间选默认的(其实没得选,只有那一个);所属产品选择我们刚刚创建的那个产品;设备识别码自拟;建议写的简短一些且用英文;设备ID最好也要自己写,后要用到,如果不自己写,他会给你生成个又臭又长的;设备名称、设备描述自拟;设备认证类型默认密钥就行;密钥和确认密钥也最好自己写,不然也会给你生成一个又臭又长的。

当然了,不写也没关系,后面都能自己查找到,并且可以修改。填完之后点击确定,进入下一步。

.

        然后他会提示你设备创建成功,然后点击标红的“保存并关闭”。

七、整理需要用到的数据

7.1、准备工作

        左上角就会弹出一个名字设下图这样的文件,点击另存为,放到桌面上,方便找到,这些都是后面要用到的。

      

        保存路径是桌面,放当然其他能找到的位置也刑,类型.txt不变,文件名字我也改了一下,点击保存。

      

        找到存放这个路径,打开小本本,看看里面都是些什么内容。

        这里面有两项内容,一项是device_id,另一项是secret。

7.2、三元组

 1、打开下面的网站。

Huaweicloud IoTDA Mqtt ClientId Generator

 2、打开小本本,把对应的device_id和secret分别复制粘贴进去。注:不要把引号复制进去。

 3、点击网页中标蓝的“Gennerate”,便会生成三元组,即ClientId、Username、Password。

 4、把三元组分别复制到小本本里,标注好每一项是什么。

7.3 域名及端口号

        在保存完三元组之后,我们再次回到华为云的界面。

        点击左侧栏中的 “总览”,点击页面中标红的“接入信息”,会从右边弹出一个页面,找到页面中的表格倒数第条“MQTT(1883)”,鼠标向右移动,直到出现一个复制的图标,点击复制,复制的内容就是域名了。则前面的MQTT(1883),括号里的1883便是端口号了。

        把域名和端口号一并记小本本里。

        若是有的地方需要IP,可以按住win+R键,输入cmd,打开命令行窗口,输入指令:ping 域名,如下图所示的红框中的东西就是IP了,一并记在小本本上。

        至此,连接华为云需要的参数已经全部整理完毕,接下来开始连接华为云

八、MQTT.fx工具连接华为云

8.1、下载安装MQTT.fx工具

        打开下面的连接,即可下载MQTT.fx工具。

https://iotda-document.obs.cn-north-4.myhuaweicloud.com/mqttfx-1.7.1-windows-x64.exe

        整个安装过程还是挺简单的,因此详细安装步骤不再赘述。

8.2、打开MQTT.fx连接华为云

        打开MQTT.fx之后点击Cinnect右侧的齿轮状的设置按钮。

        先点击左下角的加号,新建一个协议,然后给起一个有辨识度的名字(主要是让自己知道什么是什么)。

        点击User Credentials。

        按照我标出来的不同颜色的箭头和框框,分别把内容粘贴进去。

        最后把鼠标移到左下角,从右到左依次点击“Apply”,“OK”,“Cancel“。

        至此配置完成。

        点击齿轮左边的框框,会来列出来所有的协议,选择我们刚刚创建的那个协议。

        然后点击齿轮右边标蓝的Connect按钮,即可连接上华为云。右上角的小圈圈也会冒绿光,证明连接完成。

        我们再回到华为云界面,点击右侧栏中的设备中的 “所有设备”,此时会发现我们创建的设备的状态由之前的未激活变成了在线。

九、属性上传及消息下发

9.1、准备

        点击左侧栏中的产品,找到产品栏中我们创建的设备,点击右侧的详情

        点击Topic管理

        鼠标滚轮下滑,找到如下图中我画框的两条Topic。

        蓝色框是平台下发消息给设备。

        红色框是设备上报属性给平台。

        把这两条topic复制粘贴到小本本里。

        对于这两条topic还需要修改一下,需要修改的地方为我画红框的位置。

         那么怎么修改呢?他给的提示是device_id,还记得你的device_id 是什么吗?

        不记得了也没关系,全都记在了小本本上了,打开小本本网上翻,找到我们最初记的那一条。device_id就在这里。

        我的device_id是10086,因此,只需要把{device_id}替换成10086即可。

        在注册设备的时候如果不是手动填写的device_id,则这里的topic就会又臭又长。

        注意:修改的时候也要把花括号给去掉。

        对比修改前和修改后的topic为:

        除此之外,还需要属性上报时发送的数据格式,这里就不带着大家找了,我直接写在下面:

{     

       "services": [{         

              "service_id":"gyj"

              "properties": {

               "temperature":20

              }

       }]

 }

        这些最好也记在小本本里面,以便不时之需。

        要注意的时我标红框的两个东西,一个是服务ID,另一个是属性名称,属性名称冒号的就是我们要上传的值。

        服务ID和属性名称都可以在  产品———>详情中找找到。

        这里我画红框的就是服务ID,蓝框的是属性名称。把上面我提到的两个需要注意到的地方替换成这两个即可。

        这时,该有人问了,如果说我要发送的不只一个温度,还要湿度怎么办呢?

        那么我们只需要点击上图的服务ID下面的 “新增属性”,先创建一个湿度属性:

        点击确定之后,属性列表里就会多了一个湿度的属性。

        然后再修改一下我们需要发送的数据包的格式,记在小本本里。

{     

       "services": [{         

              "service_id":"gyj",

              "properties": {

                   "temperature":20,

                   "humidity":40

              }

       }]

 }

        注意,箭头处加一个英文逗号,一定是英文的。再按上述格式在我标红框的地方填写湿度的属性名称和值,末尾无需加逗号,如需再添加属性,则重复步骤即可,一定记得加属性之前加一个英文逗号,结束的时候就不要加逗号了。

        最重要的一点:无论华为云里设置什么数据类型,只要冒号后面的只要有一个英文字母,发送的时候必须用引号括起来,

        举个栗子:如果service_id 是纯数字,比如1,可直接写1,如果是1a,则必须写成   "1a"

        至此,我们已经准备停当,接下来就开始使用MQTT.fx与华为云进行交互,实现属性上传以及消息下发。

9.2、属性上传

        点击上面的Publish,打开小本本,把上报属性的topic复制粘贴到下面的横条小框里,把要发送的数据按照上述格式复制粘贴在下面的大白框里。点击右边的Publish即可发送到华为云。

      

        打开华为云,设备——>所有设备——>详情

        观察更新时间与实际时间,观察数据是否与发的一致即发送成功,如下图所示:

9.3、消息下发

        使用云平台下发之前,也需要先配置一下MQTT.fx,不用担心,到了这里,我们该配置的巨大多数已经配置完了,只需要打开MQTT.fx,点击“Publish” 左边的 “Subscribe” ,打开小本本,找到平台下发的topic,同样复制到下面的条小框里,然后点击右边的“Subscribe”按钮。

        打开华为云,依次点击云端下发、下发消息,只需在消息内容框框里写入要发的内容即可,最后点击确定,消息就会发送出到我们的MQTT.fx

        返回到我们的MQTT.fx,在下面的黑框框里就有我们在云平台发送的消息,至此与华为云的通信成功。

评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值