开放平台 / 智能门禁 / 6.2集成

6.2集成

1.平台介绍

第三方API 接口是提供互联网能否访问的的 API(本文档将主要描述服务器接口调用)

供应商: 门禁设备提供商,包括访问门禁数据的软件服务提供商

我方:我家云,物业系统集成商, 请求门禁数据的客户端开发者

2.开发指南

供应商提供 signaturetoken 以用于我家云访问接入

signature 签名认证我家云接入。

token为访问接口授权唯一 ID

 

2.1. 供应商门禁接口说明

2.1.1. 使用说明

1)供应商提供API接口,接口按以下说明提供

(2)该接口使用 http 技术对外发布接口

 

2.1.2. 请求参数说明

1)该接口请求参数名为 MESSAGE(区分大小写),参数格式为一个 JSON 字符串

2)请求实际参数:requestParam

3)附带头参数:header

4)开发者签名:signature

5)开发者令牌:token

6)例子:

{

requestParam:

{

telephone:"xxxx"

},

header:

{

signature:"xxx",

token:"xxx"

}

}

后面描述的参数都是放在 requestParam 里面的,例如这个例子的实际参数是 telephone

非必须参数可以不传,或者传""

 

2.1.3. 返回参数说明

1)实际返回参数:responseResult

2)调用接口名字:methodName

3)状态码:statusCode

状态码说明:

1:成功;

0:失败;

10001:登陆/激活成功,但是没有关联到设备;

90001:参数个数错误;

90002:参数名称错误;

90003openToken 错误;

4)例子

{

statusCode:"1",

methodName:"queryServerAddr",

responseResult:

{

addr:"xxxx"

}

}

后面描述的参数都是放在 responseResult 里面的,例如这个例子的实际参数是 addr 如果

responseResult 返回文字是说明,说明返回为空

 

 

3.服务器普通接口调用

3.1. 添加设备

3.1.1. 作用

设备注册到服务器(认证设备是否合法,合法范围设备ID

3.1.2. 请求方法

POST  http://www.test.com/ device/addDevice

 

3.1.3. 请求参数说明

名称 类型 是否必填 说明

deviceName String  设备名称

deviceCode String  设备的 SN 

3.1.4. 返回参数说明

名称 类型 说明

deviceId int 设备 ID(注册返回的设备 ID,用来操作设备的主键)

3.1.5. 请求示例

MESSAGE:

{

requestParam:

{

deviceName:"xxx",

deviceCode:"xxx"

},

header:

{

signature:"XXXX-XX-XX-XXXX",

token:"xxxxxxxx"

}

}

3.1.6. 返回示例

{

statusCode:"1",

methodName:"addDevice",

responseResult:

{

deviceId:xxx

}

}

 

3.2. 删除设备

3.2.1. 作用

删除指定的设备

3.2.2. 请求方法

POST  http://www.test.com/device/delDevice

 

3.2.3. 请求参数说明

名称 类型 是否必填 说明

deviceId int  设备 ID

3.2.4. 返回参数说明

null

3.2.5. 请求示例

MESSAGE:

{

requestParam:

{

deviceId:xxx

},

header:

{

signature:"XXXX-XX-XX-XXXX",

token:"xxxxxxxx"

}

}

3.2.6. 返回示例

{

statusCode:"1",

methodName:" delDevice",

responseResult:

{

}

}

 

3.3. 更新设备

3.3.1. 作用

更新设备的 SN 码或名称

3.3.2. 请求方法

POST  http://www.test.com/device/updateDevice

3.3.3. 请求参数说明

名称 类型 是否必填 说明

deviceId int  设备 ID

newDeviceName String  新设备的名称(不填则不更改)

newDeviceCode String  新设备的SN 码(不填则不更改)

3.3.4. 返回参数说明

null

3.3.5. 请求示例

MESSAGE:

{

requestParam:

{

deviceId: xxx,

newDeviceName:"xxx",

newDeviceCode:"xxx"

},

header:

{

signature:"XXXX-XX-XX-XXXX",

token:"xxxxxxxx"

}

}

3.3.6. 返回示例

{

statusCode:"1",

methodName:"updateDevice",

responseResult:

{

}

}

 

3.4. 生成开门密钥

3.5.1. 作用

生成我家云分配给业主所使用的开门密钥,该开门密钥可以放到APP开门使用

3.5.2. 请求方法

POST  http://www.test.com/key/makeSdkKey

3.5.3. 请求参数说明

名称 类型 是否必填 说明

deviceIds Array  设备 ID 数组

3.5.4. 返回参数说明

名称 类型 说明

deviceId int 设备 ID

sdkKey String 对应 deviceId sdkKey,开门密钥

3.5.5. 请求示例

MESSAGE:

{

requestParam:

{

deviceIds:[xxx, xxx,xxx]

},

header:

{

signature:"XXXX-XX-XX-XXXX",

token:"xxxxxxxx"

}

}

3.5.6. 返回示例

{

statusCode:"1",

methodName:"makeSdkKey",

responseResult:

{

xxx:xxx,

xxx:xxx,

xxx:xxx

}

}

 

 

3.5. 开门

3.5.1. 作用

生成我家云分配给业主所使用的开门密钥,该开门密钥可以放到APP开门使用

3.5.2. 请求方法

POST  http://www.test.com/key/openDoor

3.5.3. 请求参数说明

名称 类型 是否必填 说明

deviceId int 设备 ID

sdkKey String 对应 deviceId sdkKey,开门密钥

 

3.5.4. 返回参数说明

名称 类型 说明

success Boolean true

3.5.5. 请求示例

MESSAGE:

{

requestParam:

{

deviceId: xxx,

sdkKey:"xxx",

},

header:

{

signature:"XXXX-XX-XX-XXXX",

token:"xxxxxxxx"

}

}

3.5.6. 返回示例

{

statusCode:"1",

methodName:"makeSdkKey",

responseResult:

{

success:true

}

}

 

3.6.日志查询

3.11.1. 作用

开门日志查询

3.11.2. 请求方法

POSThttp://www.test.com/openDoorLog/selectOpenDoorLog

3.11.3. 请求参数说明

名称 类型 是否必填 说明

page int  分页的第几页(不填默认为 1

rows int  每页几行数据(不填默认为 10

 

3.11.4. 返回参数说明

名称 类型 说明

total int 日志总条数

rows Array 日志的数据

deviceId int 设备 ID

openTime long 开门的时间(时间戳)

3.11.5. 请求示例

MESSAGE:

{

requestParam:

{

page:xxx,

rows:xxx

},

header:

{

signature:"XXXX-XX-XX-XXXX",

token:"xxxxxxxx"

}

}

33

3.11.6. 返回示例

{

statusCode:"1",

methodName:" selectOpenDoorLog",

responseResult:

[

total:xxx,

rows:[

{openTime:xxx,openType:xxx,deviceId:xxx},

{openTime:xxx,openType:xxx,deviceId:xxx}

]

]

}

 


流程图