1. 功能说明

用于设备的接入、和用户的交互、透传命令等

2. 协议设计原则

  • 包头固定长度14个字节
  • 具体报文格式见TCP API 报文格式
  • 消息数据采用json文本协议,保证协议可读性高和扩展性
  • 所有的字段类型为string
  • 本服务类型为DAS

3. 通讯地址

tcp://[手机通过CMS的协议获得地址,在设备入网时发送给设备]:[通过CMS的协议获得端口]

4. 消息类型定义

定义 描述
0x01 设备信息上报
0x02 设备用户列表上报
0x03 设备操作记录上报
0x04 设备开锁记录上报
0x05 设备报警消息上报
0x06 用户发起对讲通知
0x07 设备开始推流
0x08 用户开始推流通知
0x09 设备停止推流
0x10 设备心跳
0x11 设备录像
0x60 用户透传通知
0x61 设备透传

5. 包体详解

每个包体都包含请求示例、应答示例、请求参数说明、应答参数说明四个部分

特别说明: 所有应答,所有请求中的data字段为解密后内容,实际情况应该是加密的,比如:

  • 加密后的数据
{
    "token": "xxxxxxxxxxxxx",
    "vendor_name": "general",
    "uuid": "xxxxxxxxxxxxx",
    "username": "18888888888",
    "power": "50",
    "data": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}
  • 解密后的数据
{
    "vendor_name": "general",
    "uuid": "xxxxxxxxxxxxx",
    "username": "18888888888",
    "power": "50",
    "data": {
        "timestamp": "1499681215",
        "power": "50",
        "version": "xxxxxxxx"
    }
}

5.1 设备信息上报

0x01

  • 请求示例
{
    "vendor_name": "general",
    "uuid": "xxxxxxxxxxxxx",
    "power": "50",
    "data": {
        "timestamp": "1499681215",
        "version": "1.0.288,1.1.105,1.0.26",
        "network_ssid": "xxxxxxxxx",
        "infrared_alarm_interval_time": "30",
        "infrared_alarm_type": "txt",
        "volume_level": "2",
        "infrared_sensitivity": "50",
        "auth_mode": "0",
        "activation_code": "12311",
        "dev_model": "Z501",
        "dev_id": "xxxxxxx",
        "on_off": "0,1,1,0,1,0,1,0"
    }
}
  • 应答示例
{
    "data": {
        "timestamp": "1499681215",
        "secret_key": "xxxxxxxxx",
        "das_ip": "123.123.123.123",
        "das_port": "10600",
        "dss_ip": "123.123.123.123",
        "dss_port": "10700",
        "fts_ip": "123.123.123.123",
        "fts_port": "10900"
    }
}
  • 请求参数说明
参数 选项 说明 备注
vendor_name 必填 设备供应商名 公共参数
uuid 必填 设备的唯一码 设备的唯一标识码
power 可选 设备电量 设备的电量,0 - 100
data:timestamp 必填 时间戳 设备的UNIX时间戳
data:version 必填 设备版本 设备的版本,由三部分版本组成,用,分割,顺序是mcu,wifi,video
data:network_ssid 必填 网络的SSID 网络的SSID
data:infrared_alarm_interval_time 必填 红外报警检测时间 红外报警检测的间隔时间,30 - 120
data:infrared_alarm_data_type 必填 报警数据类型 报警的数据类型,txt pic av
data:volume_level 必填 音量等级 1 - 3
data:infrared_sensitivity 必填 红外灵敏度 1 - 100
data:auth_mode 必填 验证模式 0 (单人验证) 1 (双人验证)
data:activation_code 必填 激活码 激活码
data:dev_model 必填 设备型号 设备型号
data:dev_id 必填 设备串码 设备串码
data:on_off 可选 功能开关 0,1,1,0,1,0,1,0 对应 关闭红外报警,开启门锁常开,开启门未关报警,关闭假锁报警,开启密码功能,关闭红外检测,开启网络常在线,关闭远程控制
  • 应答参数说明
