Выдача лекарств офлайн — доза всегда сохранена | mojApteczka
Фиксируйте дозы лекарств без интернета — мгновенное локальное сохранение, автоматическая синхронизация, когда связь возвращается. Ни одна доза не потеряется.
Выдача лекарств офлайн — доза всегда сохранена, даже без связи
Дома у пациента, в больнице, в подвале со стороны, укрытой от ретранслятора. Именно тогда нужно выдать лекарство — и именно тогда связь обычно пропадает.
С версии 1.7.0 приложение mojApteczka сохраняет подтверждение дозы мгновенно на устройстве — без ожидания сервера, без крутящегося колеса загрузки. Ожидающие выдачи попадают в локальную очередь и автоматически синхронизируются с облаком, как только вы возвращаетесь онлайн. Даже закрытие приложения или разряженный аккумулятор не потеряют зафиксированную дозу.
Как выдать лекарство без интернета
Процесс идентичен выдаче онлайн — отсутствие связи не блокирует ни одного шага:
- открываете карточку лекарства в аптечке,
- нажимаете иконку выдачи,
- выбираете дозу (в том числе дробную) и получателя,
- подтверждаете — экран отвечает мгновенно, остаток обновляется локально,
- когда связь возвращается (или вы открываете приложение онлайн), очередь автоматически отправляет ожидающие выдачи в облако.
Вам не нужно ничего нажимать, возобновлять или «помнить на потом». Операция покидает список ожидающих только после подтверждения приёма сервером.
Что происходит с ожидающими выдачами
Ключевое отличие mojApteczka 1.7.0 от типичного online-first приложения: очередь ожидающих операций персистентна. Это не переменная в оперативной памяти, которая исчезает при закрытии процесса — это хранилище на диске внутри песочницы операционной системы, зашифрованное.
На практике:
- Закрыли приложение во время визита? Очередь живёт на диске и ждёт следующего запуска.
- Телефон разрядился в автомобиле? Зарядите, откройте mojApteczka — очередь возобновляет синхронизацию, как только появится связь.
- Проехали мёртвую зону 20 минут? Тихо, в фоне, очередь отправляет операции партиями.
- Пользуетесь общей аптечкой? Ваши офлайн-выдачи станут видимы другим членам семьи только после синхронизации вашего устройства — но появятся без конфликтов, даже если кто-то другой выдавал те же лекарства тем временем.
Почему local-first, а не «всё на сервере»
Классическая online-first модель отправляет каждую операцию на сервер и ждёт подтверждения — отлично работает, пока интернет работает. Но при уходе за пациентом интернет часто не работает: старые дома, подвалы, кирпичные больницы, дальние поездки. Ожидание сервера в такой момент означает один из двух плохих сценариев:
- крутящееся колесо загрузки — опекун не знает, зарегистрирована ли доза,
- потерянные операции — после таймаута приложение сдаётся, и доза исчезает из истории.
Ни один из них неприемлем для учёта лекарств. Поэтому в mojApteczka подтверждение сначала сохраняется локально — быстро, надёжно, независимо от сети — а синхронизация с облаком является фоновым процессом, который завершается, когда может.
Устойчивость к закрытию приложения и разрядке телефона
Анонс 1.7.0 на Facebook обещал: «ни одной потерянной дозы — закрыли приложение? разрядился аккумулятор? ожидающие выдачи сами отправятся позже». Это не маркетинговое украшение, а следствие архитектуры:
- очередь сохраняется на диске немедленно после подтверждения (write-ahead),
- перезапуск ОС / перезагрузка устройства не влияет на данные очереди,
- повторное открытие приложения считывает и продолжает очередь,
- если есть фоновое подключение, синхронизация возобновляется без вашего участия.
Другими словами: единственный сценарий, в котором ожидающая операция теряется — это удаление приложения до синхронизации. Если вы видите операцию со статусом «в очереди» в истории, просто откройте приложение онлайн на короткое время — и она выгрузится на сервер.
Приватность — ожидающие операции не покидают устройство
Пока операция в очереди, она не покидает ваш телефон. Это прямое следствие local-first модели — что вы выдали, кому и когда, находится внутри песочницы ОС, защищено биометрической блокировкой экрана (Face ID / Touch ID). Только успешная синхронизация перемещает операцию в облако mojApteczka в ЕС (Франкфурт, AWS).
Если вы потеряете телефон без связи, даже последние минуты выдач (ещё несинхронизированных) останутся зашифрованными внутри песочницы iOS. Это тот же стандарт защиты, который мы применяем к документации SPC офлайн и карте аптек.
Доступность
Офлайн-режим выдачи лекарств сейчас доступен в мобильном приложении mojApteczka для iOS (с версии 1.7.0). Версия для Android запланирована — та же модель локальной очереди будет реализована там в последующих релизах. Веб-версия по своей природе требует подключения к серверу; если нужно офлайн-поведение, используйте мобильное приложение.
Связь с другими функциями
Офлайн-выдача — один из трёх столпов «mojApteczka работает без интернета»:
- Выдача лекарств — полное описание функции выдачи, включая дробные дозы, выбор получателя и историю,
- Документация SPC офлайн — характеристика продукта для 8 000+ лекарств, доступна офлайн после первой синхронизации,
- Карта аптек офлайн — локатор аптек, работающий после первой загрузки бандла,
- PDF-отчёт для врача — учитывает как синхронизированные, так и ожидающие операции после следующей синхронизации,
- Напоминания о дозировке — работают локально, независимо от связи.
Важное ограничение
Очередь ожидающих выдач не переживает удаление приложения. Если у вас есть несинхронизированные операции и вам нужно сменить телефон или переустановить mojApteczka, откройте приложение с активным подключением перед удалением — короткого момента онлайн достаточно, чтобы очередь выгрузилась. После переустановки войдите снова, и ваша история выдач (уже в облаке) будет доступна на новом устройстве.
Внимание: функция выдачи лекарств — это инструмент регистрации доз. Она не заменяет рекомендаций врача или фармацевта по дозированию, частоте или способу приёма — как офлайн, так и онлайн.
Выдача лекарств офлайн в mojApteczka превращает момент «у пациента, без связи» из потенциальной ловушки в то, о чём не думаешь. Экран отвечает мгновенно, очередь синхронизируется сама, ни одна доза не теряется — независимо от того, где вы: дома, в больнице или в дороге.
Часто задаваемые вопросы
- Могу ли я выдать лекарство без интернета в mojApteczka?
- Да. С версии 1.7.0 подтверждение дозы сохраняется мгновенно на устройстве даже без связи. Ожидающие выдачи безопасно сохраняются в очереди и автоматически синхронизируются с облаком, когда соединение возвращается.
- Что произойдёт, если я закрою приложение с ожидающей выдачей?
- Ничего не потеряется. Очередь ожидающих выдач сохраняется стабильно на диске устройства. Повторное открытие приложения — даже на следующий день — возобновляет очередь, и выдачи отправятся в облако, как только появится связь.
- А что, если телефон разрядится, пока очередь ждёт синхронизации?
- Ни одна зафиксированная выдача не потеряется. Данные очереди живут на диске (а не в оперативной памяти), поэтому перезапуск после зарядки не влияет на полноту истории. Синхронизация возобновляется, когда появляется связь.
- Могу ли я увидеть, какие операции ещё не синхронизированы?
- Да. В истории выдач ожидающие операции имеют чёткий маркер статуса («в очереди» или похожий). Когда синхронизация успешна, маркер исчезает.
- Как долго операция может ждать в очереди?
- Жёсткого ограничения по времени нет. Очередь может держать ожидающие выдачи днями или неделями — синхронизируется, как только возвращается связь. На практике стоит синхронизироваться как можно раньше, чтобы PDF-отчёты и общие аптечки отражали актуальную историю.
- Могу ли я пользоваться общей аптечкой офлайн?
- Вы можете выдавать лекарства и сохранять операции локально. Другие участники общей аптечки увидят эти выдачи только после синхронизации вашего устройства с облаком. Когда обе стороны синхронизируются, все операции согласовываются — даже если два человека выдавали лекарство параллельно.
- Что произойдёт, если я удалю приложение до синхронизации?
- Удаление приложения убирает локальные данные, включая ожидающую очередь. Если у вас есть несинхронизированные выдачи, откройте приложение с активным подключением перед переустановкой — короткого момента онлайн достаточно, чтобы очередь выгрузилась.
- На каких устройствах работает офлайн-режим?
- Офлайн-выдача лекарств сейчас доступна в мобильном приложении mojApteczka для iOS (с версии 1.7.0). Версия для Android в планах. Веб-версия по своей природе требует подключения к серверу, но в мобильном приложении вы можете подтверждать дозы где угодно.
Попробуйте выдачу офлайн в mojApteczka
Скачайте приложение на iOS и фиксируйте дозы даже без связи