WakeupAndPreWakeupStartCheckComponent
最低版本: 1.0.0最后更新: 2020/10/21组件功能:
唤醒及预唤醒
支持平台:
平台 | 是否支持 |
豹小秘 | 是 |
豹花/大瓶 | 是 |
豹小秘 Mini | 是 |
参数
参数名 | 类型 |
param | WakeupAndPreWakeupStartCheckParam |
WakeupAndPreWakeupStartCheckParam
属性 | JS类型 | Java类型 | 默认值 | 必填 | 说明 | 最低版本 |
isNeedPreWakeup | boolean | boolean | true | no | 是否需要预唤醒 | 1.0.0 |
maxDistance | number | double | 3m | no | 最大距离 | 1.0.0 |
wakeupFaceDistance | number | double | 1.3m | no | 唤醒最大距离 | 1.0.0 |
wakeupFaceAngleX | number | double | 45度 | no | 唤醒最大人脸角度 | 1.0.0 |
isNeedInCompleteFace | boolean | boolean | yes | no | 是否包含不完整人脸检测 | 1.0.0 |
incompleteFaceCacheTimeout | number | long | 3000ms | no | 不完整人脸检测缓存时间 | 1.0.0 |
isPreWakeupNeedBody | boolean | boolean | yes | no | 预唤醒是否需要检测人体 | 1.0.0 |
preWakeupIntervalTime | number | long | 20000ms | no | 预唤醒间隔时间 | 1.0.0 |
recognizeTimeout | number | long | 2000ms | no | 人脸识别超时时间 | 1.0.0 |
isWakeupNeedRecognize | boolean | boolean | true | no | 唤醒是否需要识别 | 1.22.0,仅豹花/大瓶有效 |
状态码
返回状态 | 值 | 描述 |
STATUS_PRE_WAKEUP | 32710001 | 预唤醒被触发 |
结果码
返回结果 | 值 | 描述 |
RESULT_SUCCESS | 32610001 | 唤醒被触发 |
错误码
返回错误 | 值 | 描述 |
ERROR_OPEN_PERSON_DETECT_FAILED | -32600004 | 获取人脸数据失败 |
示例代码:
this.wakeupParam = new WakeupAndPreWakeupStartCheckParam(
false,//isNeedPreWakeup
0,//maxDistance
0,//wakeupFaceDistance
0,//wakeupFaceAngleX
false,//isNeedInCompleteFace
0,//incompleteFaceCacheTimeout
false,//isPreWakeupNeedBody
0,//preWakeupIntervalTime
0//recognizeTimeout
);
<WakeupAndPreWakeupStartCheckComponent
param={this.wakeupParam}
onStatusUpdate={this.onStatusUpdate}
onFinish={this.onFinish}
/>
public onStatusUpdate = (event?: ComponentEvent): boolean => {
console.log('onStatusUpdate==================');
if (event && event.status === ComponentStatusConst.STATUS_PRE_WAKEUP) {
console.log('ComponentStatusConst.STATUS_PRE_WAKEUP');
} else {
console.log('ComponentStatusConst other States');
}
return true;
};
public onFinish = (event?: ComponentEvent): boolean => {
if (event) {
if (event.status && event.data) {
let data = JSON.parse(event.data);
console.log('onFinished ', data);
} else {
console.log('onFinished ', event.status);
}
return true;
}
return false;
};