2.2 门禁一体机标准协议接口定义

更新时间:

1 方案介绍

门禁一体机标准协议支持人脸识别、二维码、刷卡、蓝牙、可视对讲、梯控功能接入物业管理一体机。

2 通用

门禁机对接边缘服务器,访问10000端口。

边缘服务器访问门禁机的端口由设备厂商自定义,定义后固定不变。

所有HTTP 报文的首部信息中,不能带有Connection: Keep-Alive字段,可以设置为Connection:Close。

物业管理一体机,以下简称“边缘服务器”。

下面接口是必须实现的通用接口。

2.1 建立连接

调用此接口建立门禁机与边缘服务器的双向通信连接,门禁设备跟边缘服务器互为客户端和服务端。

URL:http://[边缘服务器IP 或 门禁机IP]:[端口]/connect
Method:POST
Content-Type:application/json

说明

连接建立流程:

  1. 门禁机携带下面的请求参数向边缘服务器发起连接请求。

  2. 边缘服务器校验IP参数是否已经配置,如未配置,拒绝连接请求。设备信息配置需要预先在云端配置好,并部署到边缘。

  3. 门禁机收到边缘服务器返回的成功消息后,单向连接建立完成。响应消息中包含一个有效的token信息。

  4. 边缘服务器携带下面的请求参数向门禁机发起连接请求。

  5. 门禁机收到请求后,返回成功消息,里面包含一个有效的token信息。

  6. 边缘服务器收到成功消息后,双向连接建立完成。

请求参数

名称

类型

是否必选

示例值

描述

sn

String

123456789

长度为4-32个字符,可以包含英文字母、数字和特殊字符:连字符(-)、下划线(_)、at符号(@)、点号(.)、和英文冒号(:)。

time

Integer

1589472000

请求的时间戳。以秒为单位,需要使用UTC时间。

ip

String

192.168.1.128

连接发起方的IPv4地址。

mac

String

00-**-3D-40

连接发起方的MAC地址。

keepalive

Integer

30

单位:秒,合法取值范围[10,120]。

signMethod

String

md5

签名方式,目前支持MD5、SHA-1、SHA-256。取值范围{ md5, sha1, sha256 }。

sign

String

4db511**42

需要签名的内容封装格式:

"TIME{time}MAC{mac}SN{sn}IP{ip}"大括号内的是具体内容,其外面的是名称。备注:time要转换成string类型。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

data

JSONObject

调用成功时,返回内容定义如下。

名称

类型

示例值

描述

token

String

6f2a-***-1-128

连接成功后,由接收连接的server端颁发的连接成功标识,代表一个有效连接,最大长度位64字节。在后续client的请求中需要携带,如“心跳保活”。

示例

请求示例

{
    "sn": "123456789",
    "time": 1589472000,
    "ip": "192.168.1.128",
    "mac": "00-16-EA-AE-3D-40",
    "keepalive": 30,
    "signMethod": "md5",
    "sign": "4db51117ad87cef349f45a3b14c05142"
}

正常返回示例

{
    "code": 0,
    "message": "success",
    "data":{
        "token": "6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128"
    }
}

错误码

code

描述

7

设备IP地址未在边缘服务器上注册。需要在IoT物联网平台上添加子设备,配置好IP,部署到边缘服务器上,即可。

附录查看更多错误码

2.2 心跳保活

门禁机与边缘服务器之间定期发送心跳消息,以确保消息通道的连通性,维持对方的在线状态。

URL:http://[边缘服务器IP 或 门禁机IP]:[端口]/keepalive
Method:POST
Content-Type:application/json

说明

建立连接后,服务器会向客户端颁发一个token,心跳消息中需要携带此token。当发送心跳时,对方返回token无效,那么需要重新建立连接,获取有效token。

请求参数

名称

类型

是否必选

示例值

描述

token

String

6f2a-***-1-128

有效连接的标识。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

示例

请求示例

{
    "token": "6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128"
}

正常返回示例

{
    "code": 0,
    "message": "success"
}

错误码

code

描述

4

token失效,需要重新建立连接,获取有效token。

附录查看更多错误码

2.3 远程开门

边缘服务器发送开门指令给门禁机。

URL:http://[门禁机IP]:[端口]/remoteOpen
Method:POST
Content-Type:application/json

说明

云端调用IoT设备的远程开门服务,边缘端接收到消息后,发送开门指令给门禁机,设备收到指令后开门放行。

请求参数

名称

类型

是否必选

示例值

描述

token

String

6f2a-***-1-128

有效连接的标识。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

示例

请求示例

{
    "token": "6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128"
}

正常返回示例

{
    "code": 0,
    "message": "success"
}

错误码

code

描述

4

token失效,需要重新建立连接,获取有效token。

附录查看更多错误码

2.4 报警事件

门禁机上报报警事件给边缘服务器。

URL:http://[边缘服务器IP]:[端口]/alarmEvent
Method:POST
Content-Type:application/json

说明

门禁机上报设备报警事件给边缘服务器,边缘服务器发送事件到云端。

请求参数

名称

类型

是否必选

示例值

描述

token

String

6f2a-***-128

有效连接标识。

alarmType

Integer

1

报警类型,枚举如下:

  • 0:防拆报警

  • 1:防拆报警解除

  • 2:无效门禁卡

  • 3:无效蓝牙卡

  • 4:强制开门报警

  • 5:强制开门报警解除

  • 6:超时未关门报警

  • 7:超时未关门报警解除

cardId

String

777342461

门禁卡或蓝牙卡的卡号。当alarmType为2或3时,需要加入此参数。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

示例

请求示例

{
    "token":"6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128",
    "alarmType":2,
    "cardId":"777342461"
}

正常返回示例

{
    "code": 0,
    "message": "success"
}

错误码

code

描述

4

token失效,需要重新建立连接,获取有效token。

附录查看更多错误码

2.5 设置常开状态

边缘服务器设置门禁设备的常开状态。

URL:http://[门禁机IP]:[端口]/setKeepOpen
Method:POST
Content-Type:application/json

说明

目前设置门常开状态的功能只支持具有刷卡功能的门禁设备。

请求参数

名称

类型

是否必选

示例值

描述

token

String

6f2a-***-128

有效连接标识。

data

JSONArray

  • keepOpen

Integer

1

