Уведомления и индикаторы — Решение проблем¶
Руководство по решению проблем с уведомлениями и индикаторами 1Формы. Разделы организованы по типам проблем: симптом, что проверить, решение. Охватывает email, push, desktop-уведомления, обновление в реальном времени, фоновые задачи, повторения, счётчики и автозаполнение полей.
1. Уведомления не приходят¶
1.1 Не приходят уведомления на email (Outlook / почтовый клиент)
Симптом: «уведомления из 1Ф не приходят в Outlook», «перестали приходить письма-уведомления».
Что проверить:
- Пользовательские настройки уведомлений — не отключены ли email-уведомления (Профиль → Уведомления)
- Настройки категории — включены ли уведомления (Администрирование → Категории → Уведомления)
- Почтовый сервер — работает ли отправка (проверить в логах ошибки SMTP)
- Спам-фильтр — не попадают ли письма в спам
- Очередь уведомлений — не забита ли
1.2 Напоминание о приближении срока не срабатывает
Симптом: «настроено "Напоминание о приближении срока в день окончания", но уведомления не приходят».
Что проверить:
- Настройка в категории — включена ли, какой интервал
- Срок задачи — задан ли
- Фоновая задача — работает ли OverdueNotificationJob
Когда обращаться в поддержку 1Ф: если настройка есть, сроки заданы, но уведомления не приходят — проверить OverdueNotificationJob.
1.3 Push-уведомления не работают
Симптом: «ошибки push-уведомлений», «push не приходят на мобильное».
Что проверить:
- Настройка push — настроен ли Firebase (FCM) / APNs
- Порты — открыты ли (FCM требует порты 443, 5228-5230)
- Токен устройства — зарегистрировано ли устройство
- Логи — текст ошибки
Когда обращаться в поддержку 1Ф: если порты открыты, но push не работает — обратиться в поддержку 1Ф.
1.4 Desktop-уведомления не работают для чатов/вопросов¶
Desktop-уведомления в браузере при новых сообщениях в чате и вопросах — отдельный частый кейс поддержки.
Симптом: «не приходят desktop-уведомления в браузере при новых сообщениях в чате», «не показываются уведомления для вопросов», «в консоли браузера ошибка TypeError при получении уведомлений».
Версии:
- ❌ Версии до v2.266 — известная проблема
- ✅ Версии v2.266+ — исправлено
Что проверить:
- Версия системы (самое важное):
- Если версия < 2.266 → рекомендовать обновление
-
Если версия ≥ 2.266 → искать другие причины
-
Настройки браузера:
- Разрешены ли уведомления для сайта (Settings → Site Settings → Notifications)
- В Chrome: иконка замка в адресной строке → Site Settings → Notifications → Allow
- В Firefox: иконка замка → Permissions → Receive Notifications → Allow