参数 说明 备注
data:timestamp 时间戳 服务器的UNIX时间戳
data:secret_key 设备密钥 用户其他服务授权
data:das_ip DAS的地址 DAS的ip地址
data:das_port DAS的端口 DAS的端口
data:dss_ip DSS的地址 DSS的ip地址
data:dss_port DSS的端口 DSS的端口
data:fts_ip FTS的地址 FTS的ip地址
data:fts_port FTS的端口 FTS的端口

5.2 设备用户列表上报

0x02

  • 请求示例
{
    "vendor_name": "general",
    "uuid": "xxxxxxxxxxxxx",
    "data": {
        "timestamp": "1499681215",
        "admin_list": "1,2,5,6,32",
        "user_list": "3,4,7,8,9,19",
        "tmp_list": "10,11,12,13,14"
    }
}
  • 应答示例

    仅需应答TCP包头

  • 请求参数说明

参数 选项 说明 备注
vendor_name 必填 设备供应商名 公共参数
uuid 必填 设备的唯一码 设备的唯一标识码
data:timestamp 必填 时间戳 设备的UNIX时间戳
data:admin_list 可选 管理员用户列表 具体用户的列表,1,2,5,6,32 代表第1,2,5,6,32号用户
data:user_list 可选 用户列表 同上
data:tmp_list 可选 临时用户列表 同上
  • 应答参数说明

    仅需应答TCP包头

5.3 设备操作记录上报

0x03

  • 请求示例
{
    "vendor_name": "general",
    "uuid": "xxxxxxxxxxxxx",
    "data": [
        {
            "timestamp": "1499681215",
            "device_user_id": "001,002",
            "be_operated": {
                "mode": "del",
                "object": "001",
                "object_level": "adm",
                "unlock_mode": "pwd,fp,card"
            },
            "just_log": "true"
        },
        {
            "timestamp": "1499681215",
            "device_user_id": "002,003",
            "be_operated": {
                "mode": "add",
                "object": "001",
                "object_level": "adm",
                "unlock_mode": "pwd,fp,card"
            },
            "just_log": "true"
        }
    ]
}
  • 应答示例

    仅需应答TCP包头

  • 请求参数说明

参数 选项 说明 备注
vendor_name 必填 设备供应商名 公共参数
uuid 必填 设备的唯一码 设备的唯一标识码
data:timestamp 必填 时间戳 设备的UNIX时间戳
data:device_user_id 必填 设备用户id 设备用户的id,双人和多重验证为多个授权人的id,格式001,002,003
data:be_operated:object 必填 被操作对象 被操作的对象,可以是具体用户的id,也可以是用户组和所有用户adm_grp usr_grp tmp_grp all
data:be_operated:object_level 必填 被操作对象的等级 被操作用户的等级,设备用户的等级,adm usr tmp
data:be_operated:mode 必填 操作方式 操作的方式,create add del update
data:be_operated:unlock_mode 必填 开锁方式 开锁的方式,格式为pwd,fp,card,可以多选,all (所有) pwd (密码) fp (指纹) card (刷卡) face (人脸) rf (感应) eye (虹膜) vena (指静脉) remote (远程) timeslot (时间段)
data:just_log 可选 历史记录 是否只是历史记录 true false,不填默认为false
  • 应答参数说明

    仅需应答TCP包头

5.4 设备开锁记录上报

0x04

  • 请求示例
{
    "vendor_name": "general",
    "uuid": "xxxxxxxxxxxxx",
    "data": [
        {
            "timestamp": "1499681215",
            "device_user_id": "001",
            "unlock_mode": "pwd",
            "auth_mode": "dbl",
            "stress_status": "false",
            "op_type": "enter_menu",
            "just_log": "true"
        },
        {
            "timestamp": "1499681215",
            "device_user_id": "002",
            "unlock_mode": "card",
            "auth_mode": "sgl",
            "stress_status": "true",
            "op_type": "enter_menu",
            "just_log": "true"
        }
    ]
}
  • 应答示例

    仅需应答TCP包头

  • 请求参数说明

