checkCapabilities
Verifica se o dispositivo atende aos Requisitos mínimos antes de montar o SDK.
Detalhes
Verifique se o navegador e o dispositivo atendem aos Requisitos mínimos para executar o Fluxo biométrico, antes de montar <facephi-sdk-provider> no DOM.
Sintaxe
import { checkCapabilities } from '@facephi/sdk-web-wc/capabilities.mjs';
const { camera, wasm, browser } = await checkCapabilities();Descrição
Função exportada por @facephi/sdk-web-wc no subpath /capabilities.mjs. Permite decidir, antes de iniciar a sessão, se o usuário pode continuar neste dispositivo ou se convém direcioná-lo para outro dispositivo ou para outro fluxo de negócio.
Não requer apiKey, não valida licença e não baixa recursos. O ponto de entrada não tem dependências, então não traz o motor, os idiomas nem os componentes de interface.
Substitui o método checkCapabilities() dos widgets Legacy.
Valor retornado
Promise<WidgetCheckCapabilities>, com três booleanos:
camera
Foi detectado pelo menos um dispositivo de entrada de vídeo.
wasm
O WebAssembly está disponível e pode compilar e instanciar um módulo.
browser
As APIs do navegador necessárias para os widgets estão presentes.
Considerações
A verificação não chama
getUserMedia, então não exibe nenhuma caixa de diálogo de permissões de câmera. Pode ser invocada ao carregar a página sem atrito para o usuário.Como contrapartida, os navegadores que ocultam os dispositivos até que a permissão seja concedida (Safari e outros baseados em WebKit) retornam
camera: falseem um dispositivo perfeitamente válido.Em uma origem insegura (
httpque não sejalocalhost),navigator.mediaDevicesnão existe ecameraserá semprefalse.A verificação não aplica o filtro antifraude de câmera que os widgets realmente executam ao serem montados. Uma câmera virtual passa nesta verificação e, ainda assim, é rejeitada depois.
wasm e browser são, de fato, condições rígidas: se alguma for false, o Fluxo biométrico não pode ser executado nesse navegador.
Exemplo
Uso via CDN, sem empacotador
Uso direto do Widget, sem SDK
Os pacotes dos widgets expõem a mesma função em seu próprio subpath, disponível a partir de @facephi/[email protected] e @facephi/[email protected]. Em versões anteriores, o subpath não existe e o import falha com ERR_MODULE_NOT_FOUND.
Atualizado