- HTTPS-соединение:
- Desktop-уведомления работают только по HTTPS
-
Проверить в адресной строке наличие замка 🔒
-
Консоль браузера (F12 → Console):
- Нет ли JavaScript-ошибок при получении уведомлений
-
Ошибка
TypeError: Cannot spread non-iterable value= версия < 2.266 -
Настройки пользователя:
- Профиль → Уведомления → "Уведомления рабочего стола" — включены ли
Известные проблемы (до v2.266):
TypeErrorпри обработке событийnewCommentеслиrecipients/copyRecipients=null- Некорректные значения enum в БД (
SendPushForChats = 2) - Desktop-уведомления не показывались для сообщений чатов и вопросов
Решение:
Для версий < 2.266:
- Рекомендовать обновление до версии 2.266+ (критичное исправление)
- Временное решение: обновить страницу после каждого сообщения
Для версий ≥ 2.266:
- Проверить настройки браузера (разрешения на уведомления)
- Проверить HTTPS-соединение
- Проверить настройки пользователя в профиле
- Попросить пользователя кликнуть "Разрешить" при запросе браузера
Как протестировать:
1. Открыть консоль браузера (F12)
2. Выполнить: Notification.permission
- "granted" = разрешено ✅
- "denied" = запрещено ❌
- "default" = не запрошено ⚠️
3. Тестовое уведомление:
new Notification("Test", { body: "Работает!" })
Когда обращаться в поддержку 1Ф:
- Версия < 2.266 и нельзя обновить — обращение в поддержку 1Ф
- Версия ≥ 2.266, но уведомления всё равно не работают — проверить настройки nginx/reverse proxy (WebSocket)
2. Некорректные уведомления¶
2.1 Лишние уведомления
Симптом: «приходит лишнее уведомление при ответе на вопрос».
Что проверить:
- Настройки уведомлений — какие типы включены
- Тип события — ответ на вопрос может генерировать уведомление и автору, и получателю
2.2 Настройки systemrobot меняют настройки по умолчанию
Симптом: «изменение настроек уведомлений у systemrobot приводит к изменению настроек по умолчанию для всех».
Решение: настройки уведомлений systemrobot используются как шаблон по умолчанию для новых пользователей. Изменение настроек systemrobot не должно влиять на уже созданных пользователей, но может влиять на дефолтные значения.
Когда обращаться в поддержку 1Ф: если изменение systemrobot меняет настройки существующих пользователей — баг.
OverdueNotificationJob падает. Симптом: «OverdueNotificationJob не выполняется», «ошибка в задаче уведомлений о просрочке».
Когда обращаться в поддержку 1Ф: серверная проблема — обратиться в поддержку 1Ф с текстом ошибки из лога.
4. Обновление в реальном времени (SignalR)¶
4.1 Данные не обновляются в реальном времени
Симптом: «в БИ не обновляется информация при создании задач», «данные подтягиваются только после обновления страницы».
Что проверить:
- SignalR-соединение — индикатор в нижнем правом углу (зелёный = подключён)
- Reverse proxy — пропускает ли WebSocket-соединения
- Браузер — поддерживает ли WebSocket
- Обновить страницу — восстанавливается ли соединение
- VPN или корпоративный прокси клиента — некоторые VPN/прокси-серверы блокируют или нестабильно пропускают WebSocket. Попросить пользователя проверить работу без VPN
- Локальный брандмауэр / антивирус — могут блокировать долгоживущие WebSocket-соединения
- Сравнение с другими пользователями той же компании — если у других сотрудников SignalR работает, проблема локальная (на стороне рабочего места)
Когда обращаться в поддержку 1Ф: если SignalR стабильно не подключается у всех пользователей — проблема инфраструктуры (nginx/IIS настройки WebSocket). Если только у одного — см. § 4.2.
4.2 SignalR не работает только у одного пользователя
Симптом: «у конкретного сотрудника интерфейс не обновляется, у остальных всё в порядке», «ошибка SignalR в консоли только у одного юзера».
Что проверить:
- VPN — отключить и проверить (многие корпоративные VPN режут WebSocket)
- Корпоративный прокси / firewall на стороне клиента — пропускает ли долгоживущие соединения, не фильтрует ли HTTP Upgrade-заголовки
- Браузер — повторить в другом браузере или в режиме инкогнито (исключить расширения)
- Сетевая стабильность рабочего места — нет ли потерь пакетов, стабильно ли подключение
Решение: если работа без VPN восстанавливает SignalR — это сетевая политика компании пользователя, не баг платформы. Передать IT-службе клиента для настройки VPN/прокси: разрешить WebSocket на домен 1Формы.
Когда обращаться в поддержку 1Ф: если VPN и прокси исключены, но проблема сохраняется только у одного пользователя — обратиться в поддержку 1Ф с указанием версии платформы, браузера и сетевой топологии рабочего места.
Где хранятся уведомления в БД. Симптом: «в какой таблице хранятся данные об уведомлениях?»
Решение: уведомления хранятся в таблице dbo.Notifications (основная) и связанных таблицах. Настройки пользователей — dbo.UserNotificationSettings.
6. Повторения — уведомления и расписания¶
6.1 Ошибки при создании и переносе повторений
Симптом: «ошибка при повторном создании повторения», «при переносе задачи не учитываются настройки повторений категории».
Что проверить:
- Настройки повторений в категории — заданы ли, совместимы ли с целевой категорией при переносе
- Повторение уже существует — попытка создать дубль может вызывать ошибку
- Логи — текст ошибки при создании
Когда обращаться в поддержку 1Ф: если ошибка воспроизводится стабильно — баг, обратиться в поддержку 1Ф с шагами воспроизведения.
6.2 Смарт-расписания: баги UI и подстановки времени
Симптом: «не подставляется время из смарт-выражения "Дата окончания"», «странно ведёт себя выбор времени в установке повторения», «при отклонении повторения пресеты становятся некликабельными».
Что проверить:
- Версия системы — проблемы фронта могут быть версионными
- Тип смарт-выражения — какое именно используется
- Браузер — воспроизводится ли в другом браузере
- Шаги воспроизведения — точная последовательность (создать повторение → отклонить → попробовать снова)
Когда обращаться в поддержку 1Ф: UI-баги фронта — обратиться в поддержку 1Ф со скриншотами и шагами воспроизведения.
7. Автоматическое заполнение полей (робот/SmartScript)¶
7.1 Робот не заполняет исполнителя автоматически
Симптом: «робот не заполняет исполнителя автоматически при создании задачи».
Что проверить:
- Настройка SmartScript/робота — привязан ли к категории, на какое событие срабатывает
- Условия срабатывания — выполняются ли (тип задачи, состояние, значения ДП)
- Логи SmartScript — есть ли ошибки выполнения
- Права робота — имеет ли робот права на изменение поля «Исполнитель»
Когда обращаться в поддержку 1Ф: если SmartScript настроен корректно, но не срабатывает — обратиться в поддержку 1Ф с ID категории и названием скрипта.
8. Счётчики категорий — уведомления и обновление¶
8.1 Проблемы с уведомлениями счётчиков
Симптом: «проблема с уведомлениями счётчиков категорий», «счётчики не обновляются», «некорректные значения счётчиков».
Что проверить:
- SignalR-соединение — счётчики обновляются через SignalR (см. секцию 4.1)
- Настройки категории — включены ли счётчики
- Кеш — попробовать очистить кеш браузера и обновить страницу
- Один пользователь или все — если все, проблема серверная
Связанные документы: runbook-tickers-counters.md — детальный рунбук по счётчикам.
Когда обращаться в поддержку 1Ф: если счётчики стабильно некорректны после обновления страницы — обратиться в поддержку 1Ф.
Чеклист для первичной диагностики¶
Что зафиксировать при первичном разборе:
- Тип проблемы — не приходят, лишние, push, desktop, SignalR, фоновые задачи, повторения, счётчики, автозаполнение
- Канал уведомления — email, push (mobile), desktop (браузер), SignalR
- Один пользователь или все
- Версия системы (критично для desktop-уведомлений: < 2.266 = известная проблема; для повторений — UI-баги могут быть версионными)
- Текст ошибки из лога или консоли браузера (для desktop)
- Настройки — пользовательские и категории
- Для desktop: разрешения браузера, HTTPS, консоль (F12)
- Для повторений: какое смарт-выражение, шаги воспроизведения, скриншоты
Когда обращаться в поддержку 1Ф¶
Обращаться в поддержку 1Ф стоит в следующих случаях:
- OverdueNotificationJob падает (серверная проблема)
- Push не работает при открытых портах
- Настройки systemrobot меняют настройки существующих пользователей (баг)
- SignalR стабильно не подключается (инфраструктура)
- Desktop-уведомления не работают на версии < 2.266 и нельзя обновить (критичный баг)
- Повторения: ошибка создания/переноса воспроизводится стабильно (баг)
- Повторения: UI пресетов/смарт-расписаний сломан (фронт-баг)
- SmartScript/робот не срабатывает при корректной настройке
- Счётчики категорий стабильно некорректны после обновления страницы