Pular para o conteúdo principal

A função startDeviceScan

Chamada

Para utilizar o módulo de Device Scan, é necessário realizar a chamada da função startDeviceScan, que possui os seguintes parâmetros posicionais:

await startDeviceScan(
token,
document_number,
session_id,
event_id,
event_type,
environment
);
ParâmetroTipoFunçãoObrigatório
tokenstringToken de autenticação temporário obtido por meio de requisição server-to-server à API de Device Scan. Deve ser gerado com o mesmo session_id passado a esta função.Sim.
document_numberstringO número do documento do usuário (CPF/CNPJ sem pontos, traços e barra).Sim.
session_idstringChave que identifica a sessão da qual os dados coletados são provenientes. Deve ser enviada em letras minúsculas.Sim.
event_idstringUm identificador do evento sendo reportado.Sim.
event_typestringUm enumerador que define o tipo de evento sendo reportado (ex.: 'onboarding'). É pedido cuidado para que eventos muito similares sejam reportados com o mesmo enumerador, a fim de que inteligência possa ser construída sobre esses dados.Sim.
environmentCAAS_ENVIRONMENTEnumerador utilizado para configurar o ambiente de execução para SANDBOX ou PRODUCTION.Sim.
Atenção

A ordem dos parâmetros importa. Note que session_id vem antes de event_id e event_type na assinatura da função, mesmo que internamente o módulo nativo receba os valores em outra ordem.

CAAS_ENVIRONMENT

enum CAAS_ENVIRONMENT {
PRODUCTION = 'production',
SANDBOX = 'sandbox',
}

Retorno

A função retorna uma Promise resolvida com uma string indicando o sucesso da coleta.

Sucesso

Success collecting device scan data

Erro

A Promise é rejeitada quando a coleta falha:

There was an error collecting DeviceScan data

Quando o módulo nativo não está corretamente vinculado, a chamada lança:

The package '@qitech/react-native-device-scan' doesn't seem to be linked. Make sure:

- You have run 'pod install'
- You rebuilt the app after installing the package
- You are not using Expo managed workflow

Exemplo

try {
const result = await startDeviceScan(
token,
'<CPF_NUMBER>',
'<SESSION_ID>',
'1',
'onboarding',
CAAS_ENVIRONMENT.SANDBOX
);

console.log(result); // "Success collecting device scan data"
} catch (error) {
console.log('Error executing device scan: ' + error);
}

Utilizando o pacote completo

Se o seu aplicativo utiliza o @qitech/react-native-caas, a função startDeviceScan tem exatamente a mesma assinatura e o mesmo comportamento — apenas o caminho do import muda:

import { CAAS_ENVIRONMENT, startDeviceScan } from '@qitech/react-native-caas';