EnotPRO Logo EnotPRO

createforumtopic

createforumtopic — создаёт новую тему (топик) в группе-форуме или в личном чате с пользователем.

📝 Назначение

Используется для программного создания тем в супергруппах, где включён режим форума. Каждая тема функционирует как отдельный чат со своими настройками уведомлений и возможностью закреплять сообщения.

Когда это нужно:

  • Автоматическое создание темы под каждый заказ или тикет
  • Организация обсуждений по категориям
  • Создание временных тем для мероприятий

💡 Совет: После создания темы её идентификатор (message_thread_id) используется в других реакциях для отправки сообщений именно в эту тему.

⚙️ Параметры

Параметр Тип Обязательный Описание
chat_id Integer/String ✅ Да ID группы-форума или @username
name String ✅ Да Название темы (1–128 символов)
icon_color Integer ❌ Нет Цвет иконки темы (см. допустимые значения ниже)
icon_custom_emoji_id String ❌ Нет ID пользовательского эмодзи для иконки темы

🎨 Допустимые значения icon_color

Цвет RGB Десятичное значение HEX
Голубой (111, 185, 240) 7322096 0x6FB9F0
Жёлтый (255, 214, 126) 16766590 0xFFD67E
Фиолетовый (203, 134, 219) 13338331 0xCB86DB
Зелёный (142, 238, 152) 9367192 0x8EEE98
Розовый (255, 147, 178) 16749490 0xFF93B2
Оранжевый (251, 111, 95) 16478047 0xFB6F5F

💡 Совет: Для получения ID пользовательских эмодзи используйте реакцию GetForumTopicIconStickers.

📍 Результат

После выполнения реакции результат доступен в переменной:

${response.result}

Структура результата — объект ForumTopic:

Поле Тип Описание
message_thread_id Integer ID созданной темы (используется в параметре message_thread_id)
name String Название темы
icon_color Integer Цвет иконки
icon_custom_emoji_id String ID пользовательского эмодзи (если установлен)

🔐 Требуемые права бота

Право Описание
Бот — администратор чата Обязательное условие
can_manage_topics Право управлять темами форума

⚠️ Важно: Для создания темы в группе-форуме бот должен быть администратором с правом can_manage_topics.

🧪 Примеры использования

Пример 1: Создание простой темы

Задача: Создать тему «Общие вопросы» с цветом по умолчанию.

Параметры createforumtopic:

  • chat_id: ${chat.id}
  • name: Общие вопросы

Пример 2: Создание темы с указанным цветом

Задача: Создать тему с зелёной иконкой.

Параметры createforumtopic:

  • chat_id: ${chat.id}
  • name: Важные объявления
  • icon_color: 9367192

Пример 3: Создание темы с пользовательским эмодзи

Задача: Создать тему с эмодзи 📰 в качестве иконки.

Параметры createforumtopic:

  • chat_id: ${chat.id}
  • name: Новости
  • icon_custom_emoji_id: 5434144690511290129

Пример 4: Использование ID созданной темы

Задача: Создать тему и отправить в неё приветственное сообщение.

Реакции:

  1. createforumtopicchat_id: ${chat.id}, name: Поддержка
  2. SendMessage
  • chat_id: ${chat.id}
  • topic_id: ${response.result.message_thread_id}
  • Текст: Добро пожаловать в тему поддержки!

Пример 5: Создание темы по команде

Задача: Администратор может создать тему командой /newtopic Название темы.

Обработчик: Регулярное выражение /newtopic (.+)

Реакции:

  1. createforumtopicchat_id: ${chat.id}, name: ${update.match.1}
  2. SendMessage → текст: Тема "${update.match.1}" создана!

🔄 Особенности поведения

Ситуация Поведение
Чат не является форумом Реакция вызовет ошибку
Название длиннее 128 символов Telegram вернёт ошибку
Название короче 1 символа Telegram вернёт ошибку
Бот не администратор Реакция вызовет ошибку
У бота нет права can_manage_topics Реакция вызовет ошибку

🔗 Связанные реакции

Реакция Назначение
editforumtopic Изменить название или иконку темы
closeforumtopic Закрыть тему
deleteforumtopic Удалить тему
GetForumTopicIconStickers Получить ID эмодзи для иконки

🔗 Связанные разделы

Раздел Описание
Топики Общая информация о темах форума
SendMessage Отправка сообщений в тему (
© 2025 EnotPRO. Все права защищены.