import logger from "../../dxmodules/dxLogger.js"; import bus from "../../dxmodules/dxEventBus.js"; import dxMap from "../../dxmodules/dxMap.js"; import driver from "../driver.js"; import config from "../../dxmodules/dxConfig.js"; import sqliteService from "./sqliteService.js"; import std from '../../dxmodules/dxStd.js' const faceService = {} faceService.receiveMsg = function (data) { logger.info('[faceService] receiveMsg :' + JSON.stringify(data)) bus.fire("trackResult", { id: data.id, result: data.userId ? true : false, userId: data.userId }) if (data.userId) { // TODO d1_person.find可能为空 let ret = sqliteService.d1_person.find({ userId: data.userId }) if (dxMap.get("UI").get("faceAuthStart") == "Y") { //正在人脸登录 if (JSON.parse(ret[0].extra).type != 0) { bus.fire("faceAuthResult", true) } else { bus.fire("faceAuthResult", false) } return } switch (config.get("face.voiceMode")) { case 0: break; case 1: driver.audio.clearCache() std.sleep(100) driver.audio.ttsPlay(ret[0].name) break; case 2: driver.audio.ttsPlay(config.get("face.voiceModeDate") ? config.get("face.voiceModeDate") : "欢迎光临") break; default: break; } // 通行认证处理 bus.fire("access", { data: { type: "300", code: data.userId }, fileName: data.picPath, similarity: true }) } else { // 人脸相似度验证失败 if (dxMap.get("UI").get("faceAuthStart") == "Y") { bus.fire("faceAuthResult", false) } else { let language=config.get("base.language")||"CN"; switch (config.get("face.stranger")) { case 0: break; case 1: driver.audio.play(`/app/code/resource/wav/${language}/register.wav`) break; case 2: driver.audio.play(`/app/code/resource/wav/${language}/stranger.wav`) break; default: break; } bus.fire("access", { data: { type: "300", code: data.userId }, fileName: data.picPath, similarity: false }) } } } faceService.regErrorEnum = { "callback": { title: "注册回调状态枚举", "-1": "faceService.contrastFailure", "-2": "faceService.scalingFailure", "-3": "faceService.failedToSavePicture", "-4": "faceService.convertToBase64Fail", }, "feature": { title: "特征值注册状态枚举", "-1": "faceService.base64DecodingFail", "-10": "faceService.contrastFailure", "-11": "faceService.similarityOverheight", }, "picture": { title: "图片注册状态枚举", "-1": "faceService.fileDoesNotExist", "-2": "faceService.theImageFormatIsNotSupported", "-3": "faceService.pictureReadFailure", "-4": "faceService.thePictureSizeDoesNotMatch", "-5": "faceService.imageParsingFailure", "-6": "faceService.imageYUVProcessingFailed", "-7": "faceService.failedToConvertJpegToImage", "-8": "faceService.faceInformationExtractionFailed", "-9": "faceService.theFaceIsNotUnique", "-10": "faceService.contrastFailure", "-11": "faceService.similarityOverheight", } } export default faceService