CommonMention описывает структурированное упоминание пользователя в текстовом поле.
API не парсит @ из произвольного текста автоматически. Клиент должен передавать массив mentions, сформированный через autocomplete: сервер валидирует пользователя и точное совпадение offset/length/text с фрагментом текста.
| Название | Тип данных | Описание |
|---|---|---|
| id | Int64 | ID упоминания |
| source_entity_type | Enum | Тип сущности-источника: ChatMessage, ProjectTask, Lead, Deal, Ticket |
| source_entity_id | String | ID записи-источника |
| source_field | String | Поле источника: text или description |
| mentioned_entity_type | Enum | Тип упомянутой сущности: User |
| mentioned_entity_id | Int64 | ID упомянутой сущности |
| offset | Int32 | Начальная позиция фрагмента в тексте |
| length | Int32 | Длина фрагмента в тексте |
| text | String | Видимый текст упоминания, например @Алиса |
| mentioned_entity_name | String | Имя упомянутой сущности для отображения |
| mentioned_entity_photo_url | String | Фото или аватар упомянутой сущности |
| read | Boolean | Признак прочтения упоминания упомянутой сущностью |
| read_date | Int64? | Дата прочтения (Unix time, сек.) |
| created_user_id | Int64 | ID пользователя, создавшего упоминание |
| created_date | Int64 | Дата создания (Unix time, сек.) |
| last_update | Int64 | Дата последнего изменения (Unix time, сек.) |
| Название | Тип данных | Описание |
|---|---|---|
| mentioned_entity_type | Enum | Тип упомянутой сущности, сейчас поддерживается User |
| mentioned_entity_id | Int64 | ID упомянутой сущности |
| offset | Int32 | Начальная позиция фрагмента в тексте |
| length | Int32 | Длина фрагмента в тексте |
| text | String | Видимый текст упоминания; должен совпадать с фрагментом текста |
| Название | Тип данных | Описание |
|---|---|---|
| add_missing_users_to_context | Boolean | Если true, сервер добавляет упомянутых пользователей в контекст сущности: участников чата/CRM-сущности или наблюдателей задачи |
При редактировании текстового поля список mentions заменяется целиком. Если текст изменен без передачи mentions, прежние mentions этого поля очищаются.
При создании нового упоминания сервер отправляет уведомление MentionAdded с действием entity.open. Поля entity_type и entity_id указывают на сущность, которую должен открыть клиент: Chat для сообщения чата, Lead, Deal, Ticket или ProjectTask для описаний CRM/задачи. Данные самого упоминания передаются дополнительно: mention_id, source_entity_type, source_entity_id, source_field, mentioned_entity_type, mentioned_entity_id.