门禁物模型

更新时间:

本文档说明门禁设备对接的物模型和功能分类,目的是指导厂商如何根据设备能力选择产品品类和能力集。

厂商对接时参考文档中第1节物模型选择需要的能力,再到第2节的品类支持能力中选择可以满足需求的品类。

1. 物模型

门禁设备的能力各不相同,很多设备会是几个能力的组合。IoT针对不同的品类也定义了不同的能力。厂商要根据设备的能力需求,确定要对接的品类是否能满足需求。

下面梳理了各种能力的组合,选定后再根据第2节的品类的能力列表选择适配对接的品类。

物模型中包含了服务、属性和事件定义。为了描述方案,下面用前缀标识出需要的物模型成员类型:

[P] - 属性,[E] - 事件,[S] - 服务

对于物模型中服务、属性和事件更详细的描述,在对接品类时可以查看。

能力

需要的物模型 [P] - 属性,[E] - 事件,[S] - 服务

说明

二维码直发

[S] 新增二维码 addQrCode

[S] 删除二维码 delQrCode

[E] 通行事件 passEvent

[E] 报警事件 alarmEvent

早期直接通过物模型下发的二维码,目前不再使用,只维护存量设备。

密码直发

[S] 设置密码 setPassword

[E] 通行事件 passEvent

[E] 报警事件 alarmEvent

早期直接通过物模型下发的密码门禁,目前不再使用,只维护存量设备。

卡同步

[S] 同步权限 syncPermissions

[E] 异常刷卡 abnormalCreditCard

[E] 通行事件 passEvent

[E] 报警事件 alarmEvent

用权限文件下发的同步门禁,有独立事件上报异常刷卡;

蓝牙同步

[S] 同步权限 syncPermissions

[E] 异常刷卡 abnormalBleCard

[E] 通行事件 passEvent

[E] 报警事件 alarmEvent

用权限文件下发的同步门禁,有独立事件上报异常刷卡;

二维码同步

[S] 同步权限 syncPermissions

[E] 通行事件 passEvent

[E] 报警事件 alarmEvent

用权限文件下发的同步门禁

加密二维码

[P] RSA公钥(加密二维码)RSAPublicKey

在二维码同步门禁基础上,增加加密功能

人脸 1.0

[S] 同步人脸库图片 SyncFacePictures

[S] 查询人脸布控进度 QuerySyncPicSchedule

[S] 查询布控成功的人脸图 QueryAddedUserInfo

[S] 查询权限数 QueryFacePermTotal

[E] 人脸比对事件上报 OnMatched

[E] 人脸检测事件上报 OnDetect

门禁设备对接推荐的接入版本

通过“部署”、“查询部署进度”和“查询全量权限”完成整个部署流程。

支持人脸识别和陌生人事件上报;

支持设备权限数查询;

人脸 2.0

[S] 查询设备数据校验码 QueryDataCheckCode

[S] 查询用户是否存在 QueryUserData

[S] 同步人脸数据 SyncFaceData

[S] 同步人脸图片失败 OnFacePicError

[E] 人脸库同步确认 OnSync

[E] 上报设备数据校验码 PublishDataCheckCode

[E] 智能告警 IntelligentAlarm

门禁设备2.0版本对接,无特殊需求不推荐对接。

人脸特征下发[1]

[P] 算法版本 FaceAlgorithmVersion

[P] 固件版本 FirmwareVersion

[P] 支持人脸特征开关 SupportFaceFeature

[S] 部署人脸特征 SyncFaceFeatures

在人脸1.0基础上,增加人脸特征下发功能

可视对讲

[S] 下发手机号校验结果 NotifyPhoneNumberCheckResult

[S] 颁发 SyncSipNumber

[S] 同步组号和房间号 SyncGroupIdAndRoomId

[S] 查询 querySipNumber

[E] 开门事件 doorOpenEvent

[S] 校验手机号 checkPhoneNumber

在人脸1.0基础上,增加可视对讲功能。可与室内天猫精灵对接。

远程开门-参数版

[S] 远程开门 RemoteControl

在健康码对接的基础上,支持提示消息的开门操作

远程开门-无参版

[S] 远程开门 remoteControl

无参数版本,只完成开门动作。

注:

  • [1] 人脸特征下发只适用于人脸1.0物模型。

  • [2] 物的能力不一定只适用唯一的能力,有些服务或事件是通用的,可以支持多种能力。

2. 支持的品类

下面列出门禁服务支持的品类和对应的能力集合

分类

品类

功能

智能生活 -> 家居安防

人脸识别能力模型/ FaceRecognitionCapabilityModel

人脸下发 1.0(不推荐)

摄像头/Camera

智能城市 -> 公共服务

人脸识别门禁/FaceRecognition

人脸下发 1.0

人脸特征下发

智能园区

刷卡门禁/CardAccess

卡同步门禁

同步门禁

密码门禁/PasswordAccess

密码直发

远程开门(无参版)

二维码门禁/QrCodeAccess

二维码直发

远程开门(无参版)

二维码门禁机/QrCodeAccessControl

同步门禁

远程开门

蓝牙门禁/BluetoothAccess

蓝牙同步门禁

同步门禁

多功能门禁/MultiAccessControl

人脸下发 1.0

人脸特征下发

人脸下发 2.0-不推荐

SIP可视对讲

同步门禁

加密二维码

远程开门

可视对讲机门口机/VideoIntercomDoor

可视对讲

边缘计算

人脸识别机/FaceRecognizeDevice

人脸下发 2.0

摄像头边缘节点/VisionAccessNode

AIBox,支持人脸下发 2.0

自定义品类

自定义品类/CustomCategory

无预定义功能,在SI中选择能力创建

注:上面的能力列表只面向门禁领域专用能力,实际品类物模型可能包含其它能力,不在上表中列出。

权限计数服务

以服务形式从云端调用设备端执行实时统计。此统计直接查询设备存储,不受SDK影响。

{
    "services":[
        {
            "identifier":"QueryFacePermTotal",
            "method":"thing.service.QueryFacePermTotal",
            "name":"查询设备上人脸权限总数",
            "required":true,
            "callType":"sync",
            "inputData":[

            ],
            "outputData":[
                {
                    "name":"当前人脸库权限总数",
                    "identifier":"FacePermTotal",
                    "dataType":{
                        "specs":{
                            "min":"0",
                            "unitName":"无",
                            "max":"1000000",
                            "step":"1"
                        },
                        "type":"int"
                    }
                }
            ]
        }
    ]
}

人脸特征物模型

属性:

  • 特征下发开关属性 SupportFaceFeature

  • 人脸算法版本 FaceAlgorithmVersion

  • 设备固件版本 FirmwareVersion

{
    "properties":[
       {
            "identifier":"SupportFaceFeature",
            "dataType":{
                "specs":{
                    "0":"支持",
                    "1":"不支持"
                },
                "type":"bool"
            },
            "name":"设备是否支持人脸特征下发"
        },
        {
            "identifier":"FaceAlgorithmVersion",
            "dataType":{
                "specs":{
                    "length":"65"
                },
                "type":"text"
            },
            "name":"人脸库算法版本",
            "accessMode":"rw",
            "required":true
        },
        {
            "identifier":"FirmwareVersion",
            "dataType":{
                "specs":{
                    "length":"65"
                },
                "type":"text"
            },
            "name":"设备固件版本",
            "accessMode":"rw",
            "required":true
        }
    ]
}

服务

  • 人脸特征下发 SyncFaceFeatures

{
    "services":[
        {
            "name":"同步人脸库特征",
            "identifier":"SyncFaceFeatures",
            "method":"thing.service.SyncFaceFeatures",
            "required":false,
            "callType":"sync",
            "inputData":[
                {
                    "identifier":"FacePicFeaturesURL",
                    "dataType":{
                        "specs":{
                            "length":"1024"
                        },
                        "type":"text"
                    },
                    "name":"同步特征文件URL地址"
                }
            ],
            "outputData":[
                {
                    "identifier":"SyncPicStatus",
                    "dataType":{
                        "specs":{
                            "0":"成功",
                            "1":"布控中",
                            "2":"下载文件失败",
                            "3":"解析文件失败"
                        },
                        "type":"enum"
                    },
                    "name":"设备同步图片状态值"
                }
            ]
        }
    ]
}

参数示例:

{"FacePicFeaturesURL":"http://xxxxxx"}

特征文件

新增人脸特信息,增加人脸特征字段,类型为字符串数组。

features: ["xxxxxxxxxxxxxxxxxx"]

完整示例:

{
  "groupId": "egqQkuFBPgh8pltWiw1S000100",
  "addFaceInfos": [
    {
      "faceId": "552f3570-4717-4a39-910b-d72542552d89",
      "faceMd5": "36c36fa96920e45ca5f00334675484bc",
      "faceUrl": "http://xxx",
      "userInfo": "{\"userName\": \"Xiao Wang\", \"expire\": \"2020-12-31 23:59:59\", \"policy\": \"DENY\", \"userExtInfo\": \"BLACKLIST\"}",
      "features": [ "xxxxxxxxxxxxxxxxxx" ],
      "index": 0,
      "clientTag": ""
    }
  ],
  "deleteFaceInfos": [
    {
      "faceId": "xxxx"
    },
    {
      "faceId": "yyyy"
    }
  ],
  "isCleanAll": false,
  "isCleanAllGroup": false
}

SIP可视对讲物模型

颁发SipNumber(SyncSipNumber): SaaS应用从SIP server为门禁机申请到SIP number, 通过该服务将SIP number通过阿里LP平台下发到门禁机。

同步组号和房间号 (SyncGroupIdAndRoomId) :当SaaS应用完成SIP Group创建并录入房间息后,通过该服务将GroupID与RoomID的映射关系表格下发到门禁机。门禁机在有人发起可视对讲呼叫时,可以根据房间号查找到对应的GroupID,然后发给SIP server呼叫GroupID里的所有SIP number。

查询SipNumber(querySipNumber):当SaaS应用想查询某个单元门禁机的SipNumber时,可以使用该服务

下发手机号校验结果该服务用在支持通过IPPBX直接呼叫手机的方案使用。