微信苹果硬件设备序列号怎么获取设备发过来的数据

4月16日 北京
4月14日 北京
[导读]在开放了JS SDK、多客服、微信公众平台收发小视频之后,微信又有新的动作,在最新更新的微信 6.1.1 版本中,微信新开通了表情备份功能和支持蓝牙设备查看公众号数据功能。
  在开放了JS SDK、多客服、微信公众平台收发小视频之后,微信又有新的动作,在最新更新的微信 6.1.1 版本中,微信新开通了表情备份功能和支持蓝牙设备查看公众号数据功能。
  据了解,微信 6.1.1 版本有如下新特性:
  现在可以通过附件栏发微信红包了
  更换手机时,自定义表情不会丢失
  可以搜索朋友圈的内容和附近的餐馆
  支持连接蓝牙设备,在公众号中查看数据
  修复了一些已知问题
  此次微信 6.1.1 版本的更新,除修复一些已知问题外,还开通了表情备份功能、将微信红包并入附件栏内、并将搜索的范围扩散到朋友圈内容和附近的参观。并且,微信还开通了通过蓝牙连接智能硬件,可以在公众号内查看智能硬件收集到的数据和内容的功能,类似现在小米手环和其它合作智能硬件会提供的功能。
  另外,微信表情备份功能是之前微信用户呼声较高的、希望开通的功能之一,现在终于可以放心的换手机登陆微信了。
  对于微信支持连接蓝牙设备的部分,持续更新中&
