第三方设备
第三方设备是指不是在氦氪云平台定制协议而生产的设备,比如萤石摄像头,小白机器人等。这些设备加入氦氪云,可以丰富操控设备的操作方式,增加互动体验,或者功能增强。比如小白机器人的接入,使得我们可以通过语音控制设备和场景,同时可以进行娱乐;萤石摄像头可以实时监控,同时配合氦氪云可以实现联动,比如开启外出模式,自动设防等等。
错误说明
所有错误都是http status code 非2xx,并可能包含了简要错误说明,这里简要重复介绍一下,其他错误参见 错误码。
注意,所有2xx的http status 都认为是成功的。
http status code |
code |
说明 |
405 |
|
请求方法不允许,请使用正确的http method提交请求 |
400 |
|
缺失参数或者参数不正确 |
409 |
|
冲突,已经被绑定(自己或者别人) |
第三方设备功能列表
设备类型
设备类型 |
说明 |
YS_CAMERA |
萤石摄像头 |
GOWILD_ROBOT |
机器人小白 |
功能类型
功能类型 |
说明 |
NORMAL |
可以调用hekr云平台接口控制设备,也可以作为联动或者场景动作,但不能作为触发条件 |
ACTION |
只可以作为联动或者场景动作 |
TRIGGER |
只可以作为联动条件 |
功能列表
作用
主要是为了提供对场景和联动的支持,比如条件触发了,摄像头应该做什么动作,这些动作需要从列表中获取functionType为 ACTION的,然后将对应参数放到联动动作里面,具体参见联动。另外的功能是提供简单的控制接口,可以直接通过hekr云平台调用第三方设备的相关 控制接口,实现操作,而不需要调用sdk的功能。(暂时还没提供相应接口)
这列只列举 了常用功能,如果要获取所有功能列表,请使用下面的获取功能列表接口
设备类型 |
功能能名称 |
功能类型 |
中文说明 |
英文说明 |
参数 |
YS_CAMERA |
YS_CAMERA_CAPTURE |
NORMAL |
捕捉图像 |
capture |
quality : STANDARD 标清, HIGH 高清 |
YS_CAMERA |
YS_CAMERA_DEFENCE_SET |
NORMAL |
设置布防 |
set defence |
无 |
YS_CAMERA |
YS_CAMERA_DEFENCE_UNSET |
NORMAL |
撤销布防 |
unset defence |
无 |
YS_CAMERA |
YS_CAMERA_PRESET_MOVE_CAPTURE |
NORMAL |
调用预设点并拍照 |
invoke preset and capture |
index:预设点 1-12, quality : STANDARD 标清, HIGH 高清 |
YS_CAMERA |
YS_CAMERA_PRESET_MOVE |
NORMAL |
调用预设点 |
invoke preset |
index:预设点 1-12 |
绑定萤石摄像头到hekr云平台
Request
POST https://user-openapi.hekr.me/device/third HTTP/1.1
Authorization: Bearer {{JWT_TOKEN}}
Content-Type: application/json
{
"devType":"YS_CAMERA",
"params" :{
"deviceSerial":"xxx",
"validateCode":"xxx"
}
}
参数
参数 |
必填 |
类型 |
说明 |
devType |
是 |
string enum (YS_CAMERA) |
现在只有这一种 ,参见设备类型 |
params.deviceSerial |
是 |
string |
萤石摄像头的序列号,在标签上 |
params.validateCode |
是 |
string |
萤石摄像头的验证码,在标签上 |
params 的其他值 |
否 |
any |
可以是任意类型数据 |
Response
HTTP/1.1 201 Created
Content-Type: application/json;charset=UTF-8
{
"firstLoginTime": 1111111111,
"devTid": "xxx",
"ctrlKey": "xxx",
"devType": "YS_CAMERA",
"params": {
"deviceSerial": "xxx",
"validateCode": "xxx"
},
"ownerUid": "xxx"
}
参数
参数 |
类型 |
说明 |
firstLoginTime |
long |
绑定时间 |
devTid |
string |
跟常规设备含义一样 |
ctrlKey |
string |
跟常规设备含义一样 |
owerUid |
string |
设备绑定用户,也就是用户本身 |
其他参数参考上面 Request 中的说明
从hekr云平台解绑
Request
DELETE https://user-openapi.hekr.me/device/third/{devTid}?ctrlKey=xxx&randomToken=xxx HTTP/1.1
Authorization: Bearer {{JWT_TOKEN}}
参数
参数 |
必填 |
类型 |
说明 |
devTid |
是 |
string |
设备id |
ctrlKey |
是 |
string |
|
randomToken |
否 |
string |
强制删除标记 |
第一次的话,肯定是没有randomToken的,发起请求后,云端会进行校验,检查是否有联动和场景的绑定,如果没有,那么会直接进行删除,如果检查到有关联到场景或者联动的话,会返回一个randomToken,强制删除的话,需要携带这个标志。
直接删除 Response
HTTP/1.1 204 No Content
Content-Type: application/json;charset=UTF-8
如果检查到有关联到场景或者联动的话,会返回一个randomToken,强制删除的话,需要携带这个标志:
返回确认标识 Response
参见一般设备的删除返回信息
HTTP/1.1 202 Accepted
Content-Type: application/json;charset=UTF-8
{
"randomToken":"1qazxsw23edcvfr4"
"scenes":[
{
"sceneId":"222222222",
"sceneName":"睡觉"
}
]
"ifttts":[
{
"ruleId":"1111111",
"ruleName":"看电视"
}
]
}
根据 devTid 和 ctrlKey 获取设备(暂时不包括小白)
Request
GET https://user-openapi.hekr.me/device/third/{devTid} HTTP/1.1
Authorization: Bearer {{JWT_TOKEN}}
Content-Type: application/x-www-form-urlencoded
参数
参数 |
必填 |
类型 |
说明 |
devTid |
是 |
string |
|
ctrlKey |
是 |
string |
|
Response
找不到则返回 404 ,错误码 6400004
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
{
"firstLoginTime": 1111111,
"devTid": "xxxxx",
"ctrlKey": "xxxx",
"devType": "YS_CAMERA",
"params": {
"deviceSerial": "xxx",
"validateCode": "xxx"
},
"ownerUid": "xxx"
}
获取所有第三方设备列表
Request
GET https://user-openapi.hekr.me/device/third?devType=xx HTTP/1.1
Authorization: Bearer {{JWT_TOKEN}}
参数
参数 |
必填 |
类型 |
说明 |
devType |
否 |
string enum (YS_CAMERA,GOWILD_ROBOT) |
如果填写,只返回匹配类型的设备列表,否则返回所有类型设备列表 |
devTid |
否 |
string |
设备id |
ctrlKey |
否 |
string |
设备ctrlKey |
Response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
[
{
"ownerUid": "18261814543",
"name": "萤石测试用",
"desc": null,
"ctrlKey": "xxxx",
"firstLoginTime": 1502264563348,
"lastLoginTime": 1502264563345,
"updateTime": 1506305448774,
"devTid": "xx",
"devType": "YS_CAMERA",
"params": {
"deviceSerial": "xx",
"validateCode": "xx",
"channelNo": 1,
"channelName": "xx",
"status": 1,
"isShared": "0",
"picUrl": "https://i.ys7.com/assets/imgs/public/homeDevice.jpeg",
"isEncrypt": 1,
"videoLevel": 2,
"deviceName": "设备名字",
"model": "CS-C2C-31WFR-B",
"defence": 0,
"alarmSoundMode": 0,
"offlineNotify": 0,
"pass": "xx"
},
"grantor": null,
"authTime": null,
"expireAt": null,
"granted": true,
"authType": "AUTH"
}
]
萤石
parms 必定会有 deviceSerial 和 validateCode 这两个字段
小白
parms 必定会有 robotSN 这个字段
授权参数
参数 |
说明 |
grantor |
授权者,如果该用户是设备的被授权者,那么这个字段就是设备属主的 uid |
granted |
如果设备被授权了,那么这个字段就是 true,否则 false |
authType |
如果设备跟当前用户的关系是属主,且该设备被授权了,那么就是 AUTH,如果是被授权,那么是 AUTHORIZED,否则是 null |
获取第三方功能列表
Request
GET https://user-openapi.hekr.me/device/third/functions?devType=xx&functionType=xx HTTP/1.1
Authorization: Bearer {{JWT_TOKEN}}
Content-Type: application/x-www-form-urlencoded
参数
参数 |
必填 |
类型 |
说明 |
devType |
否 |
string enum |
参见上面设备类型 如果填写,只返回匹配类型的设备功能列表,否则返回所有类型设备列表 |
functionType |
否 |
string enum |
参见上面功能类型,如果填写,只返回匹配类型的功能列表,否则返回所有类型设备列表 |
Response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
[
{
"name": "YS_CAMERA_CAPTURE",
"devType": {
"name": "YS_CAMERA",
"lang": {
"zh": "萤石摄像头",
"en": "ezviz camera"
}
},
"functionType": "ACTION",
"lang": {
"zh": "捕捉图像",
"en": "capture"
}
}
]
参数
参数 |
类型 |
说明 |
name |
string enum |
功能名字 |
devType |
string enum |
参见上面设备类型 |
language.zh |
string |
中文说明 |
langue.en |
string |
英文说明 |
functionType |
string enum |
参见上面功能类型 |
获取萤石(子账号的)token
Request
GET https://uaa-openapi.hekr.me/third/yingshi/token HTTP/1.1
Authorization: Bearer {{JWT_TOKEN}}
参数
无参
Response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
{
"accessToken": "xxx",
"expireTime": 1500432395798
}
参数
参数 |
类型 |
说明 |
accessToken |
string |
token |
expireTime |
long |
过期时间 |
控制第三方设备
Request
POST https://user-openapi.hekr.me/device/third/send HTTP/1.1
Authorization: Bearer {{JWT_TOKEN}}
Content-Type: application/json
{
"function":"xxxx",
"data":{
"a":"xx",
"b":111
}
}
参数
参数 |
必填 |
类型 |
说明 |
function |
是 |
string enum |
功能名称,参见功能列表 |
data |
否 |
object |
控制参数,比如要调用预设点,那么需要传递预设点的值,参见功能列表中的参数 |
Response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
{
"success": true,
"code":"200",
"msg":"成功",
"data":{
"a":"xxxx"
}
}
参数
参数 |
类型 |
说明 |
success |
bool |
成功 true,否则false |
code |
string |
参见各个平台的接口返回 |
data |
object |
参见各个平台的接口返回,参见第三方控制返回数据参数说明,这里是直接用的萤石返回结果 |
修改第三方设备信息
这个跟常规设备改名字基本一致,但是多了两个参数 params
和 thirdDeviceType
Request
PATCH https://user-openapi.hekr.me/device/{devTid} HTTP/1.1
Authorization: Bearer {{JWT_TOKEN}}
Content-Type: application/json
{
"deviceName": "新的设备1",
"desc": "新的设备描述",
"thirdDeviceType": "YS_CAMERA",
"params": {
"a":"xxx",
"b":122
}
}
参数
参数 |
必填 |
类型 |
说明 |
devTid |
是 |
string |
|
ctrlKey |
是 |
string |
|
deviceName |
是 |
string |
设备名字 |
thirdDeviceType |
否 |
string |
设备类型,参见设备类型,如果不填写,则退化为常规设备的更新接口功能,如果要修改的是第三方设备,那么是必填。 |
params |
否 |
object |
其他自定义参数,可以是数字,字符串类型。 |
Response
联动支持
联动详细信息见这里
到目前为止,不支持萤石设备作为触发条件,只可以作为动作调用,动作支持列表参见上面的功能列表中ACTION标识的功能。
如果要创建第三方联动,那么需要在 iftttTasks
列表中的参数中增加 type
参数,并且为固定值 THIRD_SEND
,params
参数中要增加function
参数,值为功能列表中的ACTION类型的值。举例:
例子中的任务是当调用摄像头转动到指定预设点1,并且拍照。
{
"devTid": "1_04b1d11b46ce9cc130af4c13f86d3",
"ctrlKey": "6c4fc7fd146643668b2f204c1d8d04d0",
"ruleName": "云台c6门磁关123",
"iftttType": "CUSTOM",
"condition": {
"triggerType": "REPORT",
"conDesc": "触发描述",
"triggerParams": [
{
"left": "cmdId",
"operator": "==",
"right": 1
},{
"left": "power",
"operator": "==",
"right": 0
}
]
},
"iftttTasks": [
{
"type": "THIRD_SEND",
"desc":"测试拍照",
"params": {
"ctrlKey": "f0f16e89b03d48fa9b39311eeef6a07e",
"devTid":"fa5f146af9d74e5784340a3f929e6c65",
"function": "YS_CAMERA_PRESET_MOVE_CAPTURE",
"index":1
}
}
]
}
场景支持
如果要创建第三方场景,那么需要在 sceneTaskList
列表中的参数中增加 function
参数,值为功能列表中的ACTION类型的值。如果有其他参数,需要放到customParam 中,举例:
例子中的任务是当调用摄像头转动到指定预设点1,并且拍照。
{
"sceneName": "测试",
"sceneTaskList": [
{
"desc": "摄像头转动到预置点:门口",
"function": "YS_CAMERA_PRESET_MOVE_CAPTURE",
"devTid":"xx",
"ctrlKey":"xx",
"customParam":{
"index":2
}
}
]
}
获取萤石摄像头拍照照片
hekr平台现在支持查看过往30天历史的照片。
注意:图片url在获取后5分钟内有效,失效后需要重新获取,以防止url泄露造成隐私泄露。
Request
GET https://user-openapi.hekr.me//device/third/ys/camera/images HTTP/1.1
Authorization: Bearer {{JWT_TOKEN}}
参数
参数 |
必填 |
类型 |
说明 |
devTid |
否 |
string |
如果填写则ctrlKey也必填 |
ctrlKey |
否 |
string |
如果devTid填写则ctrlKey也必填 |
startTime |
否 |
long |
开始时间,timestamp(包含) |
endTime |
否 |
long |
结束时间时间,timestamp(不包含) |
page |
否 |
int |
当前页,[0,+) |
size |
否 |
int |
分页大小 |
Response
HTTP/1.1 200 OK
Content-Type: application/json
{
"content": [
{
"id": "5979cd8020133f7470e43ffd",
"uid": "67527702614",
"devTid": "e7bd5d32497c5aca3eae37b76d7864cb",
"ctrlKey": "48779264489276d223a0a444fe199a6c",
"url": "http://stage-allinone-ufile.hekr.me/ys-camera/51a65128-db2a-475f-ae0e-41e3faf69d9f.jpg",
"createTime": 1501154688620
}
],
"last": true,
"totalPages": 1,
"totalElements": 1,
"size": 20,
"first": true,
"number": 0,
"sort": null,
"numberOfElements": 1
}
参数 |
类型 |
说明 |
uid |
string |
当前用户id |
url |
string |
图片地址,有效时间为5分钟 |
createTime |
long |
拍照时间 |
分页信息和其他接口一样
录像存储到云端
授权
授权接口还是用独立设备授权的接口,详细说明如下。
正向授权(主动授权)
正向授权(主动授权)Request
POST https://user-openapi.hekr.me/authorization HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer {JWT_TOKEN}
{
"ctrlKey": [
"89f089..."
],
"grantee": "3399...",
"expireAt": 1503479651538,
}
正向授权(主动授权)Reslonse
和独立设备授权一样
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
{
"results": [
{
"ctrlKey": "89f089...",
"result": "success"
}
],
"success": 1,
"failure": 0
}
反向授权(请求授权)
反向授权(请求授权)创建授权链接(二维码) Request
POST https://user-openapi.hekr.me/authorization/reverse/authUrl HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer {JWT_TOKEN}
{
"ctrlKey": [
"89f089..."
],
"expireAt": 1503479651538,
}
反向授权(请求授权)创建授权链接(二维码) Response
和独立设备一样
{
"reverseAuthorizationTemplateId": "a48555e9e865424f9e5be1a8b2c618a0"
}
反向授权(请求授权)申请设备授权 Request
POST https://user-openapi.hekr.me/authorization/reverse/register?reverseTemplateId={reverseTemplateId} HTTP/1.1
Authorization: Bearer {JWT_TOKEN}
反向授权(请求授权)申请设备授权 Response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
获取萤石告警信息列表
hekr平台现在支持查看过往10天历史的告警信息 告警消息存在一定的延时
Request
POST https://user-openapi.hekr.me/device/third/alarm HTTP/1.1
Authorization: Bearer {{JWT_TOKEN}}
{
"devType":"YS_CAMERA",
"ctrlKey":"xxx"
"params":{
"alarmType":10002,
"startTime":1533139200000,
"endTime":1533139300000,
"pageStart":0,
"pageSize":50
}
}
参数
参数 |
必填 |
类型 |
说明 |
devType |
是 |
string enum (YS_CAMERA) |
参见设备类型 |
ctrlKey |
否 |
string |
设备ctrlKey |
params.alarmType |
否 |
int |
告警类型(不传查询所有) |
params.startTime |
否 |
long |
开始时间, timestamp(包含) |
params.endTime |
否 |
long |
结束时间, timestamp(包含) |
params.pageStart |
否 |
int |
当前页,[0,+) |
params.pageSize |
否 |
int |
分页大小 |
Response
HTTP/1.1 200 OK
Content-Type: application/json
{
"success": true,
"data": [
{
"alarmId": "2018080xxxxxx",
"alarmName": "DS-2CD3T25-I3(148508401)",
"alarmType": 10002,
"alarmTime": 1533206009000,
"channelNo": 1,
"isEncrypt": 1,
"isChecked": 0,
"recState": 4,
"preTime": 5,
"delayTime": 25,
"deviceSerial": "148508401",
"alarmPicUrl": "https://stage-allinone-ufile.hekr.me/ys-camera/6782xxxx.jpeg",
"relationAlarms": [],
"customerType": null,
"customerInfo": null,
"ctrlKey": "xxxx",
"devTid": "xxxxxx",
"name": "xxx",
"desc": "xxxx",
"uid": "1111"
}
],
"page": {
"total": 1,
"page": 0,
"size": 10
}
}
参数 |
类型 |
说明 |
ctrlKey |
String |
设备ctrlKey |
devTid |
String |
设备devTid |
name |
String |
设备名称 |
desc |
String |
设备描述 |
uid |
String |
用户uid |
alarmId |
String |
消息ID |
alarmName |
String |
告警源名称 |
alarmType |
int |
告警类型 参见告警类型 |
alarmTime |
long |
告警时间,long格式如12323452345,精确到毫秒 |
channelNo |
int |
通道号 |
isEncrypt |
int |
是否加密:0-不加密,1-加密 |
isChecked |
int |
是否已读:0-未读,1-已读 |
recState |
int |
存储类型:0-无存储,1-萤石云存储,4-sd卡存储,5-萤石云存储和sd卡存储 |
preTime |
int |
预录时间:单位秒 |
delayTime |
int |
延迟录像时间:单位秒 |
deviceSerial |
String |
设备序列号 |
alarmPicUrl |
String |
告警图片地址 |
relationAlarms |
list |
关联的告警消息 |
customerType |
String |
透传设备参数类型 |
customerInfo |
String |
透传设备参数内容 |
告警类型
告警编码 |
告警信息 |
10000 |
人体感应事件 |
10001 |
紧急遥控按钮事件 |
10002 |
移动侦测告警 |
10003 |
婴儿啼哭告警 |
10004 |
门磁告警 |
10005 |
烟感告警 |
10006 |
可燃气体告警 |
10008 |
水浸告警 |
10009 |
紧急按钮告警 |
10010 |
人体感应告警 |
10011 |
遮挡告警 |
10012 |
视频丢失 |
10013 |
越界侦测 |
10014 |
区域入侵 |
10015 |
人脸检测事件 |
10016 |
智能门铃告警 |
10018 |
幕帘告警 |
10019 |
单体门磁告警 |
10020 |
场景变更侦测 |
10021 |
虚焦侦测 |
10022 |
音频异常侦测 |
10023 |
物品遗留侦测 |
10024 |
物品拿取侦测 |
10025 |
非法停车侦测 |
10026 |
人员聚集侦测 |
10027 |
徘徊检测侦测 |
10028 |
快速移动侦测 |
10029 |
进入区域侦测 |
10030 |
离开区域侦测 |
10031 |
磁干扰告警 |
10032 |
电池电量低告警 |
10033 |
闯入告警 |
10035 |
婴儿大动作告警 |
10036 |
电源切换告警 |
10079 |
智能检测告警 |
10100 |
IO告警 |
10101 |
IO-1告警 |
10102 |
IO-2告警 |
10103 |
IO-3告警 |
10104 |
IO-4告警 |
10105 |
IO-5告警 |
10106 |
IO-6告警 |
10107 |
IO-7告警 |
10108 |
IO-8告警 |
10109 |
IO-9告警 |
10110 |
IO-10告警 |
10111 |
IO-11告警 |
10112 |
IO-12告警 |
10113 |
IO-13告警 |
10114 |
IO-14告警 |
10115 |
IO-15告警 |
10116 |
IO-16告警 |
12000 |
移动侦测告警开始 |
12001 |
视频信号丢失 |
12002 |
遮挡告警开始 |
12003 |
即时防区告警 |
12004 |
即时防区恢复 |
12005 |
24小时有声防区告警 |
12006 |
24小时有声防区恢复 |
12007 |
延时防区告警 |
12008 |
延时防区恢复 |
12009 |
内部延时防区告警 |
12010 |
内部延时防区恢复 |
12011 |
火警防区告警 |
12012 |
火警防区恢复 |
12013 |
周界防区告警 |
12014 |
周界防区恢复 |
12015 |
24小时无声防区告警 |
12016 |
24小时无声防区恢复 |
12017 |
24小时辅助防区告警 |
12018 |
24小时辅助防区告警恢复 |
12019 |
24小时震动防区告警 |
12020 |
24小时震动防区告警恢复 |
12021 |
防区感应器被拆 |
12022 |
防区感应器被拆恢复 |
12023 |
软防区紧急告警 |
12024 |
软防区火警 |
12025 |
软防区匪警 |
12026 |
挟持报告 |
12027 |
设备防拆 |
12028 |
设备防拆恢复 |
12029 |
交流电掉电 |
12030 |
交流电恢复 |
12031 |
蓄电池电压低 |
12032 |
蓄电池电压正常 |
12033 |
电话线断开 |
12034 |
电话线连接 |
12035 |
扩展总线模块掉线 |
12036 |
扩展总线模块掉线恢复 |
12037 |
键盘掉线 |
12038 |
键盘恢复 |
12039 |
键盘总线上触发器掉线 |
12040 |
键盘总线上触发器恢复 |
12041 |
自动布撤防失败 |
12042 |
自动撤防失败 |
12043 |
无线网络异常 |
12044 |
无线网络恢复正常 |
12045 |
SIM卡异常 |
12046 |
SIM卡恢复正常 |
12047 |
主机复位 |
12048 |
撤防 |
12049 |
布防 |
12050 |
自动撤防 |
12051 |
自动布防 |
12052 |
消警 |
12053 |
即时布防 |
12054 |
钥匙防区撤防 |
12055 |
钥匙防区布防 |
12056 |
留守布防 |
12057 |
强制布防 |
12058 |
旁路 |
12059 |
旁路恢复 |
12060 |
子系统组旁路 |
12061 |
子系统组旁路恢复 |
12062 |
手动测试报告 |
12063 |
定时测试报告 |
12064 |
单防区撤防 |
12065 |
单防区布防 |
12066 |
键盘锁定 |
12067 |
键盘解锁 |
12068 |
打印机掉线 |
12069 |
打印机恢复 |
12070 |
即时撤防 |
12071 |
留守撤防 |
12072 |
定时开启触发器 |
12073 |
定时关闭触发器 |
12074 |
定时开启触发器失败 |
12075 |
定时关闭触发器失败 |
12076 |
进入编程 |
12077 |
退出编程 |
12078 |
键盘总线上GP/K掉线 |
12079 |
键盘总线上GP/K恢复 |
12080 |
键盘总线上MN/K掉线 |
12081 |
键盘总线上MN/K恢复 |
12082 |
IP冲突 |
12083 |
IP正常 |
12084 |
网线断 |
12085 |
网线正常 |
12086 |
移动侦测告警结束 |
12087 |
遮挡告警结束 |
12088 |
视频信号恢复 |
12089 |
输入/输出视频制式不匹配 |
12090 |
输入/输出视频制式恢复正常 |
12091 |
视频输入异常 |
12092 |
视频输入恢复正常 |
12093 |
硬盘满 |
12094 |
硬盘空闲 |
12095 |
硬盘出错 |
12096 |
硬盘恢复正常 |
12097 |
图片上传失败 |
12098 |
探测器离线 |
12099 |
探测器恢复在线 |
12100 |
探测器电量欠压 |
12101 |
探测器电量恢复正常 |
12102 |
防区添加探测器 |
12103 |
防区删除探测器 |
12104 |
WIFI通信异常 |
12105 |
WIFI通信恢复正常 |
12106 |
RF信号异常 |
12107 |
RF信号恢复正常 |
10037 |
温度过高告警 |
10038 |
温度过低告警 |
10039 |
湿度过高告警 |
10040 |
湿度过低告警 |
12108 |
主机防拆告警 |
12109 |
主机防拆恢复 |
12110 |
读卡器防拆告警 |
12111 |
读卡器防拆恢复 |
12112 |
事件输入告警 |
12113 |
事件输入恢复 |
12114 |
门控安全模块防拆告警 |
12115 |
门控安全模块防拆恢复 |
12116 |
网络断开 |
12117 |
网络恢复 |
12118 |
设备上电启动 |
12119 |
设备掉电关闭 |
12120 |
门异常打开(门磁) |
40001 |
第三方抓图 |
40002 |
互联互通 |
错误码表
错误码 |
提示信息 |
中文释义 |
可能造成的原因 |
5200000, 620000 |
Success |
成功 |
无 |
5400000 |
Error |
未知错误 |
该行下面的以5400、6400开头的错误码需要单独处理 |
5400002 |
App repeat login error |
app重复登录 |
同一个appTid的app重复登录 |
5400003 |
appTid can not be empty |
appTid不能为空 |
appTid不能为空 |
5400004 |
Authorization already exists |
授权关系已存在 |
授权关系已存在 |
5400005 |
Authorization does not exist |
授权关系不存在 |
授权关系不存在 |
5400006 |
Bind failed due to network error |
因网络原因绑定失败 |
因网络原因绑定失败 |
5400007 |
Bind failed due to timeout error |
因超时原因绑定失败 |
因超时原因绑定失败 |
5400008 |
Can not bind other manufacture's device |
无法绑定其他厂商设备 |
非公版用户无法绑定非该pid设备 |
5400009 |
Modified user profile failed |
修改用户档案失败 |
修改用户档案失败 |
5400010 |
Check verify code error |
校验code失败 |
校验code失败 |
5400011 |
You have reached your device's authorization limits |
设备授权次数达到上限 |
设备授权次数达到上限,无法再次授权 |
5400012 |
Bind failed due to internal error |
因内部错误绑定失败 |
因内部错误绑定失败,一般是因为bindKey不对或者是devTid不对 |
5400013 |
Bind failed due to repeat bind |
因重复绑定绑定失败 |
因重复绑定绑定失败 |
5400014 |
Device does not belong to user |
设备不属于用户 |
设备不再属于该用户 |
5400015 |
No such instruction error |
没有这样的指令 |
没有这样的指令 |
5400016 |
Device can not repeat login |
设备无法重复登录 |
设备无法同时登录 |
5400017 |
devTid can not be empty |
devTid不能为空 |
devTid不能为空 |
5400018 |
Create timer task failed due to counts reach limit |
创建定时预约次数达到上限 |
创建定时预约次数达到上限 |
5400019 |
Instruction expired |
授权的指令已过期 |
授权的指令已过期 |
5400020 |
Instruction not support |
不支持该指令 |
不支持该指令,可能是指令填错了 |
5400021 |
Invalid email token |
不合法的邮件token |
不合法的邮件token |
5400022 |
Invalid old password |
不合法的旧密码 |
不合法的旧密码 |
5400023 |
Invalid verify code |
不合法的校验code |
不合法的校验code |
5400024 |
Device does not found due to internal error, please reconnect |
由于内部错误设备无法找到,请重连 |
|
5400025 |
No such manufacture id |
不存在该pid |
不存在该pid |
5400026 |
No permission to access the instruction |
没有对该指令的权限 |
没有对该指令的权限 |
5400027 |
Template with given id does not exist |
指定模板不存在 |
指定模板不存在 |
5400028 |
Device does not found due to incorrect status |
由于内部不正确的状态导致设备无法被找到 |
|
5400035 |
TaskId does not exist |
指定任务不存在 |
指定任务不存在 |
5400036 |
Can not create duplicate template |
无法创建重复模板 |
无法创建重复模板 |
5400037 |
devTid not match |
设备id 不匹配 |
报文填写的devTid与登录设备的devTid不一致 |
5400039 |
User does not exist |
用户不存在 |
用户不存在 |
5400045 |
|
短码或者短码密码错误 |
|
5400046 |
|
短码不足(系统错误) |
|
5400047 |
|
无权修改其他用户绑定设备 |
|
5400043 |
Device can not force bind |
设备无法强制绑定 |
设备无法强制绑定 |
5500000 |
Internal error |
内部错误 |
内部服务错误 |
6400001 |
Reverse auth template with given id does not exist |
指定id的反向注册申请不存在 |
请求已经被同意或拒绝 |
6400002 |
Invalid reverse authorization request |
不合法的反向授权请求 |
设备此时已经不属于该授权者;调用者不是授权者;反向授权请求id错误 |
6400003 |
Only owner can authorize |
只有属主可以授权设备给其他人 |
非属主尝试授权设备给其他人 |
6400004 |
Device with given devTid does not exist |
指定devTid的设备不存在 |
操作不存在的设备 |
6400005 |
Reached the maximum number of device the folder can hold |
达到文件夹所能容纳设备数量的上限 |
达到文件夹所能容纳设备数量的上限 |
6400006 |
Can not create duplicate template folder |
无法创建同名文件夹 |
创建同名文件夹 |
6400007 |
Folder with given id does not exist |
指定id的文件夹不存在 |
操作不存在的文件夹 |
6400008 |
Reached the maximum number of folder the user can create |
达到创建文件夹数量上限 |
达到创建文件夹数量上限 |
6400009 |
Can not remove root folder |
无法删除根目录 |
删除根目录 |
6400010 |
Can not rename root folder |
无法给根目录改名 |
给根目录改名 |
6400011 |
Rule with given id does not exist |
指定的规则不存在 |
操作不存在的规则 |
6400012 |
Scheduler task with given id does not exist |
指定的定时预约任务不存在 |
操作不存在的定时预约任务 |
6400013 |
Can not create duplicate rule |
无法创建相同的规则 |
创建相同的规则 |
6400014 |
Can not create duplicate scheduler task |
无法创建相同的定时预约 |
创建相同的定时预约 |
6400015 |
Invalid prodPubKey |
不合法的产品公共秘钥 |
不合法的产品公共秘钥 |
6400016 |
Has no privilege do that |
没有权限这样做 |
操作没有权限 |
6400017 |
Invalid Param {0} |
参数错误 |
请求参数错误 |
6400018 |
Cloud storage file with given name does not exist |
指定的网盘文件不存在 |
操作不存在的网盘文件 |
6400020 |
Can not find this infrared code |
找不到这个红外码 |
操作不存在的红外码 |
6400021 |
Infrared code request without response |
红外服务请求出错 |
|
6400022 |
Can not find instruction set |
无法找到指令集 |
操作不存在的指令集 |
6400023 |
Request params not supported |
参数不支持 |
请求参数错误 |
6400024 |
Translating Json to String failure |
解析json失败 |
|
6400025 |
Scheduler not supported |
不支持定时预约 |
该设备不支持定时预约功能 |
6500001 |
Delete cloud storage file failed |
删除网盘文件失败 |
网盘操作失败 |
6500002 |
Upload cloud storage file failed |
上传网盘文件失败 |
网盘操作失败 |
6500003 |
Server use httpClient invoke failed |
http网络调用失败 |
http调用失败 |