К содержанию
Все статьи справки
  1. Справка
  2. Модули

Офлайн-режим и сервер в клинике

Три режима работы DentOS: облако, сервер в клинике через облачный шлюз и офлайн-режим на случай, когда пропала связь с сервером.

Не проверено вживую Шлюз проверен в Docker на тестовой машине, а не в настоящем облаке с доменом. Офлайн-режим проверен в браузере, в десктоп-приложении руками не запускался. Telegram с живым ботом через шлюз не проверялся.

У каждой клиники ровно одна главная база. Облако и сервер в клинике не синхронизируют данные «в обе стороны», поэтому записи не теряются и не двоятся.

Облако

Основной режим. Одна база в российском дата-центре, клиники разделены защитой строк. Обновления и ночные копии — на стороне DentOS.

Сервер в клинике

Для клиник, которые не отдают данные пациентов в облако. Тот же DentOS ставится на компьютер клиники: база и медкарты живут там.

Компьютер. Любой, который не выключают на ночь: мини-ПК или сервер с Ubuntu 24.04 (можно Windows 11 с Docker Desktop), 4 ГБ памяти, SSD от 100 ГБ, проводная сеть. Источник бесперебойного питания обязателен.

Связь с пациентами. Сервер сам открывает исходящее защищённое соединение к облачному шлюзу DentOS. Белый IP, проброс портов и настройка роутера не нужны. Через шлюз работают:

  • онлайн-запись и кабинет МойДент;
  • боты клиники в Telegram и MAX;
  • уведомления UIS и ЮKassa, страница оплаты;
  • страница опроса NPS;
  • портал техника лаборатории — только со ссылкой техника.

Шлюз только пересылает запросы пациентов и медданные не хранит. Персонал через шлюз не работает: снаружи открыты только страницы и запросы пациентов, а сервер клиники ещё раз проверяет каждый путь сам. Удалённый доступ директора из дома — через VPN клиники.

Сотрудники работают в десктоп-приложении по адресу сервера в сети клиники или в браузере по HTTPS. Для браузера один раз устанавливается корневой сертификат сервера на компьютеры клиники.

Копии и обновления. Ночная копия шифруется ключом клиники и сразу уходит на шлюз. Шлюз хранит последние 14 копий и прочитать их не может. Раз в 6 часов сервер проверяет, вышла ли новая версия, — в настройках появится «доступна версия…».

Состояние видно в «Настройки → Клиника и юрлицо → Сервер в клинике»: на связи ли шлюз, когда ушла последняя копия, есть ли обновление.

Лицензия. Сервер в клинике работает по лицензии, которая продлевается через шлюз и действует на 35 дней дольше оплаченного периода. Подробнее — в статье Тарифы и подписка.

Что работает без интернета

Пропал интернет Сервер в клинике выключен
Расписание, карточки, касса, медкарты работают: сервер в той же сети только копия на сегодня и завтра
Запись, приход, оплата наличными как обычно копятся в очереди и досылаются
Касса АТОЛ печатает чек напечатается после досылки
Онлайн-запись, кабинет, бот, оплата онлайн недоступны, пациент видит «клиника сейчас не на связи» недоступны

Когда связь возвращается, сервер переподключается к шлюзу сам в течение минуты.

Офлайн-режим

Нужен и в облаке, и с сервером в клинике: это страховка, когда пропала связь именно с сервером.

Каждые 5 минут приложение кладёт в браузер копию: расписание филиала на сегодня и завтра, карточки этих пациентов, прейскурант, кассы и неоплаченные счета. Если сервер недоступен, сверху появляется жёлтая полоса «нет связи — работаю офлайн, в очереди N». Можно:

  • смотреть расписание и карточки, искать пациента по копии;
  • записывать, в том числе нового пациента;
  • отмечать приход — время прихода сохранится настоящее, а не время досылки;
  • принимать оплату наличными.

Каждое действие получает свой номер. При досылке сервер проводит его ровно один раз, даже если связь рвалась посреди отправки.

Конфликты. Если за время без связи кресло заняли или счёт оплатили на другом компьютере, программа ничего не решает молча. Действие попадает в список «Конфликты при досылке» с причиной. Администратор исправляет вручную и нажимает «Разобрано».

Чек за офлайн-оплату печатается после досылки — из блока «Не пробиты на кассе» на странице кассы.