사용자 여정
사용자 여정(User Journeys)은 SDK가 설정된 플로우와 함께 조율하는 다단계 캡처 세션입니다. 예를 들어, 라이브니스 + 사기 위험 분류 + 문서 캡처 + 전자 서명이 포함된 플로우는 단일 세션에서 셀피, 문서 캡처, 서명을 순서대로 실행합니다.
사용 사례
사용 가능한 여정은 통합에 설정된 플로우에 따라 다릅니다. 사용 사례 → 플로우 → 기능의 전체 매핑은 사용 사례를 참조하세요.
작동 방식
SDK는:
- 초기화 중에 제공된 플로우 구성을 읽습니다.
- 플로우에 필요한 캡처 순서(셀피, 문서, 서명)를 조율합니다.
- 각 캡처 단계에 대한 결과 객체를 반환합니다.
조율은 SDK가 전적으로 처리하므로 앱에서 단계 순서를 직접 구현할 필요가 없습니다.
사용자 여정 시작
1단계 — AcessoBioListener 구현
AcessoBioListener는 SDK 라이프사이클 콜백을 처리합니다. 네 가지 필수 메서드를 구현하세요:
| 메서드 | 호출 시점 |
|---|---|
onErrorAcessoBio(errorBio) | SDK 작동 중 오류 발생 |
onUserClosedCameraManually() | 사용자가 카메라를 수동으로 닫음 |
onSystemClosedCameraTimeoutSession() | 세션 시간 제한 도달 — 세션 제한 참조 |
onSystemChangedTypeCameraTimeoutFaceInference() | 얼굴 인식 시간 제한 도달 — 수동 캡처로 전환 — 세션 제한 참조 |
- Kotlin
- Java
val callback = object : AcessoBioListener {
override fun onErrorAcessoBio(errorBio: ErrorBio?) { }
override fun onUserClosedCameraManually() { }
override fun onSystemClosedCameraTimeoutSession() { }
override fun onSystemChangedTypeCameraTimeoutFaceInference() { }
}
AcessoBioListener callback = new AcessoBioListener() {
@Override
public void onErrorAcessoBio(ErrorBio errorBio) { }
@Override
public void onUserClosedCameraManually() { }
@Override
public void onSystemClosedCameraTimeoutSession() { }
@Override
public void onSystemChangedTypeCameraTimeoutFaceInference() { }
};
2단계 — iAcessoBioSelfie 구현
iAcessoBioSelfie는 여정 캡처 결과 콜백을 처리합니다:
| 메서드 | 설명 |
|---|---|
onSuccessSelfie(result) | 이미지가 성공적으로 캡처됨 — 이후 REST API 호출에 사용할 ResultCamera를 반환 |
onSuccess(result) | WebApp 플로우가 성공적으로 완료됨 — 검증 결과 조회에 사용되는 processId가 포함된 SuccessResult를 반환 |
onErrorSelfie(errorBio) | 캡처 실패 — 오류 세부 정보가 포함된 ErrorBio를 반환 |
- Kotlin
- Java
val cameraListener: iAcessoBioSelfie = object : iAcessoBioSelfie {
override fun onSuccessSelfie(result: ResultCamera?) { }
override fun onSuccess(result: SuccessResult) { }
override fun onErrorSelfie(errorBio: ErrorBio?) { }
}
iAcessoBioSelfie cameraListener = new iAcessoBioSelfie() {
@Override
public void onSuccessSelfie(ResultCamera result) { }
@Override
public void onSuccess(SuccessResult result) { }
@Override
public void onErrorSelfie(ErrorBio errorBio) { }
};
3단계 — prepareCamera 호출
unicoCheckCamera가 초기화되고 두 리스너가 모두 구현된 상태에서 SDK 구성, CameraListener, web_app_token을 전달하여 prepareCamera를 호출합니다:
web app token 획득 방법
web_app_token은 백엔드에서 프로세스 생성 시 POST /client/v1/process가 반환하는 process.webAppToken 필드입니다. 프로세스 생성을 참조하세요.
onCameraReady— 카메라 준비 완료;cameraListener와web_app_token을 전달하여open을 호출합니다.onCameraFailed— 카메라 준비 실패; 오류 메시지를 처리합니다.
- Kotlin
- Java
unicoCheckCamera.prepareCamera(unicoConfig, object : CameraListener {
override fun onCameraReady(cameraOpener: UnicoCheckCameraOpener.Camera?) {
cameraOpener?.open(cameraListener, "your_web_app_token")
}
override fun onCameraFailed(message: String?) {
Log.e(TAG, message)
}
})
unicoCheckCamera.prepareCamera(unicoConfig, new CameraListener() {
@Override
public void onCameraReady(UnicoCheckCameraOpener.Camera cameraOpener) {
cameraOpener.open(cameraListener, "your_web_app_token");
}
@Override
public void onCameraFailed(String message) {
Log.e(TAG, message);
}
});
전체 결과 처리에 대해서는 결과 수신을 참조하세요.