PassiveFaceLiveness
Plugin que chama os SDKs nativos em Android e iOS. Caso tenha alguma dúvida, envie um email para o nosso Head of Mobile
Importando
import {PassiveFaceLiveness} from 'passive-face-liveness-plugin';
Utilizando
let passiveFaceLiveness = new PassiveFaceLiveness();
passiveFaceLiveness.setMobileToken = '<your mobile token>';
const response = passiveFaceLiveness.start();
if(response.result == "SUCCESS"){
// Sucesso
}else if(response.result == "FAILURE"){
// Falha. Confira reponse.type e response.message
}else{
// Usuário fechou a tela
}
Customizações gerais
PassiveFaceLiveness |
---|
.setPeopleId(String peopleId) CPF do usuário que está utilizando o plugin à ser usado para detecção de fraudes via analytics |
..setUseAnalytics(bool useAnalytics) Habilita/desabilita a coleta de dados para maximização da informação antifraude. O padrão é true |
..setSound(bool enable) Habilita/desabilita os sons. O padrão é true |
.setNetworkSettings(int requestTimeout) Altera as configurações de rede padrão. O padrão é 60 segundos |
..setShowPreview(ShowPreview showPreview) Preview para verificação de qualidade da foto |
.setAndroidSettings(PassiveFaceLivenessAndroidSettings androidSettings) Customizações somente aplicadas em Android |
.setIosSettings(PassiveFaceLivenessIosSettings iosSettings) Customizações somente aplicadas em iOS |
ShowPreview |
---|
Caso deseje personalizar os valores, crie uma String em ROOT_PROJECT/android/app/src/main/res/values/strings.xml com o nome e valor desejado e parametrize |
bool show Habilita/Desabilita preview |
String title Título |
String subTitle Subtítulo |
String confirmLabel Texto do botão de confirmação |
String retryLabel Texto do botão de capturar novamente |
Android
PassiveFaceLivenessAndroidSettings constructor |
---|
PassiveFaceLivenessCustomizationAndroid customization Customização do layout em Android da activity |
CaptureSettings captureSettings Configuraçōes de tempos de estabilização para a captura da selfie |
SensorSettingsAndroid sensorSettings Customização das configurações dos sensores de captura |
int showButtonTime Altera o tempo para a exibição do botão de captura manual. O padrão é 20000 milisegundos |
PassiveFaceLivenessCustomizationAndroid constructor |
---|
String styleResIdName Nome do style resource que define as cores do SDK. Por exemplo, caso deseje mudar as cores do SDK, crie um style em ROOT_PROJECT/android/app/src/main/res/values/styles.xml com o nome R.style.my_custom_style seguindo o template e parametrize "my_custom_style" |
String layoutResIdName Nome do layout resource que substituirá o layout padrão do SDK. Por exemplo, caso deseje mudar o layout do SDK, crie um layout em ROOT_PROJECT/android/app/src/main/res/layout/my_custom_layout.xml seguindo o template e parametrize "my_custom_layout" |
String greenMaskResIdName Nome do drawable resource à substituir a máscara verde padrão. Caso for usar este parâmetro, use uma máscara com a mesma área de corte, é importante para o algoritmo de detecção. Por exemplo, salve a imagem da máscara em ROOT_PROJECT/android/app/src/main/res/drawable/my_custom_green_mask.png e parametrize "my_custom_green_mask" |
String redMaskResIdName Nome do drawable resource à substituir a máscara vermelha padrão. Caso for usar este parâmetro, use uma máscara com a mesma área de corte, é importante para o algoritmo de detecção. Por exemplo, salve a imagem da máscara em ROOT_PROJECT/android/app/src/main/res/drawable/my_custom_red_mask.png e parametrize "my_custom_red_mask" |
String whiteMaskResIdName Nome do drawable resource à substituir a máscara branca padrão. Caso for usar este parâmetro, use uma máscara com a mesma área de corte, é importante para o algoritmo de detecção. Por exemplo, salve a imagem da máscara em ROOT_PROJECT/android/app/src/main/res/drawable/my_custom_white_mask.png e parametrize "my_custom_white_mask" |
CaptureSettings constructor |
---|
int beforePictureMillis Duração em milissegundos entre a primeira detecção do rosto e a efetiva captura da foto |
int afterPictureMillis Duração em milissegundos entre a captura da foto e o envio para o servidor para o mantimento do rosto e dos sensores válidos |
SensorSettingsAndroid constructor |
---|
SensorStabilitySettingsAndroid sensorStabilitySettings Configurações do sensor de orientação à ser aplicado em todos os passos do SDK |
SensorStabilitySettingsAndroid constructor |
---|
String messageResourceIdName Nome do string resource à ser mostrado quando o celular não estiver estável. A mensagem padrão é "Mantenha o celular parado". Por exemplo, caso deseje mostrar a String "Teste", crie uma String em ROOT_PROJECT/android/app/src/main/res/values/strings.xml com o nome R.string.my_custom_stability_string e valor "Teste" e parametrize "my_custom_stability_string" |
int stabilityStabledMillis Quantos milissegundos o celular deve se manter no limiar correto para ser considerado estável. O padrão é 2000 ms |
double stabilityThreshold Limiar inferior entre estável/instável, em variação de m/s² entre as últimas duas coletas do sensor. O padrão é 0.5 m/s² |
iOS
PassiveFaceLivenessIosSettings constructor |
---|
PassiveFaceLivenessCustomizationIos customization Customização visual do SDK |
int beforePictureMillis Duração em milissegundos entre a primeira detecção do rosto e a efetiva captura da foto |
SensorStabilitySettingsIos sensorStability Configurações do sensor de estabilidade à ser aplicado no SDK |
PassiveFaceLivenessCustomizationIos constructor |
---|
String colorHex Cor tema do SDK. Por exemplo, caso deseje usar a cor preta, utilize "#000000" |
String greenMaskImageName Nome da imagem à substituir a máscara verde padrão. Lembre de adicionar a imagem em Assets Catalog Document no seu projeto do XCode |
String whiteMaskImageName Nome da imagem à substituir a máscara branca padrão. Lembre de adicionar a imagem em Assets Catalog Document no seu projeto do XCode |
String redMaskImageName Nome da imagem à substituir a máscara vermelha padrão. Lembre de adicionar a imagem em Assets Catalog Document no seu projeto do XCode |
String closeImageName Nome da imagem à substituir o botão de fechar o SDK. Lembre de adicionar a imagem em Assets Catalog Document no seu projeto do XCode |
bool showStepLabel Flag que indica se deseja mostrar o label do passo atual |
bool showStatusLabel Flag que indica se deseja mostrar o label do status atual |
SensorStabilitySettingsAndroid constructor |
---|
String message String à ser mostrada quando o celular não estiver estável |
double stabilityThreshold Limiar inferior entre estável/instável, em variação de m/s² entre as últimas duas coletas do sensor. O padrão é 0.3 m/s² |
Coletando o resultado
O objeto de retorno do DocumentDetector terá o atributo result
que contém uma string SUCCESS
, FAILURE
ou CLOSED
. O retorno terá o padrão PassiveFaceLivenessSuccess, PassiveFaceLivenessFailure e PassiveFaceLivenessClosed, respectivamente, para cada um dos casos.
PassiveFaceLivenessSuccess
Campo | |
---|---|
String imagePath Endereço completo da imagem no dispositivo | |
String imageUrl URL da imagem armazenada temporariamente nos servidores da CAF | |
String signedResponse Resposta assinada do servidor da CAF que confirmou que a selfie capturada possui um rosto verdadeiro (não é foto de foto ou vídeo). Utilize esse parâmetro caso queira uma camada extra de segurança verificando se a assinatura da resposta não está quebrada, provocada por uma interceptação da requisição. Se estiver quebrada, há um grande indício de interceptação da requisição | |
String trackingId Identificador dessa execução em nossos servidores. Se possível, salve este campo e mande-o junto para nossa API. Assim, teremos mais dados de como o usuário se comportou durante a execução | Será nulo se o usuário configurar useAnalytics = false ou as chamadas de analytics não funcionarem |
PassiveFaceLivenessFailure
Campo |
---|
String message Mensagem amigável explicando o motivo da falha do SDK |
String type Tipo de falha que encerrou o SDK |
Os tipos de falha existentes são:
InvalidTokenReason
: quando o token informado é inválido. Não deve ocorrer em um ambiente de produção;PermissionReason
: quando alguma permissão obrigatória não foi concedida pelo usuário. Só ocorrerá em um ambiente de produção se o seu app não solicitar ao seu usuário ou o mesmo desabilitar manualmente antes de iniciar;NetworkReason
: falha de conexão com o servidor. Ocorrerá em produção se o dispositivo do usuário estiver sem internet;ServerReason
: falha em alguma requisição com nossos servidores. Ocorrerá em produção somente no caso de uma falha nossa;SecurityReason
: quando o dispositivo não é seguro para executar o SDK. Se esta falha ocorrer, avise-nos;StorageReason
: quando o dispositivo não possui espaço suficiente para a captura de alguma foto. Pode ocorrer em produção;LibraryReason
: quando alguma falha interna impossibilitou a execução do SDK. Pode ocorrer devico à erros de configuração do projeto, não deve ocorrer em produção;
PassiveFaceLivenessClosed
Objeto vazio indicando fechamento da tela de captura pelo usuário.