«Контроль доступа» — это веб-приложение для проверки билетов на входе. Контролер открывает ссылку на смартфоне или планшете, наводит камеру на QR-код / штрихкод билета и сразу видит, действителен ли билет. Приложение умеет работать без интернета (офлайн-режим).
Что нужно сделать
- Создать в админке ссылку на приложение (привязав ее к площадке/событию).
- Открыть ссылку на устройстве контролера и сканировать билеты.
- При нестабильной связи — заранее загрузить базу штрихкодов для офлайн-проверки.
Шаг 1. Создание ссылки на приложение
- В левом меню откройте раздел «Приложения» → «Контроль доступа».
- Нажмите «Создать» и заполните форму:
- Название — название точки контроля (обязательно). Например, Главный вход.
- Площадка — площадка, на которую действует ссылка. По умолчанию «Любая…».
- Событие — конкретное событие. По умолчанию «Любое…». Если оставить «Любое», приложение будет проверять билеты всех событий выбранной площадки, попадающих в окно по времени.
- Пропуск разрешен — временно́е окно, в течение которого билеты принимаются:
- за сколько минут до начала события открыть вход (по умолчанию 120, максимум 720);
- сколько минут после начала еще пускать (по умолчанию 120, максимум 2880).
- Статус — «Активен».
- Сохраните. В карточке вверху появится ссылка на приложение вида https://controller.ticketprime.ru/x/<токен>. Нажмите на нее, чтобы скопировать.
💡 Передайте эту ссылку контролеру (например, в мессенджере) или откройте ее прямо на его устройстве. Токен в ссылке уже привязан к выбранной площадке/событию — настраивать ничего не нужно.
Шаг 2. Как пользоваться приложением
- Откройте полученную ссылку в браузере смартфона или планшета. Приложение само определит точку контроля по токену из ссылки.
- Разрешите доступ к камере. На экране появится видоискатель; каждое успешное сканирование подтверждается звуковым сигналом.
- Наведите камеру на QR-код или штрихкод билета. Результат проверки отображается крупной цветной карточкой:
- 🟢 Зеленый экран «Доступ разрешен» — билет действителен. Показываются событие, сектор, место, имя покупателя/посетителя.
- 🔴 Красный экран «Повторный проход» — билет уже был использован ранее (показывается время первого прохода).
- 🔴 Красный экран с сообщением (например, «Штрихкод не найден») — билет не найден или недействителен.
- Меню настроек (кнопка-«гамбургер») открывает панель со статистикой и офлайн-режимом:
- Связь — онлайн / офлайн
- Штрихкоды — сколько билетов загружено локально
- В очереди на отправку — сколько проходов еще не синхронизировано
- Последняя синхронизация — время последнего обмена с сервером.
Шаг 3. Как работает офлайн-режим
Приложение рассчитано на работу там, где интернет нестабилен (фойе, стадион, подвальные помещения). Логика такая:
Онлайн. При наличии связи каждый скан проверяется на сервере мгновенно — с полной информацией о билете (событие, место, покупатель).
Переход в офлайн. Если сервер не отвечает в течение ~5 секунд, приложение автоматически переключается на локальную проверку по заранее загруженной базе. На карточке результата появляется отметка «оффлайн-проверка», а детали билета скрываются («Подробности билета доступны при наличии связи»).
Подготовка к офлайн-работе
Чтобы офлайн-проверка работала, базу штрихкодов нужно загрузить заранее, пока есть связь:
- Откройте панель настроек → раздел «Оффлайн»
- Нажмите «Загрузить» — приложение скачает все проданные билеты выбранных событий в память устройства (хранится локально в браузере, отдельная база на каждую ссылку).
Что происходит при офлайн-проверке
Штрихкод ищется в локальной базе:
- не найден → «Штрихкод не найден»
- уже использован → «Повторный проход»
- действителен → «Доступ разрешен», билет локально помечается как использованный, а сам проход ставится в очередь на отправку
Синхронизация
Раз в ~30 секунд при появлении связи приложение автоматически:
- отправляет на сервер очередь офлайн-проходов
- подгружает свежие изменения по билетам (новые продажи, возвраты)
⚠️ Важно про устаревшую базу. Если с момента последней синхронизации прошло более 6 часов, приложение покажет желтое предупреждение «База устарела — последняя синхронизация более 6 часов назад. Рекомендуется перезагрузить.». Перед мероприятием обновляйте базу заново.
Очистка базы
Кнопка «Очистить базу» удаляет локальную базу штрихкодов. Очередь несинхронизированных проходов при этом сохраняется и продолжит уходить на сервер в фоне.
📌 Офлайн-режим недоступен в браузерах без поддержки локального хранилища (например, в приватном режиме Safari) — в этом случае в панели появится сообщение «Оффлайн-работа недоступна в этом браузере».
Частые вопросы
Открыл ссылку — «Нет доступных событий для контроля».
Нет событий, попадающих во временно́е окно «Пропуск разрешен». Проверьте дату/время события и настройки окна в админке (Шаг 1), либо дождитесь времени открытия входа.
Билет действителен, но показывает «Повторный проход».
Билет уже сканировали ранее (онлайн или офлайн). Время первого прохода указано на карточке.
В офлайне не находит проданные билеты.
База не была загружена заранее. Подключитесь к интернету и нажмите «Загрузить» (Шаг 3).