MAX-бот и объявления

MAX-бот и объявления

Объявления в MAX

Что это

Система автоматических уведомлений и объявлений через мессенджер MAX. Сотрудники не сидят постоянно в админке системы, а получают важные сообщения в общий чат коллектива.

Кому полезно

  • Главной медсестре — рассылать объявления коллективу, видеть сводки утра/вечера и алёрты.
  • Сотрудникам — узнавать о просрочках, ресурсах УФ-ламп, объявлениях, не открывая систему.

Что отправляется автоматически

Событие Когда Откуда данные
Сводка незакрытых утренних слотов Каждые 15 мин с 11:00 до 16:00 Контроль заполнения — кто не закрыл утро
Сводка незакрытых вечерних слотов Каждые 15 мин с 18:00 до 23:00 То же для вечера
Просроченные ген. уборки Раз в день в 10:00 Журнал ген. уборок
УФ-лампы с превышением ресурса Раз в час Журнал УФ и Оборудование — наработка > 7899 ч
Замена УФ-лампы Сразу при сохранении записи Журнал УФ с галкой «Лампа заменена»

Все автоматические сообщения защищены от повторов — одна и та же сводка не уйдёт два раза.

Объявления — ручные сообщения

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

Открыть раздел

Сайдбар → Объявления в MAX.

Видят: super-admin и Admin (главная медсестра + IT).

6 типов объявлений

При создании выбирается тип — он определяет эмодзи в начале сообщения и цвет бейджа в админке:

Тип Эмодзи Когда использовать
Срочно 🚨 Требует немедленной реакции
Важно ⚠️ Требует внимания, но не срочно
Информация ℹ️ Общие новости
Напоминание 📅 Про даты, события, дедлайны
Праздник 🎉 Поздравления
Благодарность 🙏 Отметить хорошую работу

Как создать

  1. Сайдбар → Объявления в MAX.
  2. «+Создать».
  3. Выбрать тип сообщения.
  4. (Опц.) Написать заголовок — он будет отдельной строкой жирным.
  5. Написать текст. Внизу — панель быстрой вставки 21 иконки (⚠️❗🚨💡✅❌📌📅🕐👥🏥🧹💉🔧🎉🙏📢🔥📋🌅🌙). Клик вставляет в позицию курсора.
  6. Справа от формы — живое превью «как уйдёт в MAX». Обновляется в реальном времени.
  7. Выбрать дату и время отправки:
    • Если поставите сейчас — уйдёт через минуту (планировщик берёт каждую минуту).
    • Если поставите в будущем — уйдёт ровно в это время.
  8. (Опц.) Указать chat_id, если хотите послать в чат, отличный от дефолтного.
  9. Сохранить.

Статусы

  • В очередиpending, ждёт отправки.
  • Отправленоsent, ушло в чат.
  • Ошибкаfailed, не получилось (текст ошибки в карточке).
  • Отмененоcancelled, не уйдёт.

Технически

Каналы

В текущей версии:

  • Один общий чат учреждения (привязан в .env через MAX_CHAT_ID).
  • Отправка односторонняя — бот шлёт, входящие команды не обрабатываются.

В перспективе (бэклог):

  • Личные сообщения сотрудникам — пинки «вы не закрыли утро в первом кабинете».
  • Чаты отделений — отдельный групповой чат на каждое подразделение.
  • Webhook для приёма входящих команд и подтверждения голосовых записей.

Защита от повторов

У каждого автособщения есть уникальный ключ (dedup_key) в таблице max_notification_log. Например, для утренней сводки ключ — morning_summary:2026-06-04. Перед отправкой система пробует записать ключ в таблицу с UNIQUE-индексом. Если ключ уже есть — отправка тихо скипается.

Это спасает от ситуации, когда планировщик cron перезапускается несколько раз — сообщение не задублируется.

Какие журналы дают алёрты

Связанные документы

Что важно

  • Не злоупотребляйте срочными объявлениями — иначе у коллектива выработается «иммунитет» и реально важное пропустят.
  • Расписание автоматических сводок настраивается в routes/console.php — обратитесь к супер-админу.
  • Тестовый чат / промтест — лучше сначала отправить тестовое объявление в специальный тест-чат, потом в общий.