Перейти до основного вмісту

Сповіщення

Особиста скринька доставляє згадки, DM, спільний доступ, помилки автоматизацій і нагадування навіть при закритій сторінці.

Спливні повідомлення про стан​

Короткі повідомлення про стан, наприклад про збережену зміну або завершену операцію Git, з’являються вгорі сторінки. Кнопка Закрити прибирає таке повідомлення як вказівником, так і з клавіатури. Поки вказівник наведено на повідомлення, воно не зникає, тож його можна дочитати. Закриття лише прибирає повідомлення, а сама операція зберігає свій поточний стан.

Скринька​

Зашифровані рядки бази, максимум 500, старі видаляються; ключ джерела дедуплікує. RESTful перелічує, рахує, позначає й видаляє.

Жива доставка через notify:<userId> і GET /api/notifications/events (SSE). Ідентичність із сесії; SQL — джерело істини.

Джерела​

channel-dm, channel-mention (коли хтось @mentions вас у каналі або відповідає на ваше повідомлення), channel-invite, share, automation-failed, calendar-reminder, work-run-finished, work-run-attention, work-takeover, work-approval, system. Лише для відповідного користувача.

Сповіщення можуть також запускати автоматизації: автоматизація з тригером event спрацьовує щоразу, коли сповіщення обраного типу надходить її власнику, з обмеженням — не частіше одного разу на хвилину для кожної автоматизації.

Webhook​

  • Точний URL, без перенаправлень і private/link-local, якщо host не дозволений у TOOLS_PRIVATE_NETWORK_ALLOWLIST.
  • Підпис X-Libre-Signature: sha256=<hmac> точного тіла.
  • Зовні лише тип, заголовок, ID і час; не текст, промпт або документ.
  • Обмежені повтори: 5xx повторюється, 4xx завершує.
  • Конкретні типи або *.

Push браузера​

  • VAPID RFC 8292: ES256, збережена зашифрована пара або VAPID_PUBLIC_KEY/VAPID_PRIVATE_KEY, контакт VAPID_SUBJECT.
  • RFC 8291: aes128gcm ключами пристрою.
  • Для кожного пристрою й сесії; вихід видаляє реєстрацію. Endpoint зашифрований і має бути публічним HTTPS.
  • Обмежені повтори; 404/410 видаляє підписку.
  • Payload містить заголовок, текст, тип і посилання.

Потрібні виробничий застосунок і безпечне походження. Service worker забезпечує встановлення й автономну оболонку; API не кешується.

Пошта​

Пошта — третій канал доставки, і єдиний, що потребує налаштування адміністратором. Settings → User Management → Доступ і політики → Сповіщення електронною поштою містить один сервер вихідної пошти SMTP: хост, порт, безпеку з’єднання (STARTTLS, неявний TLS або none для довіреної мережі), необов’язкові облікові дані, адресу відправника та публічний URL для посилань. Змінні середовища SMTP_* зі Змінних середовища задають ті самі поля для контейнерних розгортань; значення, збережене в інтерфейсі, має пріоритет. Пароль зберігається зашифрованим і ніколи не повертається в браузер. Надіслати тест доставляє повідомлення на власну адресу адміністратора (або будь-яку введену адресу), тож проходження шляху підтверджується ще до того, як на нього почнуть покладатися користувачі.

Адміністратори також вибирають шаблон листа Світлий або Темний і переглядають його перед збереженням. Типово використовується Світлий. Збережений пресет застосовується до кожного сповіщення й тестового листа цього екземпляра, зокрема до результатів у Markdown; він не залежить від теми інтерфейсу кожного користувача. Попередній перегляд відтворює зразок вмісту без звернення до SMTP, надсилання пошти чи постановки завдання в чергу. Читати або змінювати пресет і запитувати попередній перегляд можуть лише адміністратори. Вбудовані пресети зберігають читабельність тексту, посилань, блоків коду й кнопок; власні HTML-шаблони не приймаються. Поштові клієнти все одно можуть змінювати кольори відповідно до власних налаштувань відображення.

Щойно перемикач увімкнено, кожен користувач обирає, що потрапляє в його пошту, в розділі Settings → Notifications → Сповіщення електронною поштою:

  • Згадки в каналі: повідомлення, що згадує вас у каналі, з попереднім переглядом і посиланням на канал.
  • Результати автоматизацій: результат кожного запуску ваших автоматизацій, успішного чи ні. Чат-запуск несе саму відповідь асистента (до кількох тисяч символів); запуск Work — однорядковий статус завдання; невдача — текст помилки. Посилання відкриває відповідний чат або завдання.

Обидва перемикачі лишаються вимкненими, доки користувач їх не увімкне, і працюють лише для облікових записів з електронною адресою, яку власник задає під час реєстрації або яку додає адміністратор у розділі Users. Повідомлення надсилаються через те саме постійне середовище виконання завдань, що й Web Push, з обмеженою кількістю повторів для тимчасових збоїв ретранслятора, а клієнт SMTP — невелика вбудована реалізація (EHLO, STARTTLS, AUTH PLAIN або LOGIN), яка ніколи не надсилає облікові дані незашифрованим з’єднанням, якщо режим явно не none. Кожне повідомлення має текстову частину й альтернативу HTML у стилі сайту: словесний знак Libre WebUI, одну картку з вмістом, коралову кнопку до цілі та підвал із посиланням назад до Settings → Notifications. Результат автоматизації рендериться з Markdown (заголовки, списки, виділення, код, посилання лише на цілі http(s)); усе інше екранується, і єдине зовнішнє зображення — логотип, що подається з librewebui.org. Без стеження.

Межі​

Налаштувань за окремими типами ще немає; вихід із каналу зупиняє його сповіщення.