微信硬件公众平台接入流程
1 微信硬件服务号介绍
微信服务号设备功能
设备功能是微信为服务号提供的物联网解决方案,设备功能建立在微信硬件平台之上。设备功能允许硬件设备厂商通过服务号,将用户与其拥有的智能设备相连。通过微信硬件平台规定的连接协议,各种智能设备如蓝牙设备、WIFI设备和其他移动网络设备都能方便的接入微信,完成设备、人、服务三者 的连接。微信硬件平台同时还提供了AirSync, AirKiss等用于蓝牙和WIFI技术的基础支持框架,以及硬件JSAPI等, 以方便硬件开发人员快速地将微信与智能设备进行互联。
通过设备功能,服务号中已绑定设备的用户可以与其智能设备进行交互。硬件设备能够与用户的微信客户端进行连接,例如,用户可以通过公众号查看和控制自己的手环、电视机和其它智能家电等。
智能设备能够通过各种方式进行绑定,比如:扫描设备二维码、App跳转公众号和JSAPI与 用户建立对应关系。设备厂商可以因此准确地了解到设备用户的相关信息。
设备功能对于硬件产品提供了增值服务,包括社交元素、模式识别等。可以为用户提供更多的服务,以提升对用户的粘性。
微信设备功能的优势
a. 微信拥有完善的ID体系。开通设备功能即意味着第三方设备能够使用微信的ID体系。
b. 微信为第三方提供了轻应用的开发方案,结合标准微信JSAPI和 微信硬件平台特有的API, 硬件厂商可以快速构建自己的轻应用。
c. 微信拥有庞大的活跃用户,用户每天打开微信客户端的频率较高。有利于硬件设备口碑传播的同时,App推广的成本也将大幅降低。
d. 设备功能可以简化第三方的接入云。微信的服务器分布范围广,即使第三方服务器资源分布范围有限,整体架构依然能够为用户提供较好的体验。
e. 设备功能为第三方提供了O2O的可能。设备厂商可以在公众号上建立微信小店,根据设备运行情况, 定期提供配件和耗材的购买服务。为用户提供更好的服务体验。
2 微信硬件公众平台接入流程
接入流程分为两部分,一为测试开发阶段,二为正式申请认证及发售阶段。
开发阶段厂商可以通过测试号进行设备的开发与测试;正式上线与销售阶段,厂商必须要注册认证服务号,并通过微信机构的产品认证才能正式上线产品与销售。测试号与正式硬件公众号都需要开通硬件功能权限才可以使用硬件功能。
设备功能目前是微信服务号的一个插件功能,开通设备功能前需先申请开通服务号。未认证的服务号也可开通设备功能,但对接入设备的数量有严格限制。因此,未认证的服务号开通设备功能后,需尽快通过服务号认证,以提高接入设备限额。服务号目前不向个人开放申请,个人开发者可以使用的测试账号来完成开发调试。登录测试号即可自助开通硬件功能。
测试开发阶段流程
正式申请认证及发售流程?
接入硬件平台的整个流程
a. 厂商签订合作协议。
b. 开通公众号,及公众号硬件功能。
c. 开发完成产品。
d. 送产品给微信检验。
e. 发布产品。
注册服务号及开通设备功能
厂商需在微信公众平台注册服务号作为正式的硬件公众号。
服务号注册地址为:
登录公众号,点击“添加功能插件”,选择设备功能。提交相关资料,签署《承诺函》并寄回,经过微信硬件团队审核后即可开通。
具体流程参照微信:
设备生产
A. 获取deviceid 和二维码。设备注册后,第三方获取deviceid 和设备二维码。
B. 设备授权。第三方公众账号将设备id 及其属性信息提交公众平台进行授权。
C. 设备生产,贴二维码:生产设备过程中,将二维码与其对应的设备统一包装。
设备销售
A.设备销售:设备将与专属二维码一起销售给消费者。
B.扫描二维码:用户获取设备后,可通过微信扫描设备专属二维码与设备建立关系。
C.关注公众账号:用户关注厂商的硬件公众号后,该公众号可以接收用户消息以及向用户
发送消息,同时设备的deviceID 与用户微信号的openID 将绑定。通过调用获取绑定
的openID 的API,硬件公众号可获取绑定设备的用户openID。
D.连接状态显示:用户关注厂商的硬件公众号后,公众号会向用户发出问候消息,用户与
厂商硬件公众号的聊天对话页面上也会显示设备与手机的连接状态。
对于蓝牙设备,微信通过手机可以获取连接状态;对于Wi-Fi 设备,需要通过厂商服务器向微信硬件公众平台提供设备的网络连接状态再在微信上显示。
E.其他功能:用户可以通过微信硬件公众号以语音消息、文本消息、HTML5 页面等途径
获得厂商提供的多种服务。
厂商(开发者)或者委托第三方自行架设、配置服务器,可以为设备设计个性化的HTML5页面,HTML5页面运行在厂商服务器上,用户点击微信公众号上的菜单后个性化的HTML5页面经过微信服务器显示到用户界面。
3 微信硬件公众平台整体架构
3.1经典蓝牙(BT) 、低功耗蓝牙(BLE)连接方案
智能硬件外设和厂商服务器,由委托第三方服务商或厂商自己开发完成。
微信提供手机接口以对接蓝牙设备,提供服务器接口以对接厂商的服务器。
A.外设与手机WeChat通过BT/BLE连接,蓝牙协议见参考文档。
B.未涉及外设数据传输的请求(如同步后的数据查询、排行查询等),数据流通过路径①传输。
需调用微信公众号平台的公共接口,详细见:
C.涉及外设数据传输的请求(如数据同步、电量查询等),数据流通过路径②传输。此时需要调用的接口为微信的硬件接口。此外,设备授权、设备二维码生成、设备绑定/解绑等都涉及到微信的硬件接口。
需调用微信公众号平台的硬件接口,详细见:参考文档。
以下是设备接入流程以及相关接口的简单介绍:
a.获取deviceid和二维码。设备注册后,第三方获取deviceid和设备二维码。
b.设备授权。第三方公众账号将设备id及其属性信息提交公众平台进行授权。
c.接收设备绑定解绑事件。用户通过扫描设备二维码绑定设备后,微信会推送设备绑定事件给第三方。用户通过取消关注设备公众号解绑设备后,微信会推送设备解绑事件给第三方。
d.接收设备消息。设备通过微信同第三方通信,并且接收第三方的响应。
e.主动发送消息给设备。第三方发送消息给设备的微信终端,并最终送达设备。
f.其他辅助功能。其他功能如设备状态查询、验证二维码等接口内容详细介绍见接口协议文档。
3.2Wifi、GPRS、3G连接方案
外设和厂商服务器,由厂商或委托服务商开发完成。微信提供连接方案以及相关接口对接厂商服务器,使外设与微信之间能进行通信。设备授权、设备二维码生成、设备绑定/解绑等涉及到微信公众号平台的硬件接口。。
以下是设备接入流程以及相关接口的简单介绍:
a.获取deviceid和二维码。第三方获取deviceid和设备二维码。
b.设备授权。第三方公众账号将设备id及其属性信息提交公众平台进行授权。
c.接收设备绑定解绑事件。
用户通过扫描设备二维码绑定设备后,微信会推送设备绑定事件给第三方。
用户通过取消关注设备公众号解绑设备后,微信会推送设备解绑事件给第三方。
d.设备收/发信息。Wifi设备收发信息需要调用微信的公共接口。
e.其他辅助功能。其他功能如设备状态查询、验证二维码等接口内容详细介绍见接口协议文档。
PS:设备注册
MAC地址:
对于目前的蓝牙/wifi/3G设备,都具有MAC地址。在微信硬件平台注册设备的时候,注意MAC地址必须唯一,且必须保证该MAC地址归设备厂商所有(购买芯片自带MAC,或自己申请MAC等均可),即不能占用其他厂商的设备的MAC地址。硬件平台允许注册设备时MAC为空,但出厂之前,必须把硬件平台上注册的空白的MAC地址,更新为实际设备的MAC地址,即出厂之后,不允许硬件平台上的MAC地址为空,必须为有效地址。
设备id:
注意对于一个公众号(目前deviceType为公众号id),deviceId也必须唯一。由于某些设备可能没有MAC地址,微信内部用deviceType+deviceId来唯一标志设备。
厂商调用公众平台接口,需要deviceId。设备Id通过调用公众平台接口生成。
设备二维码:
一个二维码可以确定一个设备,微信支持原生扫描二维码的方式绑定微信用户和设备。二维码可以印在纸上,也可以放在屏幕上,甚至可以用厂商的app来显示。二维码通过调用公众平台接口生成。
三者关系
设备二维码,MAC,deviceType+deviceId是一一对应的,厂商需维护此关系(即可以通过任何一项找到其他项)。当然,厂商可以没有设备二维码,这种情况下只需要维护MAC和deviceId的对应关系即可。
本文来源:https://www.2haoxitong.net/k/doc/41a3905ef41fb7360b4c2e3f5727a5e9846a2741.html
文档为doc格式