EnotPRO Logo EnotPRO

unpinAllForumTopicMessages

unpinAllForumTopicMessages — открепляет все закреплённые сообщения в указанной теме форума.

📝 Назначение

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

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

  • Очистка устаревших закреплённых сообщений
  • Подготовка темы к новому закреплению
  • Устранение «мусора» из нескольких закреплённых сообщений

💡 Совет: Эта реакция работает только с закреплёнными сообщениями внутри конкретной темы. Для открепления сообщений в общем чате (не в теме) используйте unpinChatMessage.

⚙️ Параметры

Параметр Тип Обязательный Описание
chat_id Integer/String ✅ Да ID группы-форума или @username
message_thread_id Integer ✅ Да ID темы, в которой нужно открепить все сообщения

📍 Результат

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

${response.result}

Тип значения: Booleantrue при успешном откреплении всех сообщений.

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

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

⚠️ Важно: Без права can_pin_messages реакция вызовет ошибку.

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

Пример 1: Открепление всех сообщений в теме

Задача: Очистить все закреплённые сообщения в теме с ID 12345.

Параметры unpinAllForumTopicMessages:

  • chat_id: ${chat.id}
  • message_thread_id: 12345

Пример 2: Очистка темы перед новым закреплением

Задача: Перед закреплением нового сообщения очистить все старые закрепления.

Реакции:

  1. unpinAllForumTopicMessageschat_id: ${chat.id}, message_thread_id: ${topic_id}
  2. pinChatMessage → закрепление нового сообщения в теме

Пример 3: Очистка темы после завершения обсуждения

Задача: После завершения обсуждения в теме удалить все закреплённые сообщения.

Реакции:

  1. (Завершение обсуждения)
  2. unpinAllForumTopicMessageschat_id: ${chat.id}, message_thread_id: ${topic_id}
  3. SendMessage → в тему: Все закреплённые сообщения удалены. Тема закрывается.

Пример 4: Очистка темы по команде администратора

Задача: Администратор может очистить закрепления в теме командой /unpintopic <id>.

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

Реакции:

  1. unpinAllForumTopicMessageschat_id: ${chat.id}, message_thread_id: ${update.match.1}
  2. SendMessage → текст: Все закреплённые сообщения в теме ${update.match.1} откреплены.

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

Ситуация Поведение
В теме нет закреплённых сообщений Реакция не вызывает ошибку (ничего не меняется)
Тема не существует Telegram вернёт ошибку
Бот не администратор Реакция вызовет ошибку
У бота нет права can_pin_messages Реакция вызовет ошибку
Чат не является форумом Реакция вызовет ошибку

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

Реакция Назначение
pinChatMessage Закрепить сообщение
unpinChatMessage Открепить конкретное сообщение
unpinAllChatMessages Открепить все сообщения в чате (без учёта тем)

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

Раздел Описание
Топики Общая информация о темах форума

🔗 Ссылка на официальную документацию

unpinAllForumTopicMessages — Telegram Bot API

© 2025 EnotPRO. Все права защищены.