参数 选项 说明 备注
vendor_name 必填 设备供应商名 公共参数
uuid 必填 设备的唯一码 设备的唯一标识码
data:timestamp 必填 时间戳 设备的UNIX时间戳
data:device_user_id 必填 设备用户id 设备用户的id
data:unlock_mode 必填 开锁方式 开锁的方式,pwd (密码) fp (指纹) card (刷卡) face (人脸) rf (感应) eye (虹膜) vena (指静脉) remote (远程) timeslot (时间段)
data:auth_mode 必填 验证方式 验证的方式,sgl (单人) dbl (双人) mutil (多人)
data:stress_status 必填 胁迫状态 是否被胁迫,true false
data:op_type 必填 操作类型 unlock (正常开锁) enter_menu (进入菜单) off_lock (取消常开) on_lock (启用常开) default (恢复出厂设置) on_infra (启用红外报警) off_infra (取消红外报警)
data:just_log 可选 历史记录 是否只是历史记录 true false,不填默认为false
  • 应答参数说明

    仅需应答TCP包头

5.5 设备报警数据上报

0x05

  • 请求示例
{
    "vendor_name": "general",
    "uuid": "xxxxxxxxxxxxx",
    "data": [
        {
            "timestamp": "1499681215",
            "device_user_id": "001",
            "alarm_type": "noatmpt",
            "alarm_message": "https://download.wonlycloud.com/slideshow/banner3.png",
            "alarm_message_type": "pic",
            "just_log": "true"
        },
        {
            "timestamp": "1499681215",
            "device_user_id": "002",
            "alarm_type": "call",
            "alarm_message": "https://download.wonlycloud.com/slideshow/banner3.png",
            "alarm_message_type": "pic",
            "just_log": "true"
        }
    ]
}
  • 应答示例

    仅需应答TCP包头

  • 请求参数说明

参数 选项 说明 备注
vendor_name 必填 设备供应商名 公共参数
uuid 必填 设备的唯一码 设备的唯一标识码
data:timestamp 必填 时间戳 设备的UNIX时间戳
data:device_user_id 可选 设备用户id 设备用户的id
data:alarm_type 必填 报警类型 报警的类型,noatmpt (非法操作) fakelock (假锁) nolock (门未关) batt (低电量) infra (红外感应) call (门铃呼叫) relock (解除门未关) rm_fake (解除假锁)
data:alarm_message 可选 报警消息 当类型为pic av时为必填,为具体的url地址
data:alarm_message_type 必填 报警数据类型 报警的数据类型,txt pic av
data:just_log 可选 历史记录 是否只是历史记录 true false,不填默认为false
  • 应答参数说明

    仅需应答TCP包头

5.6 用户发起对讲通知

0x06

注意:设备不需要发送此命令,但需要处理服务器转发过来的请求,并开始推流后发送设备推流完成

  • 请求示例
{
    "vendor_name": "general",
    "uuid": "xxxxxxxxxxxxx",
    "data": {
        "timestamp": "1499681215",
        "action": "call"
    }
}
  • 应答示例

  • 请求参数说明

参数 选项 说明 备注
vendor_name 必填 设备供应商名 公共参数
uuid 必填 设备唯一码 设备的唯一标识码
data:timestamp 必填 时间戳 设备的UNIX时间戳
data:action 必填 对讲动作 具体的动作,call hangup-所有在线手机挂断后,服务器才会发 waitconfig-延长设备在线等待时间
  • 应答参数说明

  • 对讲流程说明

设备发起对讲流程:

  1. 设备发设备报警数据上报(参数为 Call )
  2. 服务器通知APP,消息设备报警通知(参数为 Call )
  3. 后续步骤,完全按照APP发起对讲流程

APP发起对讲:

  1. APP发送用户发起对讲(参数为Call) ,给服务器
  2. 服务器发现设备离线,直接回复失败
  3. 服务器发现设备在线,服务器把此命令转发给设备
  4. 设备收到用户发起对讲通知自动接通,并开始推流后,发送设备开始推流
  5. APP收到设备开始推流通知后,开始取视频流,并发送用户开始推流通知(音频)到设备
  6. 设备收到用户开始推流通知,开始取APP音频流,完成对讲

APP发起对讲/设备超时停止对讲:

  1. APP 发送用户发起对讲(参数为挂断)到设备
  2. 设备收到用户发起对讲通知(参数为挂断)对讲结束
  3. 设备如果一直不能收到用户发起对讲通知(参数为挂断),3分钟后结束推流;

