---
title: Пользовательские сценарии
canonical: https://developer.unico.io/ru/developers/sdks-and-tools/android/capture-flow/user-journeys
locale: ru
generated_by: markdown-export
---

- [/ru/](/ru/)
- [SDK и инструменты](/ru/developers/sdks-and-tools/overview)
- [Android SDK](/ru/developers/sdks-and-tools/android/requirements)
- Процесс захвата
- Пользовательские сценарии

# Пользовательские сценарии

Пользовательские сценарии — это многоэтапные сессии захвата, организованные SDK совместно с настроенным потоком. Например, поток с Liveness + Risk Score + Document Capture + Electronic Signature выполняет селфи, захват документа и подпись в одной сессии.

ПродуктыДоступные сценарии зависят от потока, настроенного для вашей интеграции. Обратитесь к разделу [Продукты](/ru/products) для полного сопоставления продукт → поток → возможность.

Как это работает
SDK:

1. Считывает конфигурацию потока, предоставленную при инициализации.
2. Организует последовательность захватов, необходимых для потока (селфи, документ, подпись).
3. Возвращает `processId` через `onSuccess` при завершении journey. Для шага с селфи данные изображения (`base64` / `encrypted`) также возвращаются через `onSuccessSelfie`. Захват документов и подписи обрабатывается SDK внутренне — никакой артефакт по шагам не передаётся клиенту.

Оркестрация полностью осуществляется SDK — вам не нужно реализовывать последовательность шагов в вашем приложении.

Запуск пользовательского сценария
**Шаг 1** — Реализуйте `AcessoBioListener``AcessoBioListener` обрабатывает callback-и жизненного цикла SDK. Реализуйте четыре обязательных метода:

| Метод | Когда вызывается |
| --- | --- |
| `onErrorAcessoBio(errorBio)` | Произошла ошибка во время работы SDK |
| `onUserClosedCameraManually()` | Пользователь вручную закрыл камеру |
| `onSystemClosedCameraTimeoutSession()` | Достигнут лимит времени сессии — см. [Ограничения сессии](/ru/developers/sdks-and-tools/android/requirements#session-limits) |
| `onSystemChangedTypeCameraTimeoutFaceInference()` | Достигнут лимит времени распознавания лица — переключение на ручной захват — см. [Ограничения сессии](/ru/developers/sdks-and-tools/android/requirements#session-limits) |

- 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)`Изображение успешно захвачено — возвращает `ResultCamera` для последующих вызовов REST API`onSuccess(result)`Journey успешно завершён — возвращает `SuccessResult` с `processId`, используемым для запроса результатов валидации`onErrorSelfie(errorBio)`Захват завершился ошибкой — возвращает `ErrorBio` с деталями ошибкиKotlinJava```
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` и реализации обоих  слушателей вызовите `prepareCamera`, передав конфигурацию SDK, `CameraListener` и ваш `webAppToken`:webAppToken`webAppToken` — это поле `process.webAppToken`, возвращаемое запросом `POST /client/v1/process` при создании процесса на вашем бэкенде. См. Создание процесса.
`onCameraReady` — камера готова; вызовите `open`, передав `cameraListener` и ваш `webAppToken`.
`onCameraFailed` — подготовка камеры завершилась ошибкой; обработайте сообщение об ошибке.
KotlinJava```
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);  }});
```

Для полного описания обработки результата см. [Получение результата](/ru/developers/sdks-and-tools/android/capture-flow/receiving-the-result).Последнее обновление 8 окт. 2026 г.**