EnotPRO Logo EnotPRO

SetChatPermissions

SetChatPermissions — изменяет глобальные разрешения (права по умолчанию) для всех участников чата.

📝 Назначение

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

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

  • Включить медленный режим (через slow_mode_delay, отдельная настройка)
  • Запретить отправку стикеров или голосовых сообщений
  • Ограничить возможность приглашать новых участников
  • Запретить изменение информации о чате

💡 Совет: Установка разрешений влияет только на обычных участников. Администраторы всегда имеют полные права (если иное не настроено через PromoteChatMember).

⚙️ Параметры

Все параметры имеют тип Boolean и являются опциональными. Если параметр не указан или указан как true — действие разрешено. Если указан как false — действие запрещено.

Отправка сообщений

Параметр Описание
can_send_messages Разрешена отправка текста, контактов, мест, счетов
can_send_audios Разрешена отправка аудиофайлов
can_send_documents Разрешена отправка документов
can_send_photos Разрешена отправка фотографий
can_send_videos Разрешена отправка видео
can_send_video_notes Разрешена отправка видеосообщений («кружков»)
can_send_voice_notes Разрешена отправка голосовых сообщений
can_send_polls Разрешена отправка опросов и викторин
can_send_other_messages Разрешена отправка анимаций (GIF), игр, стикеров, команд через встроенных ботов
can_add_web_page_previews Разрешено автоматическое отображение превью ссылок

Управление чатом

Параметр Описание
can_change_info Разрешено изменение названия, фото и других настроек чата (не применяется в публичных супергруппах)
can_invite_users Разрешено приглашение новых пользователей
can_pin_messages Разрешено закрепление сообщений (не применяется в публичных супергруппах)
can_manage_topics Разрешено создание тем форума (по умолчанию равно can_pin_messages)

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

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

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

📊 Значения по умолчанию

Если не указаны явно, все права считаются разрешёнными (true). Исключение — can_manage_topics, который по умолчанию равен can_pin_messages.

# Все права разрешены (значения по умолчанию)
can_send_messages: true
can_send_audios: true
can_send_documents: true
can_send_photos: true
can_send_videos: true
can_send_video_notes: true
can_send_voice_notes: true
can_send_polls: true
can_send_other_messages: true
can_add_web_page_previews: true
can_change_info: true
can_invite_users: true
can_pin_messages: true
can_manage_topics: true  # = can_pin_messages

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

Пример 1: Запрет отправки медиафайлов

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

Параметры SetChatPermissions:

  • can_send_messages: true
  • can_send_photos: false
  • can_send_videos: false
  • can_send_audios: false
  • can_send_documents: false
  • can_send_other_messages: false

Пример 2: Только текстовые сообщения и ссылки

Задача: Разрешить текст и превью ссылок, но запретить всё остальное.

Параметры SetChatPermissions:

  • can_send_messages: true
  • can_add_web_page_previews: true
  • (остальные права — false)

Пример 3: Запрет приглашения новых участников

Задача: Обычные участники не могут приглашать людей в группу.

Параметры SetChatPermissions:

  • can_invite_users: false

Пример 4: Полное ограничение (только чтение)

Задача: Превратить чат в режим «только для чтения» (никто не может писать).

Параметры SetChatPermissions:

  • can_send_messages: false

Пример 5: Восстановление всех прав

Задача: Сбросить все ограничения, разрешить всё.

Параметры SetChatPermissions: (все права не указаны или указаны как true)

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

Ситуация Поведение
Параметр не указан Считается true (разрешено)
Бот не администратор Реакция вызовет ошибку
У бота нет права can_restrict_members Реакция вызовет ошибку
Публичная супергруппа can_change_info и can_pin_messages не применяются
Изменение разрешений Применяется мгновенно ко всем участникам (кроме администраторов)

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

Реакция Назначение
RestrictChatMember Ограничить конкретного участника
PromoteChatMember Назначить администратора
GetChat Получить текущие разрешения

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

Раздел Описание
Обработчики системных сообщений Отслеживание изменения разрешений
Чаты/Каналы в админке Управление чатами через интерфейс

🔗 Быстрая навигация

  • Вверх
  • Параметры
  • Требуемые права
  • Значения по умолчанию
  • Примеры
  • Особенности

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

setChatPermissions — Telegram Bot API

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