5.7 设备开始推流

0x07

  • 请求示例
{
    "vendor_name": "general",
    "uuid": "xxxxxxxxxxxxx",
    "data": {
        "timestamp": "1499681215",
        "device_rtsp_url": "rtsp://[设备信息上报返回的`dss_ip`]:[设备信息上报返回的`dss_port`]/[uuid][timestamp].sdp"
    }
}
  • 应答示例

    仅需应答TCP包头

  • 请求参数说明

参数 选项 说明 备注
vendor_name 必填 设备供应商名 公共参数
uuid 必填 设备唯一码 设备的唯一标识码
data:timestamp 必填 时间戳 设备的UNIX时间戳
data:device_rtsp_url 必填 设备直播地址 设备RTSP直播地址
data:alarm_message_type 可选 报警消息类型 pic av
  • 应答参数说明

    仅需应答TCP包头

5.8 用户开始推流通知

0x08

注意:设备不需要发送此命令,但需要处理服务器转发过来的请求

  • 请求示例
{
    "vendor_name": "general",
    "uuid": "xxxxxxxxx",
    "data": {
        "timestamp": "1499681215",
        "app_rtsp_url": "rtsp://[123.123.123.123]:10700/[username][timestamp].sdp"
    }
}
  • 应答示例

  • 请求参数说明

参数 选项 说明 备注
vendor_name 必填 设备供应商名 公共参数
uuid 必填 设备唯一码 设备的唯一标识码
data:timestamp 必填 时间戳 设备的UNIX时间戳
data:app_rtsp_url 必填 移动端直播地址 移动端RTSP直播地址
  • 应答参数说明

5.9 设备停止推流

0x09

  • 请求示例
{
    "vendor_name": "general",
    "uuid": "xxxxxxxxxxxxx"
}
  • 应答示例

    仅需应答TCP包头

  • 请求参数说明

参数 选项 说明 备注
vendor_name 必填 设备供应商名 公共参数
uuid 必填 设备唯一码 设备的唯一标识码
  • 应答参数说明

    仅需应答TCP包头

5.10 设备心跳

0x10

建议1分钟发一次

  • 请求示例
{
    "vendor_name": "general",
    "uuid": "xxxxxxxxxxxxx",
    "power": "50"
}
  • 应答示例
{
    "timestamp": "1499681215"
}
  • 请求参数说明
参数 选项 说明 备注
vendor_name 必填 设备供应商名 公共参数
uuid 必填 设备唯一码 设备的唯一标识码
power 必填 设备电量 设备的电量,0 - 100
  • 应答参数说明
参数 说明 备注
timestamp 时间戳 服务器的UNIX时间戳

5.11 设备录像

0x11

  • 请求示例
{
    "vendor_name": "general",
    "uuid": "xxxxxxxxxxxxx",
    "data": {
        "start_timestamp": "1499681215",
        "end_timestamp": "1499681225",
        "record_status": "get",
        "device_rtsp_url": "rtsp://[设备信息上报返回的`dss_ip`]:[设备信息上报返回的`dss_port`]/[uuid][timestamp].sdp"
    }
}
  • 应答示例
{
    "data": {
        "timestamp": "1499681215",
        "record_url": "https://download.wonlycloud.com/slideshow/banner3.png"
    }
}
  • 请求参数说明
参数 选项 说明 备注
vendor_name 必填 设备供应商名 公共参数
uuid 必填 设备唯一码 设备的唯一标识码
data:start_timestamp 必填 时间戳 设备开始推流的时间
data:end_timestamp 必填 时间戳 停止录像的时间戳
data:record_status 必填 录像状态 start get stop
data:device_rtsp_url 必填 设备直播地址 设备RTSP直播地址
  • 应答参数说明
参数 说明 备注
data:timestamp 时间戳 设备的UNIX时间戳,当为get时返回,其他状态仅需应答TCP包头
data:record_url 录像地址 一般为url地址,当为get时返回,其他状态仅需应答TCP包头

5.12 用户透传通知

0x60

注意:设备不需要发送此命令,但需要处理服务器转发过来的请求

