• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

004-HC32F460(华大)+Air724UG(4GGPRS)基本控制篇(阿里云物联网平台)-在阿里云物联网平 ...

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

<p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/ZLIOTA/Air724UG/aliyun.html" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>

 

如果咱自己做产品,微信小程序端肯定是一个程序.

如果咱向前面章节似的自己去云端注册设备,然后再把设备的信息(三元组)给用户,

然后用户再填写信息接入,这样用户体验不好,过于繁琐,也无疑增加了人工成本.

应该是用户打开微信小程序,然后微信小程序自己去云平台注册一个设备,然后接入云平台实现通信

小插曲

前段时间阿里云把WebSocket 的动态注册给关闭了!!!

然后动用大家的力量终于让阿里云又给开放了....

 

动态注册的方式(咱使用的是,一型一密免预注册)

先解释几个名词:一机一密 ;一型一密(预注册) ;一型一密(免预注册)

 

一机一密:

就是咱原先测试的在网页上去手动注册设备,然后把ProductKey、DeviceSecret、DeviceName

给设备,然后设备根据这三个信息组合计算下得到mqtt的连接参数,然后就连接通信了

https://help.aliyun.com/document_detail/74005.html?spm=a2c4g.11186623.6.585.3bb41114l1EN77

 

 

一型一密(预注册):

需要咱先在网页上注册上设备,然后把ProductKey、ProductSecret、DeviceName

给设备,然后设备通过https或者mqtt获取DeviceSecret

然后设备根据ProductKey、DeviceSecret、DeviceName这三个信息组合计算下得到mqtt的连接参数,然后就连接通信了

https://help.aliyun.com/document_detail/132111.html?spm=a2c4g.11186623.2.18.59863f82PBOpQr#task-1545804

 

 

 

一型一密(免预注册): 免预注册就是不用在云端自己注册设备,设备连接上网络以后设备自己去注册.

这样子的话,每个设备烧录同样的程序就可以,不用再配置什么三元组了!

不过每个设备程序里面的需要写上产品的ProductKey 和 ProductSecret  的值,这两个值是固定的.

主要是区分开你注册的时候注册到哪个产品下.

然后设备通过https或者mqtt接口注册设备,

注册的时候服务器会返回ClientID和DeviceToken 等参数

最后按照平台规定的组合MQTT参数

MQTT连接的方式注册设备:

https://help.aliyun.com/document_detail/132111.html?spm=a2c4g.11186623.2.18.59863f82PBOpQr#task-1545804

 

 

 

拼接注册返回的参数连接MQTT:

https://help.aliyun.com/document_detail/73742.html?spm=a2c4g.11186623.2.16.1c99426ff6ECtQ#concept-mhv-ghm-b2b

 

微信小程序准备工作

1.在微信小程序平台上设置域名白名单(推荐)

 

 

 

 

域名为自己设备连接的MQTT服务器的IP地址:

wss://{productKey} .iot-as-mqtt.{Region} .aliyuncs.com

我的productKey为: a1m7er1nJbQ

我的Region地区为: cn-shanghai

所以;  wss://a1m7er1nJbQ.iot-as-mqtt.cn-shanghai.aliyuncs.com

 

注意:设置完成以后重启一下微信开发工具

 

 

2.如果不设置域名白名单也可以在软件上选择忽略校验域名

 

 

测试本节一型一密(免预注册)程序

1.打开本节的微信小程序

2.登录自己的云平台打开动态注册

注:选择哪个产品,设备就会注册到哪个产品下

 

 

 

 

打开动态注册

 

 

3,查看并替换自己产品的ProductSecret; ProductKey;

 

 

 

 

 

4,查看并替换自己instanceId

提示:在2021年7月30日之前购买的实例是没有 instanceId 的, 程序里面可保持空

 

 

提示:有 instanceId , 则填写上实例的 instanceId

 

 

 

 

5.点击编译预览,微信扫码安装到手机

 

6.运行APP会弹出注册页面.

注:这个步骤是让微信小程序在物联网平台上注册个设备,让微信小程序接入云平台.

设备的名字做成了需要用户去填写,用户如果做产品的话可以用用户的手机号替代.

 

7.填写 222222(随意哈) 后点击 注册设备

 

 

 

8.注册成功将会跳转到主页

 

9.在平台上可以看到在相应的产品下面注册了设备

 

 

 

 

源码说明

1.先提前说一下

mqtt.js 是正常通信时使用的

register_device.js 是注册时使用的

 

 

 

 

一开始程序运行也执行了  MQTT.ConnectMqtt(); 不过内部是连接不上的,因为没有配置MQTT的参数  MQTT.InitMqttParam

 

 

 

2.调用注册函数注册设备

 

 

 

 

 

 

 

3.MQTT.js是一直轮训判断注册参数,有注册参数以后,执行连接

 

 

 

 

 

结语

以后在产品的时候,那个设备的名字可以用微信小程序里面的唯一码代替.(如果没有登录注册的环节)

如果后期做成登录注册的

用户需要用手机号登录注册,然后呢设备的名字就用手机号代替.

注意: 产品的 ProductSecret  和 ProductKey  别泄露了哈!!!!!

如果让别人知道了之后,别人也可以在你的平台上动态注册设备并接入了!!!!

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap