贝壳物联用户相关通讯协议

贝壳物联用户相关通讯协议、API说明

一、概述

    贝壳物联设计理念是在实时通讯层面设备和用户是平等的,用户和设备除了在登录方法、实时数据上传方面有所不同,其他沟通指令、查询指令绝大部分都是通用的。本文着重介绍用户和设备的通讯协议不同之处,在阅读之前请先了解贝壳物联总体通讯协议

    用户通讯协议分为两部分:

    1、非实时通讯,以传统http(S) API 方式实现,详见:贝壳物联用户API

    2、实时通讯,以tcp、websocket长连接方式实现。

    下面介绍实时通讯部分。

二、端口

    由于用户通讯安全级别较高,所以只能使用有ssl加密端口。

    tcp+ssl通讯端口:www.bigiot.net:8585

    websocket+ssl(wss)通讯端口:www.bigiot.net:8484

    ssl证书与域名绑定,所以不可以直接使用IP建立连接。

三、通讯数据格式

    同总体通讯协议中规定。

四、命令列表

1、用户登录

{"M":"login","ID":"xx1","K":"xx2"}\n

说明: 此指令正确登录后将迫使其他地方登录的用户下线,网页版除外。
M —— 固定(Method)
login —— 固定,用户登录指令
ID —— 固定
xx1 —— 可变,用户ID,在会员中心查看
K —— 固定
xx2 —— 可变,用户APIKEY,在用户中心→个人信息中生成。

返回结果

{"M":"loginok","ID":"xx1","N":"xx2(api)","T":"xx3"}\n

说明: 此指令正确登录后将迫使其他地方使用此命令登录的用户下线。
M —— 固定(Method)
loginok —— 固定,用户登录成功指令
ID —— 固定
xx1 —— 可变,用户登录成功后,用于通讯的唯一ID,其组成为字符“U"+用户ID,如U24

N —— 固定(Name)
xx2 —— 可变,登录成功的用户的名称,后面加(api),标识通过api接口登录
T —— 固定(time)
xx3 —— 可变,服务器发送信息时的时间戳,自从 Unix 纪元(格林威治时间 1970 年 1 月 1 日 00:00:00)到当前时间的秒数。

注:登录成功后需注意以下事项

2、获取公开设备实时数据

{"M":"getdata","ID":"xx1"}\n

说明:该命令用于获取其他用户公开设备的实时数据流,可以用于在自己的APP中查看公开设备实时数据。

M —— 固定(Method)
getdata —— 固定,获取实时数据指令
ID —— 固定
xx1 —— 可变,公开设备的ID。

拒收已获取的实时数据

{"M":"refusedata","ID":"xx1"}\n

说明:不查看公开设备实时数据时,及时拒收。

M —— 固定(Method)
refusedata —— 固定,拒收已获取的实时数据指令
ID —— 固定
xx1 —— 可变,公开设备的ID。

五、其他

其他指令同设备实时通讯指令,详见:贝壳物联平台通讯协议


上一篇:设备加密登录模拟测试教程
下一篇:贝壳物联用户API(暂行)
返回顶部