注意:根据实际的透传命令来定义,如果需要设备单独来做透传应答,则参考下面的应答示例格式

  • 请求示例
{
    "vendor_name": "general",
    "uuid": "xxxxxxxxxxxxx",
    "username": "18888888888",
    "data": "具体透传的内容"
}
  • 应答示例

  • 请求参数说明

参数 选项 说明 备注
vendor_name 必填 设备供应商名 公共参数
uuid 必填 设备唯一码 设备的唯一标识码
username 必填 用户名 用户名,一般为手机号
data 必填 透传命令 具体透传命令的内容
  • 应答参数说明

5.13 设备透传

0x61

注意:根据实际的透传命令来定义,如果需要设备单独来做透传应答,则参考下面的应答示例格式

  • 请求示例
{
    "vendor_name": "general",
    "uuid": "xxxxxxxxxxxxx",
    "username": "18888888888",
    "data": "具体透传的内容"
}
  • 应答示例

    仅需应答TCP包头

  • 请求参数说明

参数 选项 说明 备注
vendor_name 必填 设备供应商名 公共参数
uuid 必填 设备唯一码 设备的唯一标识码
username 必填 用户名 用户透传通知里的username
data 必填 透传命令 具体透传命令的内容
  • 应答参数说明

    仅需应答TCP包头

6. 具体透传的内容

本详解用来解释用户透传通知命令data里面的内容

具体的透传命令

定义 描述
REMOTE_UNLOCK 远程开锁
DEVICE_CONFIG 设备配置
DEVICE_USER_CONFIG 设备用户配置
REMOTE_RESTART_DEVICE 远程重启设备
SET_USER_UNLOCK_TIME 设置用户开锁时间
QUERY_USER_UNLOCK_TIME 查询用户开锁时间
FILE_DOWNLOAD 文件下载

6.1 透传-远程开锁

移动端发往设备端

完整命令需参考5.11 用户透传通知

  • 请求示例
{
    "timestamp": "1499681215",
    "cmd": "REMOTE_UNLOCK",
    "unlock_pwd": "xxxxxxxxxxx,xxxxxxxx"
}
  • 应答示例

  • 请求参数说明

参数 选项 说明 备注
timestamp 必填 时间戳 设备的UNIX时间戳
cmd 必填 透传命令 透传命令
unlock_pwd 必填 用户开锁密码 多个密码用,分割,发送给设备的开锁密码,加解密策略见内部文档
  • 应答参数说明

设备端发往移动端

完整命令需参考5.12 设备透传

  • 请求示例
{
    "cmd": "REMOTE_UNLOCK",
    "return_string": "RETURN_SUCCESS_OK_STRING"
}
  • 应答示例

    仅需应答TCP包头

  • 请求参数说明

参数 选项 说明 备注
cmd 必填 透传命令 透传命令
return_string 必填 返回的状态信息 API状态码对照表
  • 应答参数说明

    仅需应答TCP包头

6.2 透传-设备参数配置

移动端发往设备端

完整命令需参考5.11 用户透传通知

  • 请求示例
{
    "timestamp": "1499681215",
    "cmd": "DEVICE_CONFIG",
    "unlock_adm_pwd": "xxxxx,xxxxxx",
    "infrared_alarm_interval_time": "30",
    "infrared_alarm_type": "txt",
    "volume_level": "2",
    "infrared_sensitivity": "50",
    "auth_mode": "0",
    "activation_code": "12311",
    "dev_model": "Z501",
    "dev_id": "xxxxxxx",
    "on_off": "0,1,1,0,1,0,1,0"
}
  • 应答示例

  • 请求参数说明

参数 选项 说明 备注
timestamp 必填 时间戳 设备的UNIX时间戳
cmd 必填 透传命令 透传命令
unlock_adm_pwd 必填 管理员开锁密码 多个密码用,分割,发送给设备的开锁密码,加解密策略见内部文档
infrared_alarm_interval_time 必填 红外报警检测时间 红外报警检测的间隔时间,30 - 120
infrared_alarm_data_type 必填 报警数据类型 报警的数据类型,txt pic av
volume_level 必填 音量等级 1 - 3
infrared_sensitivity 必填 红外灵敏度 1 - 100
auth_mode 必填 验证模式 0 (单人验证) 1 (双人验证)
activation_code 必填 激活码 激活码
dev_model 必填 设备型号 设备型号
dev_id 必填 设备串码 设备串码
on_off 可选 功能开关 0,1,1,0,1,0,1,0 对应 关闭红外报警,开启门锁常开,开启门未关报警,关闭假锁报警,开启密码功能,关闭红外检测,开启网络常在线,关闭远程控制
  • 应答参数说明