门禁设备常开状态,枚举如下:

  • 0:关闭

  • 1:开启(常开状态)

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

示例

请求示例

{
    "token":"6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128",
    "data":{
        "keeOpen": 1
    }
}

正常返回示例

{
    "code": 0,
    "message": "success"
}

错误码

附录查看更多错误码

2.6 查询常开状态

边缘服务器查询门禁设备的常开状态。

URL:http://[门禁机IP]:[端口]/getKeepOpen
Method:POST
Content-Type:application/json

说明

目前查询门常开状态的功能只支持具有刷卡功能的门禁设备。

请求参数

名称

类型

是否必选

示例值

描述

token

String

6f2a-***-128

有效连接标识。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

data

JSONObject

  • keepOpen

Integer

0

门禁设备常开状态,枚举如下:

  • 0:关闭

  • 1:开启(常开状态)

示例

请求示例

{
    "token":"6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128"
}

正常返回示例

{
    "code": 0,
    "message": "success",
    "data":{
        "keepOpen": 0
    }
}

错误码

附录查看更多错误码

2.7 设置测温规则

边缘服务器设置门禁的测温开关和测温的阈值。

URL:http://[门禁机IP]:[端口]/setTempCheckRule
Method:POST
Content-Type:application/json

说明

对门禁机设置用户通行认证的测温规则,包括测温开关,温度上下限。

请求参数

名称

类型

是否必选

示例值

描述

token

String

6f2a-***-128

有效连接标识。

data

JSONObject

  • isCheck

Integer

1

门禁测温开关,枚举如下:

  • 0:关闭

  • 1:开启

  • maxThreshold

String

37.5

测温阈值的上限。默认单位为摄氏度。isCheck为1时,传递此参数。

  • minThreshold

String

36.5

测温阈值的下限。默认单位为摄氏度。isCheck为1时,传递此参数。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

示例

请求示例

{
    "token":"6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128",
    "data":{
        "isCheck": 1,
        "maxThreshold": "37.5",
        "minThreshold": "36.5"
    }
}

正常返回示例

{
    "code": 0,
    "message": "success"
}

3 人脸

3.1 【边缘端识别】人脸识别

门禁机抓拍通行人员的人脸照片,向边缘服务器发起人脸识别请求。

URL:http://[边缘服务器IP]:[端口]/recognize
Method:POST
Content-Type:multipart/form-data

说明

当有人员通行时,门禁设备向边缘服务器发起人脸识别。边缘认证成功后,返回给门禁设备允许放行,并上报人脸匹配通行事件。如果认证失败,返回失败结果给设备。

如果开启体温检测功能,体温值超过正常范围,则不允许通行。体温的正常范围由后台配置。

图片质量要求:

• 抓拍的图片中需要包含完整人脸像素

• 可根据自身设备能力选择在设备端或者边缘端完成人脸抠图处理(推荐设备端完成)

• 如果设备端进行人脸抠图,要求图片尺寸(宽、高)保证一致

• 图片分辨率不低于120 * 120 像素,大小不超过1MB

请求参数

名称

类型

是否必选

示例值

描述

token

String

6f2a-***-128

有效连接标识。

photo

File

支持jpg,jpeg,png格式

disableEdgeDetectFace

String

1

参数固定为1,表示边缘服务器对图片中的人脸进行检测定位,可以提高识别准确率,但识别时间会增加。

temperature

String

36.5

通过人脸识别获取的面部体温值。默认单位为摄氏度。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

data

JSONObject

调用成功时,返回内容定义如下。

  • faceId

String

ac1c2-31a7-3**066

人脸(人员身份)的唯一标识,字符串长度最大64字节。

  • name

String

王*飞

识别的人员名字。

  • photoId

String

d8a9a-dd-**-d355

在边缘人脸照片库中,通行人员人脸照片的唯一标识。

  • userId

String

777342461

用户ID

示例

请求示例

token: "6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128"
photo: xxx.jpg
disableEdgeDetectFace: "1"
temperature: "36.5"

正常返回示例

{
    "code": 0,
    "message": "success",
    "data":{
        "faceId": "ac4af1c2-31a7-4206-9c8d-2a69cdaac066",
        "name": "王小飞",
        "photoId": "d8a0e59a-ddeb-11ea-a8c7-6c96cfdfd355",
        "userId": "123456"
    }
}

错误码

code

描述

1

人脸识别认证失败。

附录查看更多错误码

3.2 【设备端识别】同步人脸信息

边缘服务器同步人脸特征值信息到门禁机。

URL:http://[门禁机IP]:[端口]/faceAC/syncFaces
Method:POST
Content-Type:application/json

说明

当人脸数据超过50条,会被拆分为多次同步调用。每次同步最大50条,每次同步超时时间为10秒。

请求参数

名称

类型

是否必选

示例值

描述

token

String

6f2a-***-128

有效连接标识。

faces

JSONArray

  • type

Integer

1

人脸信息操作类型,枚举如下:

  • 1:增加

  • 2:删除

  • 3:更新

  • 4:删除全部

更新操作中有三种情形:

情形一:只更新userInfo

情形二:只更新feature

情形三:userInfo和feature都更新

  • faceId

String

ac1c2-31a7-3**066

人脸(人员身份)的唯一标识,字符串长度最大64字节。

  • feature

JSONArray

人脸照片的特征值。

元素类型为浮点型。

  • featureMd5

String

259**704

人脸照片特征值(feature)的MD5值。

  • userInfo

JSONObject

人员信息。

    • userId

String

用户ID

增加、更新时必选

    • userName

String

王*飞

人员姓名。

    • expiryTime

String

1905004800000

人脸信息失效时间。以毫秒为单位,需要使用UTC时间。

    • isInBlackList

Bool

true

代表人员是否在黑名单中。

  • userInfoMd5

String

56s**sk9

人员信息(userInfo)的MD5值。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

示例

请求示例

