Perjalanan Pengguna
User Journeys adalah sesi pengambilan gambar multi-langkah yang diorkestrasikan oleh SDK bersama dengan alur yang dikonfigurasi. Misalnya, alur dengan Deteksi Kehidupan + Skor Risiko + Pengambilan Dokumen + Tanda Tangan Elektronik menjalankan selfie, pengambilan dokumen, dan tanda tangan dalam satu sesi.
Journey yang tersedia bergantung pada alur yang dikonfigurasi untuk integrasi Anda. Lihat Produk untuk pemetaan lengkap produk → alur → kemampuan.
SDK:
- Membaca konfigurasi alur yang diberikan selama inisialisasi.
- Mengorkestrasikan urutan pengambilan gambar yang diperlukan untuk alur (selfie, dokumen, tanda tangan).
- Mengembalikan
processIdmelaluionSuccessketika journey selesai. Untuk langkah selfie, data gambar (base64/encrypted) juga dikembalikan melaluionSuccessSelfie. Pengambilan gambar dokumen dan tanda tangan diproses secara internal oleh SDK — tidak ada artefak per langkah yang diekspos ke klien.
Orkestrasi sepenuhnya ditangani oleh SDK — Anda tidak perlu mengimplementasikan urutan langkah di aplikasi Anda.
Langkah 1 — Implementasikan AcessoBioManagerDelegate
AcessoBioManagerDelegate menangani callback siklus hidup SDK. Implementasikan empat metode wajib berikut:
| Metode | Kapan dipanggil |
|---|---|
onErrorAcessoBioManager(error) | Terjadi kesalahan selama operasi SDK |
onUserClosedCameraManually() | Pengguna menutup kamera secara manual |
onSystemClosedCameraTimeoutSession() | Batas sesi 40 detik telah tercapai |
onSystemChangedTypeCameraTimeoutFaceInference() | Tidak ada wajah terdeteksi selama 13 detik — beralih ke pengambilan gambar manual |
- Swift
- Objective-C
class ViewController: UIViewController, AcessoBioManagerDelegate {
var unicoCheck: AcessoBioManager!
override func viewDidLoad() {
super.viewDidLoad()
unicoCheck = AcessoBioManager(viewController: self)
}
func onErrorAcessoBioManager(_ error: ErrorBio!) { }
func onUserClosedCameraManually() { }
func onSystemClosedCameraTimeoutSession() { }
func onSystemChangedTypeCameraTimeoutFaceInference() { }
}
@implementation ViewController: UIViewController
- (void)viewDidLoad {
[super viewDidLoad];
unicoCheck = [[AcessoBioManager alloc]initWithViewController:self];
}
- (void)onErrorAcessoBioManager:(ErrorBio *)error { }
- (void)onSystemChangedTypeCameraTimeoutFaceInference { }
- (void)onSystemClosedCameraTimeoutSession { }
- (void)onUserClosedCameraManually { }
@end
Keempat metode delegate di atas harus dibuat dalam proyek Anda (meskipun tanpa logika apa pun). Jika tidak, proyek tidak akan berhasil dikompilasi.
Langkah 2 — Implementasikan AcessoBioSelfieDelegate
Override metode-metode untuk menangani callback hasil pengambilan gambar pada journey:
| Metode | Deskripsi |
|---|---|
onSuccessSelfie(result) | Gambar berhasil diambil — mengembalikan SelfieResult untuk panggilan REST API berikutnya |
onSuccess(result) | Journey berhasil diselesaikan — mengembalikan processId yang digunakan untuk mengkueri hasil validasi |
onErrorSelfie(errorBio) | Pengambilan gambar gagal — mengembalikan ErrorBio dengan detail kesalahan |
- Swift
- Objective-C
class ViewController: UIViewController, AcessoBioManagerDelegate,
SelfieCameraDelegate, AcessoBioSelfieDelegate {
func onSuccessSelfie(_ result: SelfieResult!) { }
func onSuccess(_ result: SuccessResult!) { }
func onErrorSelfie(_ errorBio: ErrorBio!) { }
}
@interface ViewController: UIViewController <AcessoBioManagerDelegate,
SelfieCameraDelegate, AcessoBioSelfieDelegate>
@end
@implementation ViewController
- (void)onSuccessSelfie:(SelfieResult *)result { }
- (void)onSuccess:(SuccessResult *)result { }
- (void)onErrorSelfie:(ErrorBio *)errorBio { }
@end
Langkah 3 — Panggil prepareSelfieCamera dan open
Panggil prepareSelfieCamera dengan memasukkan konfigurasi SDK. Saat kamera siap, event onCameraReady dipicu — buka kamera melalui metode open(), dengan meneruskan webAppToken:
webAppToken adalah field process.webAppToken yang dikembalikan oleh POST /client/v1/process saat membuat proses di backend Anda. Lihat Buat Proses.
onCameraReady(cameraOpener)— kamera siap; panggilopen(self, webAppToken:).onCameraFailed(message)— persiapan kamera gagal (ErrorPrepareadalah ekstensi dariErrorBio).
- Swift
- Objective-C
@IBAction func openCamera(_ sender: Any) {
unicoCheck.build().prepareSelfieCamera(self, config: YourUnicoConfigClass())
}
func onCameraReady(_ cameraOpener: AcessoBioCameraOpenerDelegate!) {
cameraOpener.open(self, webAppToken: "your_web_app_token")
}
func onCameraFailed(_ message: ErrorPrepare!) { }
- (IBAction)openCamera:(UIButton *)sender {
[[unicoCheck build] prepareSelfieCamera:self config:[YourUnicoConfigClass new]];
}
- (void)onCameraReady:(id)cameraOpener {
[cameraOpener open:self webAppToken:@"your_web_app_token"];
}
- (void)onCameraFailed:(ErrorPrepare *)message { }
Untuk penanganan hasil secara lengkap, lihat Menerima hasil.