EnotPRO Logo EnotPRO

DeclineChatJoinRequest

DeclineChatJoinRequest — отклоняет заявку пользователя на вступление в чат/канал.

📝 Назначение

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

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

  • Пользователь не соответствует критериям (возраст, регион и т.д.)
  • Пользователь не указал обязательную информацию в заявке (поле bio)
  • Автоматическое отклонение спам-заявок
  • Белый список (принимаем только определённых пользователей)

💡 Совет: Для одобрения заявки используйте реакцию ApproveChatJoinRequest.

⚙️ Параметры

Параметр Тип Обязательный Описание
chat.id Integer/String ✅ Да ID чата или @username канала
user.id Integer ✅ Да ID пользователя, чью заявку нужно отклонить

📥 Получение данных из update

При получении заявки бот получает update типа chat_join_request. Необходимые данные доступны по путям:

Данные Путь в переменной Пример
ID чата ${update.chat_join_request.chat.id} -100123456789
ID пользователя ${update.chat_join_request.from.id} 987654321
Имя пользователя ${update.chat_join_request.from.first_name} Иван
Username ${update.chat_join_request.from.username} @ivan
Био пользователя ${update.chat_join_request.bio} Люблю программирование
Ссылка-приглашение ${update.chat_join_request.invite_link} https://t.me/+abc123

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

Право Описание
Администратор чата Бот должен быть администратором чата
can_invite_users Право приглашать пользователей (обязательно)

💡 Совет: Проверить права бота можно через реакцию GetChatMember для самого бота или в разделе /adm → Чаты/Каналы.

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

Пример 1: Отклонение всех заявок

Задача: Отклонить все входящие заявки (группа только по приглашениям).

Обработчик: Тип chat_join_request

Реакции:

  1. DeclineChatJoinRequest
  • chat.id: ${update.chat_join_request.chat.id}
  • user.id: ${update.chat_join_request.from.id}
  1. SendMessage → (в личку пользователю)
  • chat_id: ${update.chat_join_request.from.id}
  • Текст: Извините, вступление в группу только по приглашениям администраторов.

Пример 2: Отклонение пользователей без bio

Задача: Принимать только пользователей, заполнивших bio в Telegram.

Обработчик: Тип chat_join_request

Реакции:

  1. TriggerFolder с условием: Has${update.chat_join_request.bio}
  • (условие false — bio не заполнено)
  • Внутри: DeclineChatJoinRequest
  • Внутри: SendMessageЗаполните раздел "О себе" в Telegram и попробуйте снова.
  1. TriggerFolder с условием: (без условий, для остальных)
  • Внутри: ApproveChatJoinRequest (одобрить)

Пример 3: Отклонение спам-заявок

Задача: Отклонять заявки, содержащие ссылки в bio.

Обработчик: Тип chat_join_request

Условие: String${update.chat_join_request.bio} содержит http или t.me

Реакции:

  1. DeclineChatJoinRequest
  • chat.id: ${update.chat_join_request.chat.id}
  • user.id: ${update.chat_join_request.from.id}
  1. SendMessage → текст: Ваша заявка отклонена. Причина: недопустимое содержимое в профиле.

Пример 4: Белый список (отклонять всех, кроме указанных)

Задача: Принимать только пользователей из заранее созданного списка allowed_users.

Обработчик: Тип chat_join_request

Реакции:

  1. TriggerFolder с условием: InUserList → список allowed_users, режим ✅
  • (условие true — пользователь в белом списке)
  • Внутри: ApproveChatJoinRequest
  1. TriggerFolder с условием: NOT + InUserList → список allowed_users, режим ✅
  • Внутри: DeclineChatJoinRequest
  • Внутри: SendMessageВы не в списке приглашённых.

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

Ситуация Поведение
Заявка уже обработана Повторное отклонение может вызвать ошибку (заявка не найдена)
Пользователь отозвал заявку Реакция вызовет ошибку — проверяйте наличие заявки
Отклонение после одобрения Невозможно — пользователь уже в чате, используйте BanChatMember
Массовое отклонение По одному пользователю за раз

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

Реакция Назначение
ApproveChatJoinRequest Одобрить заявку
BanChatMember Заблокировать пользователя после вступления
GetChatMember Получить информацию об участнике

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

Раздел Описание
Обработчики «Вход/выход» Обработка событий входа/выхода
Условия Для проверки данных заявки
Списки пользователей Для белых и чёрных списков

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

  • Вверх
  • Параметры
  • Получение данных из update
  • Требуемые права
  • Примеры
  • Особенности
  • Частые ошибки

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

declineChatJoinRequest — Telegram Bot API

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