На площадках часто плохо ловит связь. В офлайн-режиме сканер FlatPromo проверяет билеты и приглашения по базе, скачанной на телефон контролёра, и не ждёт ответа сервера.
Как включить
Заранее, пока есть интернет, откройте в приложении FlatPromo вкладку «Контроль» и выберите событие. В блоке «Оффлайн» включите переключатель «Оффлайн режим выключен».
Начнётся загрузка базы — внизу экрана значок облака и полоса загрузки.
Когда загрузка закончится, в блоке «Оффлайн» появится «Оффлайн режим включен», сколько билетов и приглашений в базе и время «База обновлена в …», а вверху экрана — красная метка «Оффлайн режим».



В базу попадают билеты события, возвраты, типы билетов, списки на вход и приглашения. Пока телефон в сети, база обновляется сама, если что-то изменилось: продали новый билет, оформили возврат, добавили гостя в список.
Проверка на входе
Сканируйте QR-коды как обычно — кнопкой «Сканировать». Результат приложение определяет само, по скачанной базе: «Успех» и «Билет №… проверен». Подделанный QR-код не пройдёт: у каждого билета есть цифровая подпись, и приложение проверяет её без сервера.
Если по билету уже прошли, появится «Ошибка» и «Билет №… уже погашен» с датой, временем и контролёром, который его погасил.


«Билет не найден в базе» или «Приглашение не найдено в базе» — билет купили или приглашение создали после последнего обновления базы, либо QR-код от другого события. Если есть связь, дождитесь обновления базы или отсканируйте ещё раз с выключенным офлайн-режимом.
«Нет загруженных ключей» — на телефоне нет данных для проверки подписи QR-кодов. Подключитесь к интернету и включите офлайн-режим заново.
Остальные сообщения — «Возврат по билету уже выполнен», «Время этого предложения прошло или еще не наступило» — те же, что в обычном режиме. См. Контроль QR-кодов.
Синхронизация
Когда телефон снова в сети, приложение отправляет на сервер все проверки, сделанные без интернета, — они появятся в журнале проверки с пометкой «оффлайн». Сервер повторяет каждую проверку и сравнивает результат с тем, что показал телефон.
Если результаты разошлись, запись попадает в «Ошибки синхронизации» — там видны оба результата: «Проверка на устройстве» и «Проверка на сервере». Так бывает, если:
по этому билету уже прошли через другой телефон, который тоже был без связи;
пока телефон был офлайн, по билету оформили возврат.