码迷,mamicode.com
首页 > 微信 > 详细

微信硬件平台(二) 企业服务号号设备注册和绑定

时间:2018-12-25 22:26:54      阅读:332      评论:0      收藏:0      [点我收藏+]

标签:***   .net   17.   请求   follow   离线   生成二维码   返回   eid   

该教程目的:在教程1里,完成了微信服务器向自己的服务器转发公众号收到的数据。但是缺少用户认证,设备注册,设备绑定等功能。这里使用调试助手模拟一个实际的设备(空调,灯),直接向微信硬件云注册和授权,绑定个人的微信账号。这里暂时没有用的自己的服务器。

微信教程

技术分享图片

 

网友调试过程    微信硬件平台下设备与微信通信

 

需要:

1 申请一个服务号(必须有企业组织代码,法人等信息)。 没有公司的开通一个测试账号。这里使用的是一个公司注册后的服务号。

2 在公众号-设备功能-添加几个设备

(图标随便上传的)

技术分享图片

 

 

 

因为在实际开发中需要写代码,这边我就使用在线接口调试工具给大家演示一下,大家到时候直接按照文档写代码就行。

1.先获得appid和appsecret,如果你是认证过的用户,直接使用公众号里的appid和appsecret,如果不是,也可直接使用公众平台的测试账号,具体请看链接

技术分享图片

 

  • 开发者ID本身就有
  • 开发者密码需要设置下
  • 白名单加入你正在操作的电脑IP,以便接收信息

 

2.打开在线接口调试工具后,先获得access_token,有了这个才能调用一切微信API,才能完成后面的设备注册,授权和绑定,传输信息。

.接口类型和接口列表都如下图所示,appid和appsecret在上一步中获得,填入,点击检查问题,校验通过,成功后会在下方返回access_token。

 找到这个调试工具

技术分享图片

 打开后,填入ID和密码,会返回token.(每两个小时更新一次,所以2个小时候就是失效了,对应到单片机需要两个小时更新一次这个,且2个小时内重新请求一次会导致上次的失效)

 技术分享图片

3.获得access_token后,注册一个新设备,获取其在微信下分配的deviceid和二维码串,证书

可以看到,我们在公众号里已经添加了两种设备,每个分配100个名额。

具体使用的时候,每个设备需要自己的deviceid.  然后根据二维码串生成一个二维码贴在设备上,用于微信用户扫一扫配网和绑定。

技术分享图片

 

接口类型和接口列表选择如下图所示,填入上面得到的access_tooken&product_id=51386成功后会返回deviceid和qrticket(二维码链接)以及证书

注意:  (只有这一个地方的access_tooken这一栏需要填写多一段&product_id=***** 后面的都不需要)

access_tooken(实际替换)&product_id=51386   会生成一个七彩插座

access_tooken(实际替换)&product_id=51376   会生成一个空气质量传感器

技术分享图片

 


技术分享图片

这个时候的二维码还是不能使用的,需要进行第四步的设备授权,授权后即可扫描绑定,生成的二维码是一个链接,不能直接用网页打开,否则显示无法识别,用二维码生成器打开,将qrticket(二维码链接)拷贝进去,生成二维码,这里推荐一个草料二维码生成器,点击打开链接。

把qrticket里的内容复制出来,用于生成二维码。

技术分享图片

 

4.接下来是设备授权,参考文档,注意调通接口所需参数的查看文档都在微信硬件平台开发中心下,链接如下,下面是设备授权所需传参数的页面,其他的自行查阅。

技术分享图片

接口调试工具如下:接口类型和接口列表自己选择,access_tooken是第二步得到的,参数body中id为deviceid,第三步中返回参数得到,调试时候mac地址,authkey这些参数先可以自行填写,等有了再填入正确的,注“connect_protocol”这个填4,因为咱们进行的是wifi设备开发,close_strategy这个是断开策略,请注意。下面auth_ver选0,不加密,与上面对应,op_type这个参数注意,为0时设备授权,为1时设备更新,完成后检查问题,返回正确参数deviceid和device_type。


技术分享图片

                                  技术分享图片

 

{
    "device_num": "1", 
    "device_list": [
        {
            "id": "gh_e93c1b3098b9_dae1c2072212185c", 
            "mac": "28-D2-44-5B-AB-37", 
            "connect_protocol": "4", 
            "auth_key": "", 
            "close_strategy": "1", 
            "conn_strategy": "1", 
            "crypt_method": "0", 
            "auth_ver": "0", 
            "manu_mac_pos": "-1", 
            "ser_mac_pos": "-2", 
            "ble_simple_protocol": "0"
        }
    ], 
    "op_type": "0", 
    "product_id": "51386"
}

  

5 绑定设备。 授权完成后我们第三步得到的二维码就可以扫描绑定设备了,现在将第三步得到的二维码(也就是qrticket)填入二维码生成器,生成二维码,微信扫一扫。出现如下界面,直接绑定进入公众号就可以了,

技术分享图片     技术分享图片

绑定后,什么也看不到,需要开启自定义菜单-添加一个按钮(设备界面)---超链接---查询链接网址,用于查看当前用户绑定的设备

页面地址: https://hw.weixin.qq.com/devicectrl/panel/device-list.html?appid=wx4ccfdb6e5d7775fa

(appid后面替换成自己的服务号,这个链接只有在微信里打开有效)

技术分享图片

 

 启动后,点击 设备界面-可以看到自己当前绑定的设备。

技术分享图片

 

6 模拟设备接入。 到现在为止,模拟设备授权,设备扫码绑定就完成了。接下来是模拟设备接入。

 首先知道,设备绑定到哪个用户了(openid),然后模拟设备向这个用户(openid)发送设备消息(是否在线,电量,开关)。

技术分享图片

    技术分享图片

 7.设备给微信用户发送自己的状态。

获得openid后就可以实现主动发送设备状态消息给微信终端,告诉微信设备的状态。具体参考文档如下:

文档连接点击打开链接

技术分享图片

接下来是设备状态消息的接口调试,deviceid,devicetype,openid前面已经得到,devicestatus

为两种0和1,这边我们需要发送已连接的信息,所以选择1.如下图。

        技术分享图片

        技术分享图片

(我自己的设备提示用户没有订阅驱动的状态)

 

版主的设备显示离线到在线的转换。

点击检查问题按钮,响应成功,查看手机,显示已连接。设备状态信息是设备告诉咱们自己的服务器,咱们自己的服务器再告诉公众平台,告诉微信。

技术分享图片

 

  至此,我们(版主)已经实现了设备授权,设备绑定,设备状态信息,但本例中用的都是在线调试工具,实际开发中需要我们自己写代码实现,不多大同小异。已经模拟将设备与微信连接起来了,下一节说说消息发送响应。

 

8 接下来研究一波设备绑定和解绑,以及消息传输等。

 

9 将上述一系列的过程写成代码,让ESP8266自己去完成。  注册,授权,绑定,发送自己的状态,发送其他消息。

 

微信硬件平台(二) 企业服务号号设备注册和绑定

标签:***   .net   17.   请求   follow   离线   生成二维码   返回   eid   

原文地址:https://www.cnblogs.com/kekeoutlook/p/10176726.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!