Captura Inteligente
Este guia abrange a versão 7.0.0 e superiores. Para versões anteriores à 7.0.0, consulte a documentação legada.
Visão geral
Captura Inteligente captura documentos de identidade com fluxos guiados e opção de captura automática e pré-visualização. Ele usa a mesma Certta sessão do Face Liveness e do Document Detector: configurar credenciais uma vez e, em seguida, abra a interface de captura.
No iOS, o Smart Capture é integrado por meio de CerttaSmartCapture, CerttaSmartCaptureDelegate e o módulo de framework SmartCapture . CerttaSmartCaptureConfiguration mapeia para CafSmartCaptureConfig para o CafSDKProvider pipeline unificado.
Se SmartCapture não estiver vinculado no seu target, o SDK não pode registrar um serviço de Smart Capture; CafSDKProvider não adicionará um módulo de captura para esse fluxo (vincule o produto conforme exigido pela sua distribuição).
Para sessão Certta configuração (token, ID do usuário, ambiente), consulte o sessão Certta (início rápido). Para Detector de Documentos (fluxo baseado em etapas, CerttaDocumentDetectorConfiguration), consulte Detector de Documentos para iOS (Certta).
Pré-requisitos
Antes de prosseguir, certifique-se de que o CAF SDK esteja instalado corretamente. Se você ainda não fez isso, consulte nosso guia de instalação (Swift Package Manager ou CocoaPods).
Você também precisa de:
Câmera string de permissão em Info.plist (
NSCameraUsageDescription).Sessão Certta ativa —
Certta.shared.configure(configuration:)commobileTokeneuserIDnão vazio (mesmo contrato do Face Liveness e do Document Detector).SmartCapture framework vinculado ao seu target, além de CafSDK e quaisquer outros produtos exigidos pela sua integração (consulte as instruções do seu pacote / Pod).
<key>NSCameraUsageDescription</key>
<string>Precisamos da câmera para capturar seu documento.</string>CerttaSmartCaptureConfiguration
Eles mapeiam internamente para CafSmartCaptureConfig para o CafSDKProvider pipeline unificado.
Todos os parâmetros têm padrões; substitua apenas o que você precisar.
requestTimeout
TimeInterval
Tempo limite de rede / solicitação em segundos. Padrão: 60.
previewEnabled
Bool
Se a pré-visualização etapa pós-captura está habilitada. Padrão: true.
autoCapture
Bool
Se a captura automática está habilitada quando suportada. Padrão: true.
Iniciando o Smart Capture
Use o CerttaSmartCapture singleton. Defina o delegate (ou faça o UIViewController para CerttaDocumentDetectorDelegateque apresenta a tela conformar-se); a resolução corresponde ao Document Detector: delegate ?? (presenter as? CerttaDocumentDetectorDelegate).
loadSession(from:configuration:) está disponível com o mesmo CerttaSmartCaptureConfiguration para pré-carregar recursos antes de abertas. Unificado .loading / .loaded eventos são não entregues para CerttaDocumentDetectorDelegate; use didLog para diagnósticos quando necessário.
Entendendo os eventos e resultados do Smart Capture
O Smart Capture usa o mesmo CerttaDocumentDetectorDelegate que Detector de Documentos portanto, o tratamento de sessão, sucesso, falha e cancelamento permanece consistente entre os produtos de documentos da Certta.
didFinish(signedResponse:)
A string é o resultado assinado do módulo. A documentação da sua integração backend ou do CAF define como validá-lo, decodificá-lo e armazená-lo. Não registre o token completo em builds de produção.
didFail(_ failure: CerttaDocumentDetectorFailure)
Falhas de processamento do pipeline — hoje processingFailed(result:cause:).
didFinishWith(_ error: CerttaError)
Erros bloqueadores (sessão não configurada, permissão da câmera, rede, segurança, inicialização, etc.). CerttaError alinha-se com Face Liveness e outros módulos da Certta. Use localizedDescription / message nos alertas.
didCancel()
O usuário cancelado o fluxo. Volte para a tela anterior ou ofereça uma tentativa novamente.
didLog(level:message:)
Eventos de progresso e informativos; mapeie para a UI ou análises conforme necessário.
Tipos para outras APIs
CerttaSmartCaptureEvent, CerttaSmartCaptureResulte CerttaSmartCaptureFailure existem para APIs de nível mais alto ou futuras. O Certta caminho acima usa CerttaDocumentDetectorDelegate por consistência com o Document Detector e o Face Liveness.
Sessão e tema
Chame Certta.shared.configure(configuration:) antes abertas ou loadSession.
Opcional Certta.shared.setColorConfiguration(_:) é aplicado quando a interface do Smart Capture lê as cores da sessão de Certta (mesmo padrão do Document Detector e do Face Liveness).
Modo escuro / claro: build CafColorConfiguration usando UITraitCollection.current.userInterfaceStyle se você precisar de paletas diferentes por modo.
Escolhendo entre Document Detector e Smart Capture
Captura Inteligente
CerttaSmartCapture.shared
CerttaSmartCaptureConfiguration (timeout, pré-visualização, captura automática)
Detector de Documentos
CerttaDocumentDetector.shared
CerttaDocumentDetectorConfiguration (etapas do fluxo, layout, upload, instruções, …)
Ambos usam CerttaDocumentDetectorDelegate e a mesma sessão Certta. Escolha Captura Inteligente para o produto guiado Smart Capture; escolha Detector de Documentos quando você precisar do fluxo de documento clássico baseado em etapas e da configuração do hub descrita em Detector de Documentos para iOS (Certta).
Notas de versão
Veja GitHub Releases para versões, mudanças que quebram compatibilidade e Xcode / iOS mínimos.
Suporte técnico e dicas de uso
Para mais detalhes e cenários de uso avançados, consulte os seguintes recursos:
Repositório GitHub: código-fonte, rastreamento de issues e notas de lançamento no repositório GitHub do CafSDK.
Document Detector (Certta): Detector de Documentos para iOS (Certta) — mesmo delegate, configuração e fluxo diferentes.
Configurações do Document Detector: Configurações do Document Detector —
CafDocumentDetectorConfigao usar o caminho do Document Detector ouCafSDKProvider.Builder.FAQs e solução de problemas: consulte nossa seção de FAQ para problemas comuns e dicas de solução de problemas.
Suporte: para obter assistência adicional, entre em contato com nossa equipe de suporte ou participe do fórum da nossa comunidade de desenvolvedores.
Atualizamos continuamente a documentação à medida que novos recursos e melhorias são lançados. Fique por dentro das próximas atualizações!
Atualizado