编辑:孔繁毅
慧锐通智能科技总裁肖铭先生
厦门立林软件公司汤舒鹤先生
最近智能手环、手表设备非常热,作为可穿戴设备市场上…
如果随时掏出手机,就可以无线控制家里的“老”音箱,享受最新
今天小编为大家带来一款能够实地拍摄的可穿戴设备
近日收到法国达泰多发过来的样品套装,原装进口的法国包装和产品打开微信“扫一扫”,分享到朋友圈
PingWest账号登录
微信扫码登录微信硬件创新大赛:用这13件神器“唤醒”有趣的世界-钛媒体官方网站
微信硬件创新大赛:用这13件神器“唤醒”有趣的世界
分享到微信朋友圈只需一步,快速开始
扫一扫,访问微社区
后使用快捷导航没有帐号?
所属分类: &
1、有任何问题,请发新贴来提问;
2、我们将会每日进行问题的回复;
微信硬件蓝牙开发各种坑(不完全开发指南)
查看: 667|回复: 0
& 主题帖子积分
略知一二, 积分 470, 距离下一级还需 30 积分
略知一二, 积分 470, 距离下一级还需 30 积分
几个基本要用的东西:
1、微信公众平台
申请微信公众号,获取微信测试号。
2、微信JS-SDK说明文档
3、微信硬件平台说明文档
网址(新版):
网址(旧版):
– 开始开发 –
1、首先到微信公众平台申请微信公众号,就选个人订阅号。
2、登录你的公众号,进入公众平台管理页,左边最下面有个“开发者工具”。
3、点“开发者工具”,进去后找到“公众平台测试帐号”,自己按照步骤申请开通一个。
4、进入测试号管理页面,就会得到:
原始ID:gh_xxxxxxxxxx (右上角显示的,这个是微信原始ID,不是微信号)
(坑:微信原始ID 和 微信帐号不是同一个,微信帐号在之后都不会用到,用到的是原始ID)
appID:wxxxxxxxxxxxx (appID)
appsecret:xxxxxxxxxxxxxx (密钥)
5、测试号管理页面,下面找到“JS接口安全域名”,要配置成你们自己的服务器域名,后面有些微信API会返回数据,它会去匹配这个域名,如果不是指定的域名,会报错。
6、继续往下看,下面有个“体验接口权限表”,在里面找到“设备功能”,开通它
7、开通设备功能后,点右边的“设置”,进入设备功能页面
8、自己”添加产品”,随便搞,连接类型勾选”蓝牙”即可(添加完成后,该产品有个产品编号,后面设备授权时有用)
======= 以上是公众平台的配置,下面开始写前端代码 ======
1、新建HTML,基本结构写好。
2、引入”“,这个JS
3、写JS代码:
wx.config({
& & beta:true,& && && && && && &//坑:这个很重要,必须配置这个为true,才能调用微信的硬件API
& & debug: false,& && && && && &//是否开启调试模式,会自动弹一些消息框显示微信返回的数据
& & appId: 这里填写appID,& && &&&//让后台返回appid
& & timestamp: 时间戳,& && && & //让后台返回生成证书时用的时间戳
& & nonceStr: 随机字符串,& && &&&//让后台返回生成证书时用的随机串
& & signature: 证书,& && && && &//让后台返回已当前URL地址生成的证书
& & jsApiList: [& && && && && & //需要调用的接口,都得在这里面写一遍
& && &&&&openWXDeviceLib&,//初始化设备库(只支持蓝牙设备)
& && &&&&closeWXDeviceLib&,//关闭设备库(只支持蓝牙设备)
& && &&&&getWXDeviceInfos&,//获取设备信息(获取当前用户已绑定的蓝牙设备列表)
& && &&&&sendDataToWXDevice&,//发送数据给设备
& && &&&&startScanWXDevice&,//扫描设备(获取周围所有的设备列表,无论绑定还是未被绑定的设备都会扫描到)
& && &&&&stopScanWXDevice&,//停止扫描设备
& && &&&&connectWXDevice&,//连接设备
& && &&&&disconnectWXDevice&,//断开设备连接
& && &&&&getWXDeviceTicket&,//获取操作凭证
& && &&&//下面是监听事件:
& && &&&&onWXDeviceBindStateChange&,//微信客户端设备绑定状态被改变时触发此事件
& && &&&&onWXDeviceStateChange&,//监听连接状态,可以监听连接中、连接上、连接断开
& && &&&&onReceiveDataFromWXDevice&,//接收到来自设备的数据时触发
& && &&&&onScanWXDeviceResult&,//扫描到某个设备时触发
& && &&&&onWXDeviceBluetoothStateChange&,//手机蓝牙打开或关闭时触发
& & ]
});复制代码
上面这个方法,在进入页面时应该首先被调用,这是初始化微信JS-SDK
beta 这个参数需设为true,才能调用那些微信还没有正式开放的新接口
appID,timestamp,nonceStr,signature这几个由后台传递到前端。
生成证书的方法JS-SDK文档中有,此处暂时省略
4、继续写方法:
wx.ready(function(){
& & //初始化设备库 需填写参数 公众号的原始ID
& & wx.invoke('openWXDeviceLib', {'brandUserName':'gh_xxxxxxxxxx'}, function(res){
& && &&&//自己把res输出来看一下吧,里面包括了是否初始化成功,当前手机的蓝牙状态等信息
& && &&&//这里有个坑,当时研究了好久,跟论坛里的人讨论了半天,就是IOS下正常,
& && &&&//安卓下,请带上这个参数:brandUserName:后面是你公众号的原始ID。不然会初始化失败
& && &&&//正式的公众号,也有原始ID,是gh_开头的那个,进入公众号,自己找一下吧,有的
& && &&&//测试号,就用测试号管理页面右上角的那个gh_开头的那一串数字
& & });
& & //手机蓝牙状态改变时触发 (这是监听事件的调用方法,注意,监听事件都没有参数)
& & wx.on('onWXDeviceBluetoothStateChange',function(res){
& && && && &//把res输出来看吧
& & });
& & //设备绑定状态改变事件(解绑成功,绑定成功的瞬间,会触发)
& & wx.on('onWXDeviceBindStateChange',function(res){
& && && && &//把res输出来看吧
& & });
& & //设备连接状态改变
& & wx.on('onWXDeviceStateChange',function(res){
& && &&&//有3个状态:connecting连接中,connected已连接,unconnected未连接
& && &&&//每当手机和设备之间的状态改变的瞬间,会触发一次
& & });
& & //接收到设备传来的数据
& & wx.on('onReceiveDataFromWXDevice',function(res){
& && &&&//接收到的原始数据:JSON.stringify(res)
& && &&&//自己去百度下载一个jbase64.js,可以对字符串进行base64编码解码
& && &&&//这里就是用的jbase64.js对原始数据进行解码
& && &&&var unicode= BASE64.decoder(res.base64Data);
& && &&&var str = '';&&
& && &&&for(var i = 0 , len =&&unicode. i &++i){&&
& && && && && &&&str += String.fromCharCode(unicode[i]);&&
& && &&&}
& && &&&//解码后的数据:str
& && &&&//坑:你们测试的时候,不要在这里用alert(),页面会卡死。自己把信息输出到页面中查看吧
& && &&&//不要在这里alert出来
& & });
});复制代码
5、继续写方法:
wx.error(function(res){
& & alert(&wx.error错误:&+JSON.stringify(res));
& & //如果初始化出错了会调用此方法,没什么特别要注意的
});复制代码
6、扫描设备:
(我做的那个项目,是通过手机扫描附近的设备,得到设备的deviceid,然后进行绑定,不是用户扫描二维码进行绑定,所以这里介绍扫描设备的过程)
//扫描前请先监听设备扫描事件
wx.on('onScanWXDeviceResult',function(res){
& & alert(&扫描到1个设备&);
& & //自己解析一下res,里面会有deviceid,扫描设备的目的就是为了得到这个
& & //然后就可以开始绑定了
}
//开始扫描
wx.invoke(&startScanWXDevice&,{&btVersion&:&ble&},function(res){});
//这里填的参数是ble,也可以填bc,bc是经典蓝牙,我们做的这个设备不支持经典蓝牙,所以直接填ble
//安卓系统不能同时支持bel和bc,这个后面详细说一下
//执行此方法后,就开始一直不停的扫描,扫描到了设备会触发上面的监听事件
//如果不想扫了,可以停止扫描
//然而经测试,这个方法并没有什么卵用
//你发现重新扫描根本什么都扫不出来,即使你现在刷新页面,也扫不出任何东西
//解决方法:每次扫描前,先调用closeWXDeviceLib关闭设备库,再调用openWXDeviceLib打开设备库
//这样就相当于重新初始化了一遍设备库,你现在再重新扫描,就可以扫描到设备了。
wx.invoke(&stopScanWXDevice&,{},function(res){});复制代码
7、绑定和解除绑定
//用户绑定设备
//1、先获取操作凭证(type为1表示绑定,2表示解除绑定)
wx.invoke('getWXDeviceTicket',{&deviceId&:&填写设备的deviceID&,&type&:1},function(res){
& & if(res.err_msg !=&getWXDeviceTicket:ok&){
& && && && &alert(&获取操作凭证失败,请重试&);&&
& && && && &
& & }else{
& && &&&//2.将deviceID和操作凭证通过ajax传给后台 进行绑定& &
& && &&&//后台应该是有当前用户的openId的,其实前端也可以获取到,但比较麻烦
& && &&&//我们这边的做法是,后台在数据库里保存了用户的openId,每次要用直接从数据库拿
& && &&&//就不用每次还去调微信的接口拿,太麻烦了
& && &&&//...此处ajax代码略& && &
& & }
});
//用户解除绑定
//与上面的方法基本相同,只有type参数不同
wx.invoke('getWXDeviceTicket',{&deviceId&:&填写设备的deviceID&,&type&:2},function(res){
& & if(res.err_msg !=&getWXDeviceTicket:ok&){
& && && && &alert(&获取操作凭证失败,请重试&);&&
& && && && &
& & }else{
& && &&&//2.将deviceID和操作凭证通过ajax传给后台 进行绑定& &
& && &&&...代码略& && &
& & }
});复制代码
8、向设备发送数据
wx.invoke('sendDataToWXDevice', {'deviceId':dev,&base64Data&:BASE64.encoder(str)}, function(res){
& & if(res.err_msg ==&sendDataToWXDevice:ok&){
& && && && &alert(&数据已发送&);
& & }else{
& && && && &alert(&数据发送失败&);
& & }
});
//发送的数据需要经过base64编码复制代码、
以上是前端页面中,基本就这些代码
当用户绑定了设备后,微信会不停的尝试连接设备,所以其实不用程序员写代码去连接设备。
下面来说一下遇到的各种坑:(上面内容中提到的就不说了)
1、开发流程:
①、硬件厂商,他们只要得到了设备的mac地址,就可以开始授权了(好像只要有蓝牙板子,就有mac地址了)。
②、然后再开始生产设备
③、然后才卖给用户
④、用户关注公众号,扫描设备(如果用的二维码方式,那就是扫二维码。我们没有用二维码那种方式)
⑤、用户绑定设备
⑥、微信自动连接设备
⑦、连接上后,就可以收发数据了
2、关于授权:
我们用的授权新接口,即不需要厂商提供deviceid,由微信分配deviceid
然后是授权时的那些参数:
product_id:就是你之前“添加设备”后,就会得到那个编号
connect_protocol:连接协议
只能填3,或者只能填1.你别弄成:3|1,
下面写了,安卓设备不能同时支持ble和经典蓝牙
IOS一切正常,但是填成3|1,你就发现安卓的ble蓝牙调用“getWXDeviceInfos”(获取设备信息),获取不到!
如果用户的手机是经典蓝牙,你就写一个html页面,搞个按钮叫“刷成经典蓝牙”,用户可以自己去更新设备属性(就是授权那个地方,不是可以更新设备属性吗,让你们后台工程师写个接口,用户可以自己去把connect_protocol刷成1)
3、IOS连接设备很快很稳定,安卓连不上设备,显示“已连接0个设备”:
在微信硬件平台的文档里面的某个地方,有一句话,说安卓设备要先订阅个什么东西,订阅上了,这个时候再连接就OK,因为设备只发了一次Auth和Init包,如果错过这个时机,就错过了…就再也连不上了,除非设备断电重启。
但IOS估计是订阅那个什么东西非常快,不会过期,所以一下就连上了。
那句话具体在什么地方,我真的找不到了,微信太坑了。
目前的解决办法:蓝牙板子是有相关接口的,蓝牙板子可以得到当前手机的连接状态。所以如果当前微信显示的是“正在连接中…”,这个时候,让硬件开发人员再发送Auth和Init包。
4、关于设备向手机发数据:
设备发的数据,里面有两个值,一个代表包括包头包尾的总长度,一个代表除去包头包尾的长度,必须与所发数据的实际情况相对应,HTML页面中才能接收到。否则不报错,但也接收不到。
5、继续补充中
原文链接:
<是专业的第三方微信开发者平台,为生态而生。
本站为第三方微信开发者平台,非腾讯官方网站。
天津市滨海新区中新生态城中成大道生态建设公寓9号楼3层301
欢迎来这里一起喝喝茶,聊聊你的产品。
微信公众号:gongzhongkaifa
工作日12小时内回复。
工作日12小时内回复。
PHP程序猿、前端程序猿、产品经理北京地区急聘各大物联网平台对比之微信硬件平台 - 简书
下载简书移动应用
写了39858字,被11人关注,获得了8个喜欢
各大物联网平台对比之微信硬件平台
微信硬件平台介绍
微信硬件平台是微信在连接人、连接企业和服务之后,推出的连接硬件设备的物联网解决方案。微信硬件平台以微信用户ID体系为基础,以用户价值为依归,立志于打造用户和设备厂家共赢的物联平台,实现人,设备、厂家的互联互通。
通过微信硬件平台提供的AirSync、AirKiss、硬件JSAPI、直连SDK等技术,蓝牙设备、Wi-Fi设备与移动网络设备等智能设备都能便捷地实现与微信之间的互联和通讯,用户可以通过公众号查看和控制自己的手环、电视、空调和其它智能家电等。
智能设备能够通过各种方式与微信绑定,如:扫描设备二维码、调用JSAPI与用户建立对应关系等。硬件设备厂商可以因此准确地了解到设备用户的相关信息。
此外,微信硬件平台向智能设备提供了多种增值服务,包括社交元素、模式识别技术等,设备厂家可为用户提供更多的服务,以提升用户黏性。
微信硬件平台的优势
微信硬件平台为设备提供直连数据通道,设备可以通过直连SDK直接接入微信硬件服务器,将大大减轻设备厂家接入难度与研发投入负担、缩短产品上市周期。
微信拥有完善的ID体系。接入微信硬件平台即意味着第三方设备能够使用微信的各类ID体系。
微信为第三方提供了轻应用形式的开发方案。结合标准微信JSAPI和微信硬件平台特有的API,硬件厂商可以快速构建自己的轻应用。
微信拥有数量庞大的活跃用户。有利于硬件设备口碑传播的同时,App推广的成本也将大幅降低。
微信硬件平台为第三方提供了O2O的便捷。设备厂商可以在公众号上建立微信小店,根据设备运行情况,定期提供配件和耗材的购买服务,为用户提供更好的服务体验。
接入方案介绍
设备接入方案即设备接入微信硬件平台使用的数据传输方案,目前包含平台基础接入方案与微信硬件云标准接入方案。
1.平台基础接入方案适用对象:(1)拥有后台服务器的设备厂商(2)希望在公众号体系内独立实现设备相关功能(即不需要微信硬件平台提供的产品标准能力)(3)希望设备可以收发微信消息(图片/音乐/文件/地理位置等)
微信硬件平台是基于微信公众平台基础构建的,微信公众平台基础技术架构如图1所示。
图1 微信公众平台技术架构
公众号运营分为编辑模式和开发模式。
在编辑模式下,公众号运营者登录微信公众号管理页面,通过手动方式编辑消息和管理用户。在开发模式下,运营者可以获得更多高级的接口功能(包括设备功能),通过编写消息接口程序,让第三方服务器自动管理用户和消息。
图2 微信硬件平台基础接入方案技术架构
在这个基础架构里,设备厂家必须有自己的服务器,通过硬件平台基础消息接口,接收设备和用户消息,提供设备服务。
2.微信硬件云标准接入方案适用对象:希望通过微信硬件平台提供的产品标准能力集定义设备数据,实现设备数据互联互通的设备。
(1)设备直连微信硬件云通道
微信硬件平台为设备提供直连数据通道,设备可以通过直连SDK直接接入微信硬件服务器,打通设备到云端的通道。框架如图3所示:
图3 设备直连微信硬件云通道
在直连方案中,微信硬件平台将提供设备信息管理、绑定关系存储、设备权限管理、设备固件版本控制、设备数据统计、数据登录鉴权、状态更新、固件更新等服务。
具体描述:请参照文档
(2)设备商云连接微信硬件云通道设备连接厂商服务器后,可通过设备openAPI与微信硬件云对接。框架如图4所示:
图4 设备商云连接微信硬件云通道
目前,设备厂商可通过微信硬件平台提供的开发模式接入设备。整体技术架构如图5所示:
图5 微信硬件平台开发模式技术架构
认证服务号
开通设备功能
审核并发售
平台基础接入流程
1.申请认证公众号&开通设备功能
1.2登录公众平台,点击左边功能栏的"添加功能插件",选择"设备功能"。
点击"开通",阅读并同意《微信公众平台微信互联设备功能服务协议》。
2.添加产品
进行产品开发前,第三方需要在"公众平台-设备功能"内添加接入的产品。一个公众号允许添加多种产品(比如可以添加N款音箱和N款车机),每种添加成功的产品都默认获得微信硬件平台分配的100个设备授权配额。
2.1进入"设备功能",点击"添加产品"
2.2产品基础资料登记
其中,接入方案中勾选“平台基础接入方案”。“平台基础接入方案”即:
2.3产品能力登记
3.产品开发调试
3.1服务器配置
厂商可以选择配置新的服务器,用于接收硬件产生的消息和事件,如“耗电提醒”等。
该服务器配置对于“平台基础接入方案”并非必需,若厂商配置了服务器,则所有有关硬件的消息(如绑定事件、耗电提醒等)会发送到该服务器URL中,而其余公众号有关消息(如关注事件、客服消息等)依然发送到公众号配置的服务器URL中。
若厂商未配置服务器,则所有消息(包括硬件消息和公众号消息)都会发送到原有公众号配置的服务器URL中。
具体配置方式如下:
3.1.1登录公众平台,点击“设备功能”,进入“设置”页面
3.1.2点击“修改配置”按钮,进入服务器配置填写页面。填写服务器地址(URL)、Token和EncodingAESKey。其中URL是开发者用来接收微信互联设备消息和事件的接口URL。Token可由开发者任意填写,用作生成签名(该Token会和接口URL中包含的Token进行对比,从而验证安全性)。EncodingAESKey由开发者填写或随机生成,将用作消息体加解密密钥。
3.1.3选择消息加密方式:明文模式、兼容模式和安全模式。模式的选择与服务器配置在提交后会立即生效,请开发者谨慎填写及选择。加解密方式的默认状态为明文模式,选择兼容模式和安全模式需提前配置好相关加解密代码,详情请参考消息体签名及解密部分的文档。
3.2后台接口调试
3.2.1设备授权
硬件设备接入微信硬件平台首先要进行设备授权。查看 获取到的二维码即为一机一码,设备厂商利用二维码生成器把获取到的二维码串生成为二维码,用户扫描该二维码后,关注厂商公众号,即可绑定设备注意:设备授权时必须填上product_id
3.2.2接收设备绑定/解绑事件
用户扫描一机一码,关注厂商公众号,即可绑定设备,此时厂商会接收到微信硬件平台推送的绑定事件。绑定关系即deviceid(设备id)与openid(用户id)的关系。若用户解绑设备,厂商会收到解绑事件。具体接口:
3.2.3其他API查看
微信硬件云标准接入流程 —— 设备直连微信硬件云通道
1.申请认证公众号&开通设备功能
1.2登录公众平台,点击左边功能栏的"添加功能插件",选择"设备功能"。
点击"开通",阅读并同意《微信公众平台微信互联设备功能服务协议》。
2.添加产品
进行产品开发前,第三方需要在"公众平台-设备功能"内添加接入的产品。一个公众号允许添加多种产品(比如可以添加N款音箱和N款车机),每种添加成功的产品都默认获得微信硬件平台分配的100个设备授权配额。
2.1进入"设备功能",点击"添加产品"
2.2产品基础资料登记
其中,接入方案中勾选“微信硬件云标准接入方案”——“设备直连微信硬件云通道”。“设备直连微信硬件云通道”即:
SDK开发部分后续具体介绍。
2.3产品能力登记
3.产品开发调试
3.1服务器配置
为了接收到微信发送的设备消息(如绑定事件、耗电提醒等),设备厂商需要在mp平台上配置接收微信硬件消息的URL。配置启用后,微信转发的消息将会按照OpenAPI的接口定义以Json格式推送到开发者配置URL。
3.1.1登录公众平台,点击“设备功能”,进入“设置”页面
3.1.2点击“修改配置”按钮,进入服务器配置填写页面。填写服务器地址(URL)、Token和EncodingAESKey。其中URL是开发者用来接收微信互联设备消息和事件的接口URL。Token可由开发者任意填写,用作生成签名(该Token会和接口URL中包含的Token进行对比,从而验证安全性)。EncodingAESKey由开发者填写或随机生成,将用作消息体加解密密钥。
3.1.3选择消息加密方式:明文模式、兼容模式和安全模式。模式的选择与服务器配置在提交后会立即生效,请开发者谨慎填写及选择。加解密方式的默认状态为明文模式,选择兼容模式和安全模式需提前配置好相关加解密代码,详情请参考消息体签名及解密部分的文档。
3.2后台接口调试
3.2.1设备授权硬件设备接入微信硬件平台首先要进行设备授权。查看 获取到的二维码即为一机一码,设备厂商利用二维码生成器把获取到的二维码串生成为二维码,用户扫描该二维码后,关注厂商公众号,即可绑定设备注意:设备授权时必须填上product_id
3.2.2接收设备绑定/解绑事件用户扫描一机一码,关注厂商公众号,即可绑定设备,此时厂商会接收到微信硬件平台推送的绑定事件。绑定关系即deviceid(设备id)与openid(用户id)的关系。若用户解绑设备,厂商会收到解绑事件。具体接口:
3.2.3其他API查看
4.OpenAPI调试
微信硬件平台和设备云端URL消息交互,分成三种消息类型:
微信硬件平台查询设备消息
当微信硬件平台侧需要查询设备信息的时候,微信硬件平台将会POST查询消息发送到设备云端URL上,设备云端收到请求后,立即返回成功收到请求。待设备云端异步查询成功后,将查询结果POST给微信硬件平台。
微信硬件平台设置设备消息
当微信硬件平台侧需要设置设备信息的时候,微信硬件平台将会POST设置消息发送到设备云端URL上,接入者收到请求后,立即返回成功收到请求。待设备云端异步设置设备成功后,将设置结果POST给微信硬件平台。
设备云端通知微信硬件平台消息
当设备状态有变化或者有消息需要通知微信硬件平台侧时候,设备云端POST消息给微信硬件平台。微信硬件平台立即返回成功收到请求。待微信硬件平台将消息处理成功后,将处理消息成功的行为POST给设备云端URL上。查看
微信硬件云标准接入流程 —— 设备商云连接微信硬件云通道
1.申请认证公众号&开通设备功能
1.2登录公众平台,点击左边功能栏的"添加功能插件",选择"设备功能"。
点击"开通",阅读并同意《微信公众平台微信互联设备功能服务协议》。
2.添加产品
进行产品开发前,第三方需要在"公众平台-设备功能"内添加接入的产品。一个公众号允许添加多种产品(比如可以添加N款音箱和N款车机),每种添加成功的产品都默认获得微信硬件平台分配的100个设备授权配额。
2.1进入"设备功能",点击"添加产品"
2.2产品基础资料登记
其中,接入方案中勾选“微信硬件云标准接入方案”——厂商云连接微信硬件云通道。“厂商云连接微信硬件云通道”即:
2.3产品能力登记
3.产品开发调试
3.1服务器配置
为了接收到微信发送的设备消息(如绑定事件、耗电提醒等),设备厂商需要在mp平台上配置接收微信硬件消息的URL。配置启用后,微信转发的消息将会按照OpenAPI的接口定义以Json格式推送到开发者配置URL。
3.1.1登录公众平台,点击“设备功能”,进入“设置”页面
3.1.2点击“修改配置”按钮,进入服务器配置填写页面。填写服务器地址(URL)、Token和EncodingAESKey。其中URL是开发者用来接收微信互联设备消息和事件的接口URL。Token可由开发者任意填写,用作生成签名(该Token会和接口URL中包含的Token进行对比,从而验证安全性)。EncodingAESKey由开发者填写或随机生成,将用作消息体加解密密钥。
3.1.3选择消息加密方式:明文模式、兼容模式和安全模式。模式的选择与服务器配置在提交后会立即生效,请开发者谨慎填写及选择。加解密方式的默认状态为明文模式,选择兼容模式和安全模式需提前配置好相关加解密代码,详情请参考消息体签名及解密部分的文档。
3.2后台接口调试
3.2.1设备授权
硬件设备接入微信硬件平台首先要进行设备授权。查看 获取到的二维码即为一机一码,设备厂商利用二维码生成器把获取到的二维码串生成为二维码,用户扫描该二维码后,关注厂商公众号,即可绑定设备注意:设备授权时必须填上product_id
3.2.2接收设备绑定/解绑事件
用户扫描一机一码,关注厂商公众号,即可绑定设备,此时厂商会接收到微信硬件平台推送的绑定事件。绑定关系即deviceid(设备id)与openid(用户id)的关系。若用户解绑设备,厂商会收到解绑事件。具体接口:
3.2.3其他API查看
4.OpenAPI调试
微信硬件平台和设备云端URL消息交互,分成三种消息类型:
微信硬件平台查询设备消息
当微信硬件平台侧需要查询设备信息的时候,微信硬件平台将会POST查询消息发送到设备云端URL上,设备云端收到请求后,立即返回成功收到请求。待设备云端异步查询成功后,将查询结果POST给微信硬件平台。
微信硬件平台设置设备消息
当微信硬件平台侧需要设置设备信息的时候,微信硬件平台将会POST设置消息发送到设备云端URL上,接入者收到请求后,立即返回成功收到请求。待设备云端异步设置设备成功后,将设置结果POST给微信硬件平台。
设备云端通知微信硬件平台消息
当设备状态有变化或者有消息需要通知微信硬件平台侧时候,设备云端POST消息给微信硬件平台。微信硬件平台立即返回成功收到请求。待微信硬件平台将消息处理成功后,将处理消息成功的行为POST给设备云端URL上。查看
包括Airkiss,AriSync,蓝牙精简协议,直连SDK等
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
被以下专题收入,发现更多相似内容:
· 6人关注
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
选择支付方式:

我要回帖

更多关于 ios 获取设备硬件信息 的文章

 

随机推荐