设备端发往移动端

完整命令需参考5.12 设备透传

  • 请求示例
{
    "cmd": "DEVICE_CONFIG",
    "return_string": "RETURN_SUCCESS_OK_STRING"
}
  • 应答示例

    仅需应答TCP包头

  • 请求参数说明

参数 选项 说明 备注
cmd 必填 透传命令 透传命令
return_string 必填 返回的状态信息 API状态码对照表
  • 应答参数说明

    仅需应答TCP包头

6.3 透传-设备用户配置

移动端发往设备端

完整命令需参考5.11 用户透传通知

  • 请求示例
{
    "timestamp": "1499681215",
    "cmd": "DEVICE_USER_CONFIG",
    "unlock_adm_pwd": "xxxxx,xxxxxx",
    "be_operated": {
        "mode": "del",
        "object": "001",
        "object_level": "adm",
        "unlock_mode": "pwd,fp,card"
    }
}
  • 应答示例

  • 请求参数说明

参数 选项 说明 备注
timestamp 必填 时间戳 设备的UNIX时间戳
cmd 必填 透传命令 透传命令
unlock_adm_pwd 必填 管理员开锁密码 多个密码用,分割,发送给设备的开锁密码,加解密策略见内部文档
be_operated:object 必填 被操作对象 被操作的对象,可以是具体用户的id,也可以是用户组和所有用户adm_grp usr_grp tmp_grp all
be_operated:object_level 必填 被操作对象的等级 被操作用户的等级,设备用户的等级,adm usr tmp
be_operated:mode 必填 操作方式 操作的方式,create add del update
be_operated:unlock_mode 必填 开锁方式 开锁的方式,格式为pwd,fp,card,可以多选,all (所有) pwd (密码) fp (指纹) card (刷卡) face (人脸) rf (感应) eye (虹膜) vena (指静脉) remote (远程) timeslot (时间段)
  • 应答参数说明

设备端发往移动端

完整命令需参考5.12 设备透传

  • 请求示例
{
    "cmd": "DEVICE_USER_CONFIG",
    "return_string": "RETURN_SUCCESS_OK_STRING"
}
  • 应答示例

    仅需应答TCP包头

  • 请求参数说明

参数 选项 说明 备注
cmd 必填 透传命令 透传命令
return_string 必填 返回的状态信息 API状态码对照表
  • 应答参数说明

    仅需应答TCP包头

6.4 透传-远程重启设备

移动端发往设备端

完整命令需参考5.11 用户透传通知

  • 请求示例
{
    "timestamp": "1499681215",
    "cmd": "REMOTE_RESTART_DEVICE",
    "unlock_adm_pwd": "xxxxx,xxxxxx"
}
  • 应答示例

  • 请求参数说明

参数 选项 说明 备注
timestamp 必填 时间戳 设备的UNIX时间戳
cmd 必填 透传命令 透传命令
unlock_adm_pwd 必填 管理员开锁密码 多个密码用,分割,发送给设备的开锁密码,加解密策略见内部文档
  • 应答参数说明

设备端发往移动端

完整命令需参考5.12 设备透传

6.5 透传-设置用户开锁时间

移动端发往设备端

完整命令需参考5.11 用户透传通知

  • 请求示例
{
    "timestamp": "1499681215",
    "cmd": "SET_USER_UNLOCK_TIME",
    "unlock_adm_pwd": "xxxxx,xxxxxx",
    "device_user_id": "001",
    "unlock_time": "9-11,14-17",
    "expiry_date": "2017-9-11 18:42:25"
}
  • 应答示例

  • 请求参数说明

