微信硬件平台蓝牙设备开发(一)

微信硬件平台蓝牙设备开发——接入


需求:用户关注微信公众号(服务号)后可控制特定蓝牙硬件设备。

实现方案:通过微信硬件平台提供的硬件JSAPI来实现蓝牙设备与微信之间的互联和通讯,框架如下图,核心为:开发H5页面,链入公众号菜单内。




1、申请公众号

 开发测试号已经可以使用JSAPI,前期可使用测试号进行开发调试,本文主要以测试号示例。

测试帐号申请:http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login

公众号申请(服务号): https://mp.weixin.qq.com


2、开通设备功能、添加产品

公众平台,点击左边功能栏的"添加功能插件",选择"设备功能"。 测试号在“功能服务”→设备功能中打开。

添加产品中设置选择“蓝牙”、“蓝牙发现”。


3.配置服务器

接口配置信息填写服务器地址(URL)、Token 。Token可由任意填写,用作生成签名,URL需要处理微信服务器将发送的GET请求,需要部署到服务器。

接入指南:http://mp.weixin.qq.com/wiki/8/f9a0b8382e0b77d87b3bcc1ce6fbc104.html#


4、设备授权

硬件需先在微信平台授权后才可接入。授权接口如下
http请求方式: POST
https://api.weixin.qq.com/device/authorize_device?access_token=ACCESS_TOKEN

String deviceId = "gh_248e6ca70bbb_5aab93a29ec0xxxx";  
        String mac = "000E0B10xxxx";// 设备mac地址  
        String params = "{\"device_num\":\"1\",\"device_list\":[{"  
                + "\"id\":\"" + deviceId + "\"," + "\"mac\":\"" + mac + "\","  
                + "\"connect_protocol\":\"3\"," + "\"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\":\"1\"" + "}";  
        String s = DeviceUtil.sendPost(  
                "https://api.weixin.qq.com/device/authorize_device?access_token="  
                        + at.getToken(), params);  

 
参数获取:
device_id由公众平台生成,是设备的唯一标识,且与二维码(qrticket字段)存在对应关系。
获取deviceid和设备二维码方式:

product_id设备的产品编号(由微信硬件平台分配)。可在公众号设备功能管理页面查询。如下图。


access_token是公众号的全局唯一票据,公众号调用各接口时都需使用access_tokenaccess_token的有效期目前为2个小时,需定时刷新,重复获取将导致上次获取的access_token失效。故需要在服务端进行缓存,定时刷新。

https://mp.weixin.qq.com/wiki/14/9f9c82c1af308e3b14ba9b973f99a8ba.html

http请求方式: GET

完成以上步骤即可编写html控制页面。



评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值