{
    "token":"6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128",
    "faces":[
        {
            "type":4
        },
        {
            "type":1,
            "faceId":"452f3570-4717-4a39-910b-d72542550001",
            "userInfo":{
                "userName":"张三",
                "expiryTime":"1599892792000",
                "isInBlackList":false
            },
            "userInfoMd5":"25984f381c98bfc842280b528f424701",
            "feature":[0.0069077396765351295, 0.06679696589708328,  ...],
            "featureMd5":"4be6f1e4bda138a555416b866a90530c"
        },
        {
            "type":3,
            "faceId":"452f3570-4717-4a39-910b-d72542550002",
            "feature":[0.0069077396765351295, 0.06679696589708328,  ...],
            "featureMd5":"4be6f1e4bda138a555416b866a90530c"
        },
        {
            "type":3,
            "faceId":"452f3570-4717-4a39-910b-d72542550003",
            "userInfo":{
                "userName":"李四",
                "expiryTime":"1599892792111",
                "isInBlackList":true
            },
            "userInfoMd5":"25984f381c98bfc842280b528f424703"
        },
        {
            "type":3,
            "faceId":"452f3570-4717-4a39-910b-d72542550004",
            "userInfo":{
                "userName":"赵五",
                "expiryTime":"1599892792222",
                "isInBlackList":false
            },
            "userInfoMd5":"25984f381c98bfc842280b528f424704",
            "feature":[0.0069077396765351295, 0.06679696589708328,  ...],
            "featureMd5":"4be6f1e4bda138a555416b866a90530c"
        },
        {
            "type":2,
            "faceId":"452f3570-4717-4a39-910b-d72542550009"
        }
    ]
}

正常返回示例

{
    "code": 0,
    "message": "success"
}

错误码

code

描述

0

同步成功,非0为同步失败。

附录查看更多错误码

3.3 【设备端识别】查询设备上人脸库信息

边缘服务器查询设备上的人脸特征值信息。

URL:http://[门禁机IP]:[端口]/faceAC/queryFaces
Method:POST
Content-Type:application/json

说明

当门禁机首次连接到边缘服务器或重新连接到边缘服务器时,获取设备上的人脸特征值存储情况,用于计算还需要同步到设备端的人脸数据。每次查询超时时间为10秒。

当人脸数量较多时,支持分页查询。边缘服务器先向设备发送全量查询请求,如果设备上的人脸数超过设备可处理的最大值,那么设备返回第1页的人脸数据和分页信息,之后边缘服务器会进行分页查询。

请求参数

名称

类型

是否必选

示例值

描述

token

String

6f2a-***-128

有效连接标识。

currentPage

Integer

1

当前页号。

如果不传此参数,表示全量查询。设备最多返回一次可查询的最大人脸数。

pageSize

Integer

200

指定返回结果中每页的最大人脸数量。

与currentPage参数一起使用。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

data

JSONObject

  • currentPage

Integer

1

当前页号。

  • pageCount

Integer

93

总页数。

  • pageSize

Integer

200

每页的最大人脸数量。

  • total

Integer

18483

设备上的人脸总数。

  • faceInfo

JSONArray

String

ac1c2-31a7-3**066

人脸(人员身份)的唯一标识,字符串长度最大64字符。

String

259**704

人员信息(userInfo)的MD5值。

String

56s**sk9

人脸照片特征值(feature)的MD5值。

说明:faceInfo中元素顺序固定。

  1. 人脸的唯一标识

  2. 人员信息的MD5值

  3. 人脸照片特征值的MD5值

示例

请求示例

{
    "token": "6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128",
    "currentPage": 1,
    "pageSize": 200
}

正常返回示例

{
    "code": 0,
    "message": "success",
    "data": {
        "currentPage": 1,
        "pageCount": 93,
        "pageSize": 200,
        "total": 18483,
        "faceInfo": [
            [
                "452f3570-4717-4a39-910b-d72542550001",
                "25984f381c98bfc842280b528f424701",
                "4be6f1e4bda138a555416b866a90530c"
            ],
            [
                "452f3570-4717-4a39-910b-d72542550004",
                "25984f381c98bfc842280b528f424704",
                "4be6f1e4bda138a555416b866a90530c"
            ]
        ]
    }
}

错误码

code

描述

0

同步成功,非0为同步失败。

附录查看更多错误码

3.4 【设备端识别】人脸通行事件

门禁机上报通行人员识别人脸的通行事件给边缘服务器。

URL:http://[边缘服务器IP]:[端口]/faceAC/passEvent
Method:POST
Content-Type:multipart/form-data

说明

门禁机上报通行人员刷脸成功的事件给边缘服务器,边缘服务器发送事件到云端。

请求参数

名称

类型

是否必选

示例值

描述

token

String

6f2a-***-128

有效连接标识。

faceId

String

ac1c2-31a7-3**066

人脸(人员身份)的唯一标识,字符串长度最大64字节。

similarity

String

0.68

通行人脸照片与人脸库照片匹配的相似度。内容为0-1之间的小数,0代表匹配度最低,1代表匹配的最高。

photo

File

人员通行时抓拍的人脸照片。

temperature

String

36.5

通过人脸识别获取的面部体温值。默认单位为摄氏度。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

data

JSONObject

  • photoId

String

d8a9a-dd-**-d355

在边缘人脸照片库中,通行人员人脸照片的唯一标识。

示例

请求示例

token: "6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128"
faceId: "ac4af1c2-31a7-4206-9c8d-2a69cdaac066"
photo: xxx.jpg
similarity: "0.78654"
temperature: "36.5"

正常返回示例

{
    "code": 0,
    "message": "success",
    "data":{
        "photoId": "d8a0e59a-ddeb-11ea-a8c7-6c96cfdfd355"
    }
}

错误码

code

描述

5

人脸照片内容无效

附录查看更多错误码

4 二维码

4.1 二维码识别

门禁机识别通行人员的手机二维码,向边缘服务器发起二维码识别请求。

URL:http://[边缘服务器IP]:[端口]/qrcode
Method:POST
Content-Type:application/json

说明

当有人员通行时,门禁设备向边缘服务器发起二维码识别。边缘认证成功后,返回给门禁设备允许放行,并上报通行事件。如果认证失败,返回失败结果给设备。

请求参数

名称

类型

是否必选

示例值

描述

token

String

6f2a-***-128

有效连接标识。

qrCode

String

ALIw***xz6x

长度为32个字节。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

data

JSONObject

  • userId

String

777342461

用户ID

示例

请求示例

{
    "token": "6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128",
    "qrCode": "ALI1234567890azxswdfghggfgsgERTG"
}

正常返回示例

{
    "code": 0,
    "message": "success",
    "data": {
     "userId": "123456"
    }
}

错误码

code

描述

1

二维码认证失败。

