Главная
Документация
Руководство администратора
4. Настройка модулей
Настройки модуля «Чат и коммуникации»
Актуальная документация (версия 2.4.0) · версионный адрес
Настройки модуля «Чат и коммуникации»
Обновлено: 09 Октябрь 2026
Версия: 2.4.0
Доступ к настройкам:
- Включите модуль чата (см. ниже) — иначе пункт настроек чата в меню может быть скрыт.
- Перейдите в «Настройки» → «Чат» (адрес
/settings/chat/). - Нужно право
system.settings(как у прочих разделов настроек системы).
На странице пять вкладок: Общие параметры, Команды, Каналы, Правила маршрутизации событий, Группы упоминаний. Справа сверху есть кнопка «Открыть коммуникации» для перехода в мессенджер.
Руководство пользователя: 3.12. Чат и коммуникации.
1. Включение модуля
- Настройки → Основные настройки системы (
MainSystemSettings). - Включите «Модуль чата включён» (
chat_enabled). По умолчанию включён. - Сохраните.
Если выключить:
- пункт «Коммуникации» пропадает из меню;
- скрывается иконка чата в шапке;
- кнопки «Открыть обсуждение» на карточках объектов не показываются;
- API и страница
/communications/отвечают как недоступные; - доставка системных уведомлений в чат не выполняется.
Настройки на /settings/chat/ при выключенном модуле могут быть скрыты из бокового меню настроек — сначала снова включите чат.
Подробнее о блоке MainSystemSettings: Системные настройки.
2. Что должно быть готово для работы
| Требование | Зачем |
|---|---|
chat_enabled = True |
Модуль доступен пользователям |
Миграции приложения communications применены |
Таблицы, начальные параметры |
| Фоновые задачи (Celery) запущены | Просрочка запросов ответа, очистка старых уведомлений чата, проекция событий в каналы, email, длительный экспорт |
| Каталог приватного хранения вложений | Файлы чата не отдаются как обычные медиа сайта; путь задаётся на сервере |
| Фрагмент конфигурации Nginx | См. ручную установку, шаг 12; при установке через deploy.sh создаётся автоматически |
| Команды и каналы (seed или ручное создание) | Иначе широковещательные события модулей некуда публиковать; при установке через deploy.sh — seed_communication_channels после суперпользователя |
| Правила маршрутизации | Связь типа события с каналом |
| У сотрудников при необходимости — флаг «Уведомления в чат» | Персональная доставка оповещений АСК в мессенджер |
Рекомендуемая первичная заливка демо-иерархии каналов (идемпотентно; при deploy.sh выполняется автоматически после createsuperuser):
python manage.py seed_communication_channels --tenant-id=1
Опционально подписать всех сотрудников:
python manage.py seed_communication_channels --tenant-id=1 --auto-subscribe-all-staff
Команда не запускается сама при миграциях — её нужно выполнить при внедрении или обновлении.
Проверка проекции события (для диагностики):
python manage.py emit_test_domain_event --sync-project
3. Вкладка «Общие параметры»
Параметры хранятся в справочнике настроек модуля и редактируются прямо в таблице (форма открывается без перезагрузки страницы). Значения с единицами измерения показаны в интерфейсе.
3.1. Общие параметры
| Параметр | По умолчанию | Смысл |
|---|---|---|
| Максимальная длина сообщения | 10 000 символов | Лимит текста одного сообщения |
3.2. Вложения
| Параметр | По умолчанию | Смысл |
|---|---|---|
| Максимальный размер вложений | 25 МБ | На один файл |
| Разрешённые MIME-типы | jpeg, png, gif, webp, pdf, Word, Excel, text/plain | Список через запятую |
3.3. Функционал
| Параметр | По умолчанию | Смысл |
|---|---|---|
| Включение тредов | Вкл. | Ветки обсуждения |
| Включение реакций | Вкл. | Эмодзи к сообщениям |
| Включение экспорта чатов | Вкл. | TXT / HTML |
3.4. Уведомления
| Параметр | По умолчанию | Смысл |
|---|---|---|
| Уведомления по email | Вкл. | Письма внешним участникам чата (с паузой и учётом «в сети») |
3.4.1. Центр событий (рабочие «Входящие» и каналы)
В той же вкладке «Общие параметры» есть блок настроек центра событий (в интерфейсе может называться Event Center). Он отвечает за рабочие карточки во вкладке «Входящие» и за согласованную доставку событий в каналы.
Кратко по пунктам (полные пояснения и сценарии внедрения):
Куда приходят уведомления и в каком виде.
| Параметр (как в интерфейсе) | Зачем он нужен администратору |
|---|---|
| Event Center включён | Включить сохранение и показ рабочих событий. Без этого новые «Входящие» с карточками действий не заработают как задумано. |
| Источник Inbox | Показывать во «Входящих» старый список чата, дублировать со списком рабочих карточек или перейти только на рабочие карточки Event Center. |
| Режим доставки уведомлений | Оставить классическую рассылку или перейти на доставку по правилам центра событий. |
| Маршрутизация в каналы чата | Как события попадают в каналы: напрямую из модулей, параллельно или только через центр событий. |
| Старые уведомления | Legacy in-app параллельно с Event Center или только центр событий. |
| Legacy PWA-колокольчик | Выкл. (рекомендуется): не писать в system.Notification; колокольчик в шапке = вход в коммуникации / «Входящие». Вкл. — откат к старому колокольчику. |
| Notify как сообщения в Разговорах | Выкл. (рекомендуется): не класть системные оповещения в чат объекта / DM со служебным пользователем. Вкл. — только для отладки. |
| Старые события в каналы | Модули шлют в каналы напрямую (параллельно) или только через центр. |
| Эскалации непрочитанных | Дополнительно напоминать о важных непрочитанных (обычно выкл.). |
| Ежедневный дайджест | Сводка раз в день (обычно выкл.). |
Событие канала → персональные «Входящие» (EVENT_CENTER_CHANNEL_EVENT_PERSONAL_INBOX) |
По умолчанию выкл.: карточка в канале не дублируется автоматически как личная во «Входящих». Включайте только если осознанно нужен такой дубль. |
Практический совет: на новых стендах сразу выключите Legacy PWA-колокольчик и Notify как сообщения в Разговорах. Режимы «параллельно / дублирование» Inbox оставляйте только на период миграции типов событий.
После migrate: seed часто оставляет Источник Inbox и родственные флаги в режиме legacy / parallel. Целевой режим для пользователей — только Event Center (unified / «только рабочие карточки»), но переключайте его после тестирования сценариев, а не «молча» сразу после обновления схемы.
Также в общих параметрах может быть настройка вкладки по умолчанию при открытии коммуникаций («Входящие» или «Разговоры»).
3.5. Политики сообщений
| Параметр | По умолчанию | Смысл |
|---|---|---|
| Разрешить редактирование | Вкл. | Авторам своих сообщений |
| Таймаут редактирования | 15 минут | 0 — без ограничения по времени |
| Разрешить удаление | Вкл. | Авторам |
| Таймаут удаления | 60 минут | 0 — без ограничения по времени |
3.6. Ограничения частоты
| Параметр | По умолчанию | Смысл |
|---|---|---|
| Лимит отправки сообщений | 30 в минуту | На пользователя |
| Лимит поиска | 60 в минуту | На пользователя |
| Лимит экспорта | 10 в час | На пользователя |
3.7. Присутствие
| Параметр | По умолчанию | Смысл |
|---|---|---|
| Включение Presence | Вкл. | Статусы в сети / отошёл / не в сети |
| Presence TTL | 45 секунд | Как долго считать «пульс» действительным |
| Таймаут перехода в Away | 300 секунд (5 минут) | Бездействие до статуса «отошёл» |
Интервал обновления «пульса» на стороне клиента задаётся конфигурацией сервера (около 25 секунд) и в этой таблице обычно не правится.
3.8. Параметры только в конфигурации сервера
Часть лимитов задаётся в конфигурации приложения (не на вкладке), со значениями по умолчанию:
- порог синхронного экспорта (около 500 сообщений) и срок хранения файла выгрузки (24 часа);
- минимум длины поискового запроса (2 символа);
- максимум участников группы (100) и канала (5000);
- срок хранения записей уведомлений чата (около 180 дней);
- пауза между email по одному диалогу (около 5 минут);
- интервал фоновой проекции событий в каналы (около 15 секунд);
- лимит личных оповещений по ключевым словам (около 50 на пользователя);
- идентификатор системного пользователя для служебных DM (используется только если включён устаревший режим «Notify как сообщения в Разговорах»).
При смене критичных лимитов согласуйте с сопровождением сервера.
4. Вкладка «Команды»
Команда — папка в дереве каналов мессенджера (например, «Заявки», «Согласования»).
Создать / изменить
- Вкладка «Команды» → «Добавить команду» (или изменить строку).
- Заполните:
- Название;
- Код (slug) — латиницей; если пусто, подставится из названия;
- Порядок сортировки;
- Видимость: для всех внутренних или ограниченная правилом;
- для ограниченной — правило в формате JSON с ключами
roles(типы пользователей) и/илиusers(числовые id), хотя бы один список непустой; - В архиве — скрыть из обычного дерева.
- Сохраните.
Без заполненного уникального slug в пределах организации команду не сохранить. Удаление невозможно, если к команде привязаны каналы — сначала перенесите или удалите каналы.
Seed создаёт команды: заявки, задачи, согласования, проекты, персонал, CRM, база знаний (и др. по версии).
5. Вкладка «Каналы»
Создать / изменить канал
- «Добавить канал».
- Поля:
- Команда (необязательно для канала «без папки»);
- Название, slug;
- Тип: ручной / системный / гибридный;
- Политика публикации:
- Все;
- Администраторы (создатель канала);
- Только система;
- Выбранные роли — тогда укажите типы учётных записей и/или подразделения (сотрудники выбранного подразделения и дочерних смогут писать);
- Код модуля — по необходимости;
- Порядок, В архиве.
- При создании автоматически заводится корневой разговор канала; название разговора синхронизируется с названием канала.
Для политики «Выбранные роли» нужно указать хотя бы один тип пользователя или подразделение.
Кто видит канал
- Клиенты портала каналы не видят.
- Внутренние — с учётом видимости команды и канала; архивные каналы в обычном дереве скрыты (создатель может видеть при специальных режимах).
6. Вкладка «Правила маршрутизации событий»
Правило Event Center — это конструктор маршрута: куда положить событие, кому (роли аудитории), с каким смыслом (purpose) и какими политиками доставки/отложения. Это не только «тип события → канал».
Основные поля
| Поле | Смысл |
|---|---|
| Название, домен, тип события | Идентификация правила и события из каталога / матрицы |
| Purpose (смысл) | Например: действие (ACTION), важно, напоминание, info, командный поток (TEAM_STREAM)… |
| Destination (куда) | inbox — личные «Входящие»; channel — лента канала; также activity / external_only / chat_section |
| Audience (кому) | Роли из payload события: исполнитель, автор, наблюдатель, очередь… |
| Целевой канал | Нужен, если destination = канал |
| Условия | Конструктор / JSON (приоритет, процесс, доп. фильтры) |
| Политика доставки | Связь с delivery policy (в т.ч. внешние транспорты: почта, Telegram, mobile push…) |
| Snooze / dedupe / resolution | Можно ли откладывать, шаблон дедупликации, как закрывается карточка |
| Attention / severity override | Переопределение класса внимания и важности при необходимости |
| Приоритет, Активно | Порядок применения и включение |
В таблице правил можно быстро включить/выключить правило и фильтровать по purpose / destination / domain.
Создать / изменить
- «Добавить правило» (вкладка Правила маршрутизации событий).
- Укажите тип события (и домен при необходимости).
- Выберите purpose и destination.
- Для канала — выберите целевой канал; для Inbox — аудиторию ролей.
- При необходимости сузьте условия, задайте политику доставки, snooze/dedupe.
- Включите правило переключателем Активно.
Согласования
Для трансляции согласований:
- Должны существовать каналы команды «Согласования» (seed создаёт «Ожидают решения», «Новые», «Завершённые») и/или правила с destination = Inbox для согласующих.
- Seed и матрица покрывают типичные
approval.*/*.approval_required; сверяйте purpose/destination с нужным UX (личная карточка vs канал команды). - Модули отправляют событие, если включены Event Center и проекция/маршрутизация (см. п. 3.4.1).
Утверждение по-прежнему выполняется в исходном модуле или кнопками на карточке Inbox (если тип события в волне handlers). Канал только уведомляет подписчиков.
Если каналов или правил нет
- Нет правила на канал → событие не появится в ленте канала (личная карточка всё равно может создаться другим правилом / матрицей).
- Нет маршрута в Inbox для роли → у сотрудника может не быть личной карточки, хотя канал заполнен.
«Догоняющая» заливка старых событий штатно не предполагается. Фоновая проекция — порядка раз в 15 секунд.
Текст писем/мессенджеров правится в Настройки → Уведомления; шаблон не задаёт вкладку purpose во «Входящих» — это делает правило маршрутизации / матрица.
7. Вкладка «Группы упоминаний»
Группа позволяет писать в чате @slug и уведомить набор людей.
Создать / изменить
- «Добавить группу упоминаний».
- Название и slug (без обязательного
@в начале). - Укажите участников и/или подразделения (хотя бы что-то одно).
- Сотрудники выбранных подразделений и дочерних узлов оргструктуры получают упоминание, если они участники диалога, где группа упомянута.
8. Права администратора vs пользователя
| Действие | Кто |
|---|---|
| Включить/выключить модуль чата | Администратор с доступом к MainSystemSettings |
| Параметры, команды, каналы, правила, группы упоминаний | Право system.settings |
| Создавать личные/групповые чаты, писать, подписываться на каналы | Обычные пользователи по матрице доступа |
| Включить себе «Уведомления в чат» / настройки доставки | Профиль / карточка сотрудника и «Настройки доставки» |
Отдельных групп «Chat-Admin» / «Chat-User» в поставке нет: админские экраны завязаны на system.settings, пользовательские — на членство и тип учётной записи.
9. Уведомления: что настраивает администратор
Кратко:
- Глобально — включение модуля чата и параметр «Уведомления по email» на вкладке общих параметров.
- Центр событий — режимы «Входящих», маршрутизация в каналы, флаги Legacy PWA-колокольчик и Notify как сообщения в Разговорах (см. п. 3.4.1 выше).
- Каналы и правила — куда попадают общие события команды.
- Текст писем и сообщений — в разделе Настройки → Уведомления.
Подробно и простым языком (куда приходит сообщение, в каком виде, сценарии, чек-лист):
Куда приходят уведомления и в каком виде.
Колокольчик в шапке по умолчанию не ведёт отдельный список system.Notification: он открывает коммуникации; рабочие события — во «Входящих».
10. Импорт и экспорт
| Функция | Есть? | Где |
|---|---|---|
| Экспорт истории диалога пользователем | Да (TXT, HTML), если не отключён | Меню диалога в мессенджере |
| Импорт переписки | Нет | — |
| Seed команд/каналов/правил | Да, команда обслуживания | Консоль сервера (см. выше) |
Аудит действий экспорта и чувствительных операций пишется во внутренний журнал аудита коммуникаций (для расследований сопровождением).
11. Чек-лист внедрения
- Включить «Модуль чата включён».
- Проверить вкладку Общие параметры (лимиты файлов и политик).
- Настроить блок центра событий: Event Center вкл.; Legacy PWA-колокольчик и Notify как сообщения в Разговорах — выкл. См. куда приходят уведомления.
- Выполнить первичную заливку команд и каналов при внедрении (см. раздел «Что должно быть готово» выше).
- Просмотреть команды, каналы и правила; отключить лишние демо-каналы или заменить на реальные.
- Создать нужные группы упоминаний.
- Убедиться, что фоновые задачи коммуникаций обрабатываются.
- Проверить с тестовым сотрудником: меню, три вкладки (Разговоры / Входящие / Каналы), чат заявки (только обсуждение людьми), подписка на канал, карточка «Требуется действие» во «Входящих» (не в чате объекта), упоминание, экспорт, кнопка Скрыть на INFO.
- Показать сотрудникам Настройки доставки.