如果开发者有通过微信公众平台作为与最终消费者的交互界面的需求,您可以通过阅读本文档了解如何借助机智云以及微信公众号、微信硬件平台进行开发。由于基于微信公众号进行硬件设备的接入、控制需要与多个平台交互。所以,有必要对每个平台的作用有清晰的了解。
如图①在微信接入业务场景中,通过开发者中心(site.gizwits.com)的图形化界面定义设备功能,机智云自动生成设备MCU与通信模组之间的串口通信协议,开发者根据协议文档即可实现设备的联网能力。
如图②部分,设备接入机智云后,机智云提供了面向微信应用的API,提供传输设备数据到应用、应用向设备发起的控制信息的功能。
厂商服务器是厂商为了满足自己的微信应用,独立部署的WEB系统。该系统通过机智云平台提供的API进行与设备的数据、控制的实时通讯,解决智能硬件接入的需求;通过访问微信公众号平台的API实现以微信为渠道服务厂商最终消费者的需求。
首先,开发者可以为自己的应用设计个性化的HTML交互界面与功能。(如图③④部分)
微信服务器主要为设备与厂商服务器之间的通信提供了一系列的接口,主要包括微信用户账号与设备的绑定/解绑定、接受/发送设备消息等,具体接口及使用方法可查看微信官方文档,微信最近推出了微信硬件平台,在做微信接入前需要仔细了解微信公众号与微信硬件平台,提供的功能要在不断完善。
微信客户端提供了最终与用户交互的操作界面,可以理解为就是一个运行在手机的浏览器,只不过是运行在微信公众号这套体系下。开发者可通过自己申请的公众号管理后台配置自定义的菜单
了解微信公众号平台
具体内容请参考微信公众平台
机智云Web Socket API服务是为了满足基于Html5应用如微信公众号这种应用远程控制设备,实时展现设备状态而开发的一套API接口。Web Socket API主要是为了弥补HTTP协议短连接的不足,能够实时将设备数据传输到网页并展现。
HTTP协议是由客户端主动向服务端发起单向通信,是短连接。
Web Socket是长连接双向通信,服务端与客户端都可主动发送数据。
未成功绑定设备,不能成功调用控制设备的指令。
采用utf8编码。数据点中枚举值为非ASCII的字符明确需要以Unicode编码。
did:目标设备的did。attr:属性值。raw:自定义内容。
did是open api 注册设备的返回结果。
attr的值需要结合数据点的定义。
raw的值需要结合p0协议的定义。
websocket只是m2m客户端的一种存在形式。因此与open api的结合如同用户或设备与open api中定义的参数是一样的,可在Open api获取参数的详细意义。
支持。