附录查看更多错误码

5 门禁卡

5.1 同步卡权限

边缘服务器同步卡权限信息到门禁机。

URL:http://[门禁机IP]:[端口]/cardAC/syncPermissions
Method:POST
Content-Type:application/json

说明

边缘服务器接收云端下发的卡权限信息,调用此接口发送到设备端。每次同步最大200条,同步超时时间为5秒。

请求参数

名称

类型

是否必选

示例值

描述

token

String

6f2a-***-128

有效连接标识。

permissions

List

  • type

Integer

1

门禁卡操作类型,枚举如下:

  • 1:增加

  • 2:删除

  • 3:修改

说明:对于增加和修改处理方式相同,如果该卡信息存在则对已有的卡信息做更新处理,如果该卡信息不存在则做新增处理。

  • userId

String

777342461

用户ID

  • cardId

String

777342461

门禁卡的卡号。

  • effectiveTime

String

1589472000000

门禁卡生效的时间。以毫秒为单位,需要使用UTC时间。

  • expiryTime

String

1905004800000

门禁卡过期的时间。以毫秒为单位,需要使用UTC时间。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

示例

请求示例

{
    "token":"6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128",
    "permissions":[
        {
            "type":1,
            "cardId":"777342461",
            "effectiveTime":"1589472000000",
            "expiryTime":"1905004800000"
        },
        {
            "type":2,
            "cardId":"777342461",
            "effectiveTime":"1589472000000",
            "expiryTime":"1905004800000"
        },
        {
            "type":3,
            "cardId":"777342461",
            "effectiveTime":"1589472000000",
            "expiryTime":"1905004800000"
        }
    ]
}

正常返回示例

{
    "code": 0,
    "message": "success"
}

错误码

附录查看更多错误码

5.2 刷卡通行事件

门禁机上报刷卡通行事件给边缘服务器。

URL:http://[边缘服务器IP]:[端口]/cardAC/passEvent
Method:POST
Content-Type:application/json

说明

门禁机上报人员刷卡通行的事件给边缘服务器,边缘服务器发送事件到云端。

请求参数

名称

类型

是否必选

示例值

描述

token

String

6f2a-***-128

有效连接标识。

cardId

String

777342461

门禁卡的卡号。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

示例

请求示例

{
    "token": "6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128",
    "cardId": "777342461"
}

正常返回示例

{
    "code": 0,
    "message": "success"
}

错误码

附录查看更多错误码

6 蓝牙

6.1 同步蓝牙权限

边缘服务器同步蓝牙权限信息到门禁机。

URL:http://[门禁机IP]:[端口]/bleAC/syncPermissions
Method:POST
Content-Type:application/json

说明

边缘服务器接收云端下发的蓝牙权限信息,调用此接口发送到设备端。每次同步最大200条,同步超时时间为5秒。

请求参数

名称

类型

是否必选

示例值

描述

token

String

6f2a-***-128

有效连接标识。

permissions

List

  • type

Integer

1

蓝牙卡操作类型,枚举如下:

  • 1:增加

  • 2:删除

  • 3:修改

说明:对于增加和修改处理方式相同,如果该卡信息存在则对已有的卡信息做更新处理,如果该卡信息不存在则做新增处理。

  • userId

String

777342461

用户ID

  • cardId

String

777342461

蓝牙卡的卡号。

  • effectiveTime

String

1589472000000

蓝牙卡生效的时间。以毫秒为单位,需要使用UTC时间。

  • expiryTime

String

1905004800000

蓝牙卡过期的时间。以毫秒为单位,需要使用UTC时间。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

示例

请求示例

{
    "token":"6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128",
    "permissions":[
        {
            "type":1,
            "cardId":"777342461",
            "effectiveTime":"1589472000000",
            "expiryTime":"1905004800000"
        },
        {
            "type":2,
            "cardId":"777342461",
            "effectiveTime":"1589472000000",
            "expiryTime":"1905004800000"
        },
        {
            "type":3,
            "cardId":"777342461",
            "effectiveTime":"1589472000000",
            "expiryTime":"1905004800000"
        }
    ]
}

正常返回示例

{
    "code": 0,
    "message": "success"
}

错误码

附录查看更多错误码

6.2 蓝牙通行事件

门禁机上报蓝牙通行事件给边缘服务器。

URL:http://[边缘服务器IP]:[端口]/bleAC/passEvent
Method:POST
Content-Type:application/json

说明

门禁机上报人员蓝牙通行的事件给边缘服务器,边缘服务器发送事件到云端。

请求参数

名称

类型

是否必选

示例值

描述

token

String

6f2a-***-128

有效连接标识。

cardId

String

777342461

蓝牙卡的卡号。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

示例

请求示例

{
    "token": "6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128",
    "cardId":"777342461"
}

正常返回示例

{
    "code": 0,
    "message": "success"
}

错误码

附录查看更多错误码

7 对讲

7.1 颁发门禁机SIP Number

边缘服务器同步SIP Number给门禁机。

URL:http://[门禁机IP]:[端口]/visualIntercom/syncSipNumber
Method:POST
Content-Type:application/json

说明

当云端下发的SIP账号时,边缘服务器推送SIP Number等信息给到门禁机。

每次门禁机与边缘服务器建立连接后,边缘服务器会再次同步SIP Number给门禁机。

请求参数

名称

类型

是否必选

示例值

描述

token

String

6f2a-***-128

有效连接标识。

sipNumber

String

MNUt***CBz

连接SIP Server的账号。

password

String

******

连接SIP Server的密码。

sipServerAddr

String

47.103.XX.XXX

SIP Server的IP地址。

sipServerPort

String

6050

SIP Server的端口。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

示例

请求示例

{
    "token":"6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128",
    "sipNumber": "MNUtFSr9soldjp34IxYCBz",
    "password": "******",
    "sipServerAddr": "47.103.XX.XXX",
    "sipServerPort": "6050"
}

正常返回示例

{
    "code": 0,
    "message": "success"
}

错误码

附录查看更多错误码

7.2 获取groupID

门禁机向边缘服务器查询房号的SIP组ID。

URL:http://[边缘服务器IP]:[端口]/visualIntercom/getGroupId
Method:POST
Content-Type:application/json

说明

用户输入呼叫的房号时,门禁机向边缘服务器查询房号对应的SIP group ID。