参数 选项 说明 备注
timestamp 必填 时间戳 设备的UNIX时间戳
cmd 必填 透传命令 透传命令
unlock_adm_pwd 必填 管理员开锁密码 多个密码用,分割,发送给设备的开锁密码,加解密策略见内部文档
device_user_id 必填 设备用户id 设备用户的id
unlock_time 必填 开锁时间段 允许用户开锁的时间段,24小时制,比如9-11,14-17是指早上9点至11点以及下午2点至5点可以正常开锁
expiry_date 必填 允许开锁截止日期 允许用户开锁截止日期,每天允许开锁的时间段根据unlock_time来限制
  • 应答参数说明

设备端发往移动端

完整命令需参考5.12 设备透传

6.6 透传-查询用户开锁时间

移动端发往设备端

完整命令需参考5.11 用户透传通知

  • 请求示例
{
    "timestamp": "1499681215",
    "cmd": "QUERY_USER_UNLOCK_TIME",
    "unlock_adm_pwd": "xxxxx,xxxxxx",
    "device_user_id": "001"
}
  • 应答示例

  • 请求参数说明

参数 选项 说明 备注
timestamp 必填 时间戳 设备的UNIX时间戳
cmd 必填 透传命令 透传命令
unlock_adm_pwd 必填 管理员开锁密码 多个密码用,分割,发送给设备的开锁密码,加解密策略见内部文档
device_user_id 必填 设备用户id 设备用户的id
  • 应答参数说明

设备端发往移动端

完整命令需参考5.12 设备透传

  • 请求示例
{
    "cmd": "QUERY_USER_UNLOCK_TIME",
    "return_string": "RETURN_SUCCESS_OK_STRING",
    "unlock_time": "9-11,14-17",
    "expiry_date": "2017-9-11 18:42:25"
}
  • 应答示例

    仅需应答TCP包头

  • 请求参数说明

参数 选项 说明 备注
cmd 必填 透传命令 透传命令
return_string 必填 返回的状态信息 API状态码对照表
unlock_time 必填 开锁时间段 允许用户开锁的时间段,24小时制,比如9-11,14-17是指早上9点至11点以及下午2点至5点可以正常开锁
expiry_date 必填 允许开锁截止日期 允许用户开锁截止日期,每天允许开锁的时间段根据unlock_time来限制
  • 应答参数说明

    仅需应答TCP包头

6.7 透传-文件下载

移动端发往设备端

完整命令需参考5.11 用户透传通知

  • 请求示例
{
    "timestamp": "1499681215",
    "cmd": "FILE_DOWNLOAD",
    "part": "mcu,wifi,video",
    "file_url": "http://download.wonlycloud.com/general/device/z501_mcu_1.0.0.bin,http://download.wonlycloud.com/general/device/z501_wifi_1.0.0.bin,http://download.wonlycloud.com/general/device/z501_video_2.1.173.bin",
    "md5": "24eabe548bcaaa5e8bd779288dd75a00,04bd19cb62a007f046b538d479a4e4c5,eddc28892e3dca216a4f885a7f8252a1",
    "be_operated_object": "001"
}
  • 应答示例

  • 请求参数说明

参数 选项 说明 备注
timestamp 必填 时间戳 设备的UNIX时间戳
cmd 必填 透传命令 透传命令
part 可选 产品的模块 设备会有多个程序需要分开升级,由三部分版本组成,用,分割
file_url 必填 下载地址 文件的下载地址,设备的下载,由三部分版本组成,用,分割,顺序根据part字段来区分
md5 必填 文件的md5值 设备文件的md5值,由三部分版本组成,用,分割,顺序根据part字段来区分
be_operated_object 可选 被操作对象 语音下载时使用此字段为必填,被操作的对象,可以是具体用户的id,也可以是用户组和所有用户adm_grp usr_grp tmp_grp all
  • 应答参数说明

设备端发往移动端

完整命令需参考5.12 设备透传

  • 请求示例
{
    "cmd": "FILE_DOWNLOAD",
    "return_string": "RETRUN_FILE_DOWNLOAD_OK_STRING"
}
  • 应答示例

    仅需应答TCP包头

  • 请求参数说明

参数 选项 说明 备注
cmd 必填 透传命令 透传命令
return_string 必填 返回的状态信息 API状态码对照表
  • 应答参数说明

    仅需应答TCP包头