本文主要介绍如何调用机智云开放的Open API和WebSocket API来实现JavaScript网页远程控制设备。
其中,Open API用到的接口有匿名登录用户、绑定设备和获取绑定设备列表。而WebSocket API上的用户登陆、设备上线下线通知、浏览器与云端的数据交互(数据透传)、心跳和非法消息通知。
当设备已经是成功连接上云端,就可使用以下流程来控制设备了:
02准备工作调用OPEN API匿名登录用户和绑定设备
phone_id 可以是手机的唯一识别码。或者您已经有了自己的用户系统,不希望用户再次注册一次机智云帐号,您也可以使用该接口,为您的每一个用户创建一个对应的机智云匿名帐号。这时,phone_id 可以是用户在您的系统中的唯一识别码。如在与微信应用做对接时,phone_id 可以设置成微信用户的 openid。
http://swagger.gizwits.com/doc/index/openapi_apps
03绑定设备
备注:时间戳计算链接,
MD5计算链接,如下图:
04Websocket网页控制界面
如下:
05控制设备分两种方式
上面使用的参数有:初始化,如下:
如果该用户要获取绑定设备列表,先要确认该用户(就是该openid)是否有对要控制设备的已进行绑定了。
选择一个要进行控制的设备did,创建websocket连接
选择已连接的设备,读取设备的当前状态
选择已连接的设备,下发控制指令
如下发控制指令{“Swicth”:true},如下图:
{ "boolean":true, "binary": [97,98,99,0,0,0,0,0,0,0] } |
控制模拟设备效果:
V4版本的自定义格式协议(就是无法数据点透传)
上面用的的参数有:
选择一个要进行控制的设备did,创建websocket连接:
选择已连接的设备,读取设备的当前状态:
选择已连接的设备,下发的控制指令:[0,0,0,3,9,0,0,144,1,0,1,2,3,4] (注意:下发数据的格式为十进制的,每个位端的表示为0,0,0,3为header、9为len、0为flag、0,144为cmd、1为action、0,1,2,3,4为业务指令),如下:
模拟mcu收到命令,如下:
FF FF 00 0B 03 1E 00 00 01 00 01 02 03 04 37
全部0条评论
快来发表一下你的评论吧 !