MOD-INT-MSG — Мессенджеры (Telegram, Max)
Лицензия: Платный
Единый мессенджер-транспорт для всей системы. Модуль принимает входящие сообщения из Telegram и Max, нормализует их (текст, вложения, отправитель, чат) и отдаёт остальным модулям, а исходящие отправляет в нужный канал. Внешний аккаунт связывается с пользователем ядра по коду привязки — после этого сообщение из мессенджера уже несёт понятную личность, а не анонимный внешний идентификатор.
Групповые чаты обслуживаются только после явной привязки: до неё чат виден как ожидающий, но не обрабатывается. У привязанного чата ведётся состав участников (в пределах того, что отдаёт провайдер), различаются роль в мессенджере и роль в Modula, а личности сопоставляются с сотрудниками и контрагентами с подтверждением или отклонением спорных случаев. Чат можно связать с сущностью другого модуля — например со сделкой, — и переписка окажется рядом с ней. Уведомления рассылаются по правилам маршрутизации: тип события плюс фильтр и область, со статистикой доставки по каналам.
Возможности
- Подключение учёток Telegram и Max с проверкой токена и его шифрованием
- Приём входящих сообщений с нормализацией текста, вложений и отправителя
- Отправка исходящих сообщений в канал
- Привязка внешнего аккаунта к пользователю ядра по коду и обратное разрешение отправителя
- Групповые чаты и топики: обслуживание только после явной привязки чата
- Состав участников чата с различением роли в мессенджере и роли в Modula
- Сопоставление личностей мессенджеров с сотрудниками и контрагентами, с подтверждением спорных
- Связь чата с сущностями других модулей (например со сделкой) и список таких связей
- Правила маршрутизации уведомлений: тип события, фильтр, область действия
- Отправка уведомлений по маршрутам с подбором подходящих правил
- Статистика доставки за период: отправлено, доставлено, ошибки, в очереди
- Лента входящих сообщений с фильтрами по каналу и статусу
Основные MCP-инструменты
| Инструмент | Назначение |
|---|---|
int-msg__msg.connect_account | Подключить учётку мессенджера (Telegram, Max) |
int-msg__msg.list_accounts | Подключённые учётки без токенов |
int-msg__msg.disconnect_account | Отключить учётку (с подтверждением) |
int-msg__msg.bind_user | Привязать внешний аккаунт к пользователю ядра |
int-msg__msg.unbind_user | Отвязать внешний аккаунт (с подтверждением) |
int-msg__msg.resolve_user | Определить пользователя ядра по внешнему отправителю |
int-msg__msg.list_channels | Каналы и чаты мессенджеров |
int-msg__msg.list_inbound | Лента входящих сообщений |
int-msg__msg.get_inbound | Входящее сообщение с нормализованным представлением |
int-msg__msg.send_message | Отправить исходящее сообщение в канал |
int-msg__msg.list_chats | Групповые чаты и топики, включая ожидающие привязки |
int-msg__msg.get_chat | Карточка чата: привязка, владелец, тип, топик |
int-msg__msg.link_chat | Привязать групповой чат к Modula |
int-msg__msg.unlink_chat | Отвязать чат (с подтверждением) |
int-msg__msg.sync_chat | Синхронизировать состав участников чата |
int-msg__msg.list_members | Участники чата с ролями в мессенджере и в Modula |
int-msg__msg.set_member_role | Назначить роль участника в Modula |
int-msg__msg.list_identities | Личности мессенджеров и состояние сопоставления |
int-msg__msg.match_identity | Подтвердить или отклонить сопоставление личности |
int-msg__msg.link_entity | Связать чат с сущностью другого модуля |
int-msg__msg.unlink_entity | Убрать связь чата с сущностью (с подтверждением) |
int-msg__msg.list_entity_links | Связи чата с сущностями |
int-msg__msg.set_route | Правило маршрутизации уведомлений |
int-msg__msg.list_routes | Правила маршрутизации |
int-msg__msg.send_notification | Отправить уведомление по маршрутам |
int-msg__msg.get_delivery_stats | Статистика доставки за период |
Связанные модули
- MOD-MSG-ACCOUNTS — пул ботов и учётных данных, на котором работает транспорт
- MOD-NOTIFICATION-ROUTING — общая маршрутизация уведомлений платформы
- MOD-CRM — контрагенты и сделки, с которыми связываются чаты
- MOD-CHAT-EXTERNAL — переписка с внешними участниками внутри системы