请求参数

名称

类型

是否必选

示例值

描述

token

String

6f2a-***-128

有效连接标识。

roomId

String

1-9-3-1202

规则:期号-楼幢号-单元号-房号

例如:

1-9-3-1202

1-10-3A-1709

1-5-767-801

最大位数:1位-3位-4位-5位,规则数字+字母。

期号默认为1。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

groupId

String

4sews***HlbWkjbL

成功时,返回房号对应的SIP组ID。

示例

请求示例

{
    "token":"6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128",
    "roomId": "1-9-3-1202"
}

正常返回示例

{
    "code": 0,
    "message": "success",
    "groupId": "4sewsEXT8ezMnlHlbWkjbL"
}

错误码

附录查看更多错误码

7.3 验证手机号

门禁机向边缘服务器查询房号的SIP组ID。

URL:http://[边缘服务器IP]:[端口]/visualIntercom/checkPhoneNumber
Method:POST
Content-Type:application/json

说明

由门禁机通过边缘服务器向云端发送手机号校验请求。边缘服务器返回给门禁机的结果只能表明边缘服务器是否已成功向云端发起校验请求,并不能代表校验结果。校验结果会通过“7.4 手机号校验结果”接口异步下发,因此设备需要自己处理等待校验结果超时的情况。

请求参数

名称

类型

是否必选

示例值

描述

token

String

6f2a-***-128

有效连接标识。

phoneNumber

String

139****1111

待校验的手机号。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

示例

请求示例

{
    "token":"6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128",
    "phoneNumber": "139****1111"
}

正常返回示例

{
    "code": 0,
    "message": "success"
}

错误码

附录查看更多错误码

7.4 手机号校验结果

云端将手机号校验结果,通过边缘服务器下发给门禁机。

URL:http://[门禁机IP]:[端口]/visualIntercom/verifyPhoneResult
Method:POST
Content-Type:application/json

说明

请求参数

名称

类型

是否必选

示例值

描述

token

String

6f2a-***-128

有效连接标识。

phoneNumber

String

139****1111

待校验的手机号。

result

Integer

0

校验结果,枚举如下:

  • 0:成功

  • 1:失败

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

示例

请求示例

{
    "token":"6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128",
    "phoneNumber": "139****1111",
    "result": 0
}

正常返回示例

{
    "code": 0,
    "message": "success"
}

错误码

附录查看更多错误码

7.5 上报开门事件

门禁机向边缘服务器上报对讲开门事件。

URL:http://[边缘服务器IP]:[端口]/visualIntercom/reportOpenDoor
Method:POST
Content-Type:application/json

说明

请求参数

名称

类型

是否必选

示例值

描述

token

String

6f2a-***-128

有效连接标识。

type

Integer

0

对讲类型,枚举如下:

  • 0:云对讲

  • 1:固话对讲

number

String

MNUt***CBz

云对讲类型,值为SipNumber。

固话对讲类型,值为手机号。

roomId

String

1-9-3-1202

对讲类型为云对讲时,提供此参数。

规则:期号-楼幢号-单元号-房号

例如:

1-9-3-1202

1-10-3A-1709

1-5-767-801

最大位数:1位-3位-4位-5位,规则数字+字母。

期号默认为1。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

示例

请求示例

{
    "token":"6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128",
    "type": 0,
    "number": "MNUtFSr9soldjp34IxYCBz",
    "roomId": "1-9-3-1202"
}

正常返回示例

{
    "code": 0,
    "message": "success"
}

8 梯控接口

8.1 上报电梯运行状态

梯控上报电梯的运行状态给边缘服务器。

URL:http://[边缘服务器IP]:[端口]/elevator/reportRunState
Method:POST
Content-Type:application/json

说明

每次建立连接后,上报一次电梯运行状态。当电梯运行状态变化时,立即上报实时的电梯工作状态。

限制

调用该接口的每秒请求数(QPS)最大限制为100。

请求参数

名称

类型

是否必选

示例值

描述

version

String

2021-12-13

API版本号,为日期形式:YYYY-MM-DD,最新版本为2021-12-13 。接口可能存在多个版本。

token

String

6f2a-***-128

有效连接标识。

data

JSONArray

电梯信息。

  • elevatorId

String

01

电梯ID,电梯的唯一标识。

  • currentFloor

String

9

电梯当前所在楼层。

  • carState

Integer

1

电梯轿厢的运行状态,枚举如下:

  • 0:停止

  • 1:运行

  • carDirection

Integer

2

电梯轿厢的运行方向,枚举如下:

  • 0:无方向

  • 1:上行

  • 2:下行

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

示例

请求示例

{
  "version": "2021-12-13",
  "token": "6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128",
  "data": [
    {
      "elevatorId": "01",
      "currentFloor": "9",
      "carState": 1,
      "carDirection": 2
    },
    {
      "elevatorId": "02",
      "currentFloor": "1",
      "carState": 0,
      "carDirection": 0
    }
  ]
}

正常返回示例

{
    "code": 0,
    "message": "success"
}

8.2 查询电梯运行状态

边缘服务器获取电梯当前运行状态。

URL:http://[门禁机IP]:[端口]/elevator/getRunState
Method:POST
Content-Type:application/json

说明

可以查询一个或多个电梯的运行状态,如果未指定电梯ID,需要返回全部电梯的运行状态。

限制

调用该接口的每秒请求数(QPS)最大限制为100。

请求参数

名称

类型

是否必选

示例值

描述

version

String

2021-12-13

API版本号,为日期形式:YYYY-MM-DD,最新版本为2021-12-13 。接口可能存在多个版本。

token

String

6f2a-***-128

有效连接标识。

elevatorList

JSONArray

01,02

待查询的elevatorId列表。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

data

JSONArray

电梯信息。

  • elevatorId

String

01

【可选参数】电梯ID,电梯的唯一标识。

  • currentFloor

String

9

【可选参数】电梯当前所在楼层。

  • carState

Integer

1

【可选参数】电梯轿厢的运行状态,枚举如下:

  • 0:停止

  • 1:运行

  • carDirection

Integer

2

【可选参数】电梯轿厢的运行方向,枚举如下:

  • 0:无方向

  • 1:上行

  • 2:下行

示例

请求示例

{
  "version": "2021-12-13",
  "token": "6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128",
  "data": [
    "01",
    "02"
  ]
}

正常返回示例

{
  "code": 0,
  "message": "success",
  "data": [
    {
      "elevatorId": "01",
      "currentFloor": "9",
      "carState": 1,
      "carDirection": 2
    },
    {
      "elevatorId": "02",
      "currentFloor": "1",
      "carState": 0,
      "carDirection": 0
    }
  ]
}

8.3 释放受控楼层

边缘服务器发送释放楼层控制指令,通知电梯开放指定楼层,允许用户选择已被授权的楼层。

URL:http://[门禁机IP]:[端口]/elevator/releaseFloors
Method:POST
Content-Type:application/json

说明

当用户在轿厢内进行权限认证时,例如刷卡,电梯释放其所在楼层权限。多用于用户拥有多楼层权限的情况,由用户手动选择目的楼层。

限制

调用该接口的每秒请求数(QPS)最大限制为100。

请求参数

名称

类型

是否必选

示例值

描述

version

String

2021-12-13

API版本号,为日期形式:YYYY-MM-DD,最新版本为2021-12-13 。接口可能存在多个版本。

token

String

6f2a-***-128

有效连接标识。

elevatorId

String

01

电梯的唯一标识。

如果不传此参数,表示操作所有电梯。

floorRoomList

JSONArray

楼层房号列表。

如果不传此参数,表示释放全部楼层。

  • floor

String

9

需要释放的楼层。

如果存在贯通门的情况,使用房号区分不同的电梯门。如果不存在贯通门,不需要传房间号。

  • room

String

601

需要释放的楼层的房间号。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

示例

请求示例

{
  "version": "2021-12-13",
  "token": "6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128",
  "elevatorId": "01",
  "floorRoomList": [
    {
      "floor": "9",
      "room": "901"
    },
    {
      "floor": "6",
      "room": "602"
    }
  ]
}

正常返回示例

{
    "code": 0,
    "message": "success"
}

8.4 点亮目标楼层

边缘服务器发送点亮楼层控制指令,电梯自动选中并点亮指定楼层。

URL:http://[门禁机IP]:[端口]/elevator/activateFloor
Method:POST
Content-Type:application/json

说明

当用户在轿厢内进行权限认证时,例如刷卡,电梯自动点亮其所在楼层权限。多用于用户只拥有某一楼层权限的情况。

一次接口调用可点亮多个楼层。

限制

调用该接口的每秒请求数(QPS)最大限制为100。

请求参数

名称

类型

是否必选

示例值

描述

version

String

2021-12-13

API版本号,为日期形式:YYYY-MM-DD,最新版本为2021-12-13 。接口可能存在多个版本。

token

String

6f2a-***-128

有效连接标识。

elevatorId

String

01

电梯的唯一标识。

如果不传此参数,表示操作所有电梯或默认电梯。

floorRoomList

JSONArray

楼层房号列表。

如果不传此参数,表示释放全部楼层。

  • floor

String

目标楼层

  • roomNumber

String

01

目标房间号。

存在贯通门的情况,需要传递此参数。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

示例

请求示例

{
  "version": "2021-12-13",
  "token": "6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128",
  "elevatorId": "01",
  "floorRoomList": [
    {
      "floor": "9",
      "roomNumber": "901"
    },
    {
      "floor": "6",
      "roomNumber": "602"
    }
  ]
}

正常返回示例

{
    "code": 0,
    "message": "success"
}

8.5 呼叫电梯

边缘服务器发送呼叫电梯指令,控制电梯到指定楼层。

URL:http://[门禁机IP]:[端口]/elevator/call
Method:POST
Content-Type:application/json

说明

  • 起始楼层是用户出发时乘坐电梯的楼层。

  • 目标楼层是用户乘坐电梯将要达到的楼层。

  • 当只给出起始楼层时,目标楼层为空,表示指派电梯到起始楼层等待用户乘用。

  • 当给出起始楼层和目标楼层时,表示指派电梯到起始楼层接用户到目标楼层。

  • 如果电梯ID字段为空,那么梯控可以使用默认电梯或随机指定电梯。

限制

调用该接口的每秒请求数(QPS)最大限制为100。

请求参数

名称

类型

是否必选

示例值

描述

version

String

2021-12-13

API版本号,为日期形式:YYYY-MM-DD,最新版本为2021-12-13 。接口可能存在多个版本。

token

String

6f2a-***-128

有效连接标识。

elevatorId

String

01

电梯ID,电梯的唯一标识。如果电梯ID字段为空,那么梯控可以使用默认电梯或随机指定电梯。

startFloor

String

6

用户乘梯出发的楼层。

startRoom

String

601

用户在出发楼层的房间号。

targetFloor

String

9

用户乘梯到达的楼层。

targetRoom

String

902

用户在到达楼层的房间号。

targetDirection

Integer

1

乘坐电梯要去的方向,枚举如下:

  • 1:上行

  • 2:下行

此参数针对电梯轿厢外呼场景,在不指定targetFloorName的时候使用。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

示例

请求示例

{
  "version": "2021-12-13",
  "token": "6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128",
  "elevatorId": "01",
  "startFloor": "1",
  "startRoom": "01",
  "targetFloor": 8,
  "targetRoom": "02"
}

正常返回示例

{
    "code": 0,
    "message": "success"
}

8.6 获取电梯信息

边缘服务器获取梯控的电梯ID和用户楼层房间信息。

URL:http://[门禁机IP]:[端口]/elevator/info/get
Method:POST
Content-Type:application/json

请求参数

名称

类型

是否必选

示例值

描述

version

String

2021-12-13

API版本号,为日期形式:YYYY-MM-DD,最新版本为2021-12-13 。接口可能存在多个版本。

token

String

6f2a-***-128

有效连接标识。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

data

JSONObject

  • elevatorMode

String

GROUP

【必选参数】

SINGLE:单控;只能控制特定的电梯,

多部电梯时需指定elevatorId

GROUP:群控;多部电梯时呼叫电梯根据梯控内部算法进行就近呼叫,不能指定特定电梯

ALL:双模(单控和群控);多部电梯即可进行指定电梯呼叫,也可根据梯控内部算法进行就近呼叫

  • floorInfoList

JSONArray

    • elevatorId

String

01

【可选参数】

电梯设备唯一标识。

    • elevatorName

String

【可选参数】

电梯设备别名

    • isDualCardDoor

Bool

【必选参数】

True:贯通门

False:单开门

    • floorInfo

JSONObject

【必选参数】

楼层信息

      • floor

String

【必选参数】

住户可见楼层

      • roomList

JSONArray

【可选参数】

住户可见房间列表

        • roomNumber

String

【可选参数】

住户可见房间

示例

请求示例

{
  "version": "2021-12-13",
  "token": "6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128"
}

正常返回示例

{
  "code": 0,
  "message": "success",
  "data": {
    "elevatorMode": "ALL",
    "floorInfoList": [
      {
        "elevatorId": "01",
        "elevatorName": "dongti",
        "isDualCardDoor": true,
        "floorInfo": [
          {
            "floor": "5",
            "roomList": [
              "501",
              "502"
            ]
          },
          {
            "floor": "6",
            "roomList": [
              "601",
              "602"
            ]
          }
        ]
      }
    ]
  }
}

9 人梯联动

9.1 同步用户电梯规则

边缘服务器同步用户电梯规则信息到梯控。

URL:http://[门禁机IP]:[端口]/elevator/rule/sync
Method:POST
Content-Type:application/json

说明

当数据超过200条,会被拆分为多次同步调用。每次同步最大200条,每次同步超时时间为10秒。

请求参数

名称

类型

是否必选

示例值

描述

version

String

2021-12-13

API版本号,为日期形式:YYYY-MM-DD,最新版本为2021-12-13 。接口可能存在多个版本。

token

String

6f2a-***-128

有效连接标识。

rules

JSONArray

  • type

Integer

1

设备规则操作类型,枚举如下:

  • 1:增加

  • 2:删除

  • 3:更新

  • 4:删除全部;清除设备端所有用户电梯规则

  • ruleId

String

电梯设备规则ID

  • elevatorId

String

01

电梯ID,电梯的唯一标识。

  • userId

String

777342461

用户ID

  • controlMode

String

CALL_ONLY:呼梯到起始楼层

CALL_WITH_TARGET:呼梯到起始楼层,并指定一个或多个目标楼层

RELEASE_ONLY:轿厢内,释放一个或多个目标楼层

ACTIVATE_ONLY:轿厢内,点亮单个目标楼层

  • startFloor

String

触发联动场景的设备所在楼层

  • startRoom

String

触发联动场景的设备所在楼层的房间号

  • targetFloorRoomList

JSONArray

用户拥有权限的楼层房号列表。

    • floor

String

8

用户拥有权限的楼层。

如果存在贯通门的情况,使用房号区分不同的电梯门。如果不存在贯通门,不传房间号。

    • roomNumber

String

01

用户拥有权限的房间号。

  • delaySeconds

Integer

延迟执行的秒数,不填则表示立即执行,最大支持300秒

  • effectiveTime

String

1589472000000

用户电梯规则生效的时间。以毫秒为单位,需要使用UTC时间。

  • expiryTime

String

1905004800000

用户电梯规则过期的时间。以毫秒为单位,需要使用UTC时间。

说明:

此模式下需要传入参数:

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

示例

请求示例

{
  "version": "2021-12-13",
  "token": "6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128",
  "rules": [
    {
      "ruleId": "fa1a6-31a7-3**098",
      "userId": "ac1c2-31a7-3**066",
      "elevatorId": "01",
      "controlMode": "CALL_WITH_TARGET",
      "startFloor": "01",
      "startRoom": "601",
      "targetFloorRoomList": [
        {
          "floor": "9",
          "roomNumber": "01"
        }
      ],
      "delaySeconds": 10,
      "effectiveTime": "1589472000000",
      "expiryTime": "1905004800000"
    }
  ]
}

正常返回示例

{
    "code":0,
    "message":"success"
}

9.2 获取用户电梯规则

边缘服务器从梯控获取用户电梯规则。

URL:http://[门禁机IP]:[端口]/elevator/rule/get
Method:POST
Content-Type:application/json

请求参数

名称

类型

是否必选

示例值

描述

version

String

2021-12-13

API版本号,为日期形式:YYYY-MM-DD,最新版本为2021-12-13 。接口可能存在多个版本。

token

String

6f2a-***-128

有效连接标识。

currentPage

Integer

当前页号。

如果不传此参数,表示全量查询。设备最多返回一次可查询的最大人脸数。

pageSize

Integer

200

指定返回结果中每页的最大人脸数量。

与currentPage参数一起使用。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

data

JSONObject

  • currentPage

Integer

1

必填,当前页号。

  • pageCount

Integer

93

必填,总页数。

  • pageSize

Integer

200

必填,每页的最大数量。

  • userData

JSONArray

必填,子项目是否必填与《同步用户电梯规则》一致

    • ruleId

String

电梯设备规则ID

    • elevatorId

String

01

电梯ID,电梯的唯一标识。

    • userId

String

777342461

用户ID

    • controlMode

String

CALL_ONLY

CALL_ONLY:呼梯到起始楼层

CALL_WITH_TARGET:呼梯到起始楼层,并指定一个或多个目标楼层

RELEASE_ONLY:轿厢内,释放一个或多个目标楼层

ACTIVATE_ONLY:轿厢内,点亮单个目标楼层

    • startFloor

String

1

触发联动场景的设备所在楼层

    • startRoom

String

601

触发联动场景的设备所在楼层的房间号

    • targetFloorRoomList

JSONArray

用户拥有权限的楼层房号列表。

      • floor

String

8

用户拥有权限的楼层。

如果存在贯通门的情况,使用房号区分不同的电梯门。如果不存在贯通门,不传房间号。

      • roomNumber

String

01

用户拥有权限的房间号。

    • delaySeconds

Integer

延迟执行的秒数,不填则表示立即执行,最大支持300秒

    • effectiveTime

String

1589472000000

用户电梯规则生效的时间。以毫秒为单位,需要使用UTC时间。

    • expiryTime

String

1905004800000

用户电梯规则过期的时间。以毫秒为单位,需要使用UTC时间。

示例

请求示例

{
  "version": "2021-12-13",
  "token": "6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128",
  "currentPage": "01",
  "pageSize": "01"
}

正常返回示例

{
  "code": 0,
  "message": "success",
  "data": {
    "currentPage": 1,
    "pageCount": 10,
    "pageSize": 2,
    "userData": [
      {
        "ruleId": "fa1a6-31a7-3**098",
        "userId": "ac1c2-31a7-3**066",
        "elevatorId": "01",
        "controlMode": "CALL_WITH_TARGET",
        "startFloor": "01",
        "startRoom": "601",
        "targetFloorRoomList": [
          {
            "floor": "9",
            "roomNumber": "01"
          }
        ],
        "delaySeconds": 10,
        "effectiveTime": "1589472000000",
        "expiryTime": "1905004800000"
      }
    ]
  }
}

9.3 上报人梯联动事件

梯控系统向边缘服务器上报人梯联动结果。

URL:http://[边缘服务器IP]:[端口]/elevator/rule/report
Method:POST
Content-Type:application/json

说明

当用户在电梯内刷门禁卡、蓝牙卡、扫描二维码、人脸识别后呼梯或释放楼层,执行完成后由梯控系统向边缘服务器发起事件上报请求。

请求参数

名称

类型

是否必选

示例值

描述

version

String

2021-12-13

API版本号,为日期形式:YYYY-MM-DD,最新版本为2021-12-13 。接口可能存在多个版本。

token

String

6f2a-***-128

有效连接标识。

ruleId

String

设备规则ID

elevatorId

String

电梯编号

userId

String

777342461

用户ID

authType

String

认证类型:

  • face人qrcode二维码

  • card卡

  • bluetooth蓝牙

authContent

String

认证内容,由authType决定该内容。

authType为card时,该值填入cardId。

authType为bluetooth时,该值填入cardId。

authType为qrcode时,该值填入qrcode。

authType为face时,该值填入faceId。

controlMode

String

CALL_ONLY:呼梯到起始楼层

CALL_WITH_TARGET:呼梯到起始楼层,并指定一个或多个目标楼层

RELEASE_ONLY:轿厢内,释放一个或多个目标楼层

ACTIVATE_ONLY:轿厢内,点亮单个目标楼层

startFloor

String

1

用户乘梯出发的楼层。

说明:相对于最底层的相对楼层数。

startRoom

String

01

用户在出发楼层的房间号。

targetFloorRoomList

JSONArray

用户拥有权限的楼层房号列表。

  • floor

String

9

用户拥有权限的楼层。

如果存在贯通门的情况,使用房号区分不同的电梯门。如果不存在贯通门,不传房间号。

  • roomNumber

String

601

用户拥有权限的房间号。

delaySeconds

Integer

延迟执行的秒数,不填则表示立即执行,最大支持300秒

controlMode为CALL_ONLY:

参数

是否必填

startFloor

必填

startRoom

根据《获取电梯信息》返回值决定,

对应floor有roomNumber时为必填,否则为不填。

targetFloorRoomList

不填

controlMode为CALL_WITH_TARGET:

参数

是否必填

startFloor

必填

startRoom

根据《获取电梯信息》返回值决定,

对应floor有roomNumber时为必填,否则为不填。

targetFloorRoomList

必填

floor

必填

roomNumber

根据《获取电梯信息》返回值决定,

对应floor有roomNumber时为必填,否则为不填

controlMode为RELEASE_ONLY:

参数

是否必填

startFloor

不填

startRoom

不填

targetFloorRoomList

必填

floor

必填

roomNumber

根据《获取电梯信息》返回值决定,

对应floor有roomNumber时为必填,否则为不填

controlMode为ACTIVATE_ONLY:

参数

是否必填

startFloor

不填

startRoom

不填

targetFloorRoomList

必填

floor

必填

roomNumber

根据《获取电梯信息》返回值决定,

对应floor有roomNumber时为必填,否则为不填

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

示例

请求示例

{
  "version": "2021-12-13",
  "token": "6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128",
  "ruleId": "fa1a6-31a7-3**098",
  "elevatorId": "01",
  "userId": "ac1c2-31a7-3**066",
  "authType": "face",
  "authContent": "452f3570-4717-4a39-910b-d72542550001",
  "controlMode": "CALL_WITH_TARGET",
  "startFloor": "01",
  "startRoom": "601",
  "targetFloorRoomList": [
    {
      "floor": "9",
      "roomNumber": "01"
    }
  ],
  "delaySeconds": 10
}

正常返回示例

{
    "code":0,
    "message":"success",
}

9.4 设置人梯联动开关

边缘服务器同步人梯联动规则使能信息到梯控。

URL:http://[门禁机IP]:[端口]/elevator/rule/setAvailability
Method:POST
Content-Type:application/json

请求参数

名称

类型

是否必选

示例值

描述

version

String

2021-12-13

API版本号,为日期形式:YYYY-MM-DD,最新版本为2021-12-13 。接口可能存在多个版本。

token

String

6f2a-***-128

有效连接标识。

availability

String

enable

disable:禁用

enable:使能,设备出厂默认打开

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

示例

请求示例

{
  "version": "2021-12-13",
  "token": "6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128",
  "availability": "enable"
}

正常返回示例

{
    "code":0,
    "message":"success"
}

9.5 获取人梯联动开关状态

边缘服务器获取人梯联动规则使能信息。

URL:http://[门禁机IP]:[端口]/elevator/rule/getAvailability
Method:POST
Content-Type:application/json

请求参数

名称

类型

是否必选

示例值

描述

version

String

2021-12-13

API版本号,为日期形式:YYYY-MM-DD,最新版本为2021-12-13 。接口可能存在多个版本。

token

String

6f2a-***-128

有效连接标识。

返回参数

名称

类型

示例值

描述

code

Integer

0

调用成功时,返回0。失败时,返回的错误码。详见错误码表。

message

String

success

调用结果描述。

data

JSONObject

availability

String

enable

  • disable:禁用

  • enable:使能,设备出厂默认打开

示例

请求示例

{
  "version": "2021-12-13",
  "token": "6f2ae65e-d7f3-11ea-9a16-6c96cfdfd355-192-168-1-128"
}

正常返回示例

{
  "code": 0,
  "message": "success",
  "data": {
    "availability": "enable"
  }
}

错误码

附录查看更多错误码

附录

错误码

结果码

结果说明

0

成功

success

1

识别认证错误

2

保留字段

3

保留字段

4

token失效

device is offline

5

参数错误

6

签名校验错误

verify sign error

7

设备IP地址未配置

device is illegal

99

其他错误