人脸权限下发状态(NeedManual)

更新时间:

1. 问题背景

人脸下发是通过API 进行权限数据下发,下发之后通过API 来查询状态; 有时会提示状态是 NeedManual , 这时需要人工介入排查;错误现象:

{
  "deviceIotId": "xxxxxxx",
  "faceId": "aaaaabbbbb",
  "gmtCreate": 1637549159000,
  "gmtModify": 1637549171000,
  "groupId": "iE8Bp6GmlpmMBOq9000000",
  "id": 78901822,
  "isDelete": "n",
  "status": "needManual",
  "tenantId": "TTTTTTTT",
  "transferCount": 0
}

1.1 人脸权限下发异步方式

1.2 查询人脸权限下发状态

1.3 人脸权限状态:

  • bizType = FACE_SYNC_STATUS

  • 当人脸开始下发时,推送toBeTransferred状态

  • 当完成下发时,推送transferred或transferDeleted

  • 当下发异常时,推送needManual

  • preStatus是变更前的状态,可能值有

  • toBeTransferred

  • deviceOffline

  • faceCheckTimeout

  • faceCheckError

  • facePushError

  • unknownError

  • transferTimeout

  • deleteTimeout

  • needManual

1.4 needManual 状态

  • 人脸权限下发会把人脸的图片/信息下发到边缘端(边缘端进行人脸对比)边缘端会存储图片信息到数据库,一旦存储到数据库失败,那人脸下发的状态 status 就会设置为 needManual

  • needManual 状态: 字面意思就是需要人工介入

2. 问题现象

  • 使用人员信息查询人脸权限下发状态

{
  "code": 200,
  "data": {
    "deviceListTotal": 1,
    "deviceListPageNo": 1,
    "deviceListPageSize": 20,
    "deviceList": [
      {
        "syncTime": "2021-12-08 15:24:35",
        "iotId": "SxbdAAAAABBBBBCCCCT000",
        "deviceNickName": "门口机_人脸识别",
        "status": "needManual"
      }
    ],
    "userType": "OPEN",
    "userName": "test",
    "userId": "1000018",
    "extInfo": "{"userName":"test","policy":"PERMISSION"}"
  }
}

3. 排查方法

3.1 判断网络状态

3.2 强行reset 状态

  • 如果网络监测正常, 只能reset 状态,然后重新下发

  • 如果下发再次失败, 采取工单人工协助解决