Чтобы бот сам писал в группу Telegram, нужны три вещи: бот состоит в группе, у вас есть числовой идентификатор этой группы (chat_id), и есть исполнитель, который вызывает метод sendMessage, конструктор или свой скрипт. Ниже по шагам: где взять chat_id, как режим приватности и права влияют на поведение бота, как отправить первое сообщение, встретить новых участников, включить расписание, закрепить пост и убрать служебные строки.
Три условия, без которых бот в группе молчит
Бот в группе это две разные задачи. Первая: добавить его и выдать права, об этом разделы про приватность и права ниже. Вторая, главная для этой статьи: что и когда бот пишет сам.
- Бот добавлен в группу. Сам он туда не попадёт: добавляет человек с правом приглашать участников. Если Telegram не даёт добавить бота, проверьте в BotFather команду
/setjoingroups: она включает и выключает возможность добавлять бота в группы (описание команды). - Известен идентификатор группы. У обычной группы нет публичного адреса вида @name, поэтому отправлять сообщение приходится по числовому
chat_id. - Есть, кто вызовет метод. Либо конструктор, где сценарий крутится на чужих серверах, либо ваш скрипт, который где-то запущен.
Токен бота, тот самый длинный ключ вида 123456789:AAH..., выдаёт BotFather при создании. Если бота ещё нет, начните с пошаговой настройки в BotFather, дальше всё описанное здесь будет применимо один в один.
Бот в группе пишет по расписанию, а ИИ-агент сам готовит, что написать. На бесплатном мастер-классе завтра в 12:00 МСК покажут агента в Telegram, который собирает дайджест новостей и зачитывает его голосом.
Записаться бесплатноКак узнать chat_id группы
Самый честный способ, без сторонних ботов, которым вы отдаёте доступ к чату: попросить Telegram показать входящие обновления вашего бота.
- Добавьте бота в группу.
- Напишите в группе команду с упоминанием бота, например
/start@myhelper_bot. Именно команду, а не обычный текст: с включённой приватностью обычные сообщения бот не видит. - Откройте в браузере адрес
https://api.telegram.org/bot<ТОКЕН>/getUpdates, подставив свой токен. - Найдите в ответе объект
chatи полеid. Это и есть идентификатор группы.
curl https://api.telegram.org/bot<ТОКЕН>/getUpdates
# в ответе ищем:
# "chat": {"id": -1001234567890, "title": "Моя группа", "type": "supergroup"}
Идентификатор группы отрицательный, у супергруппы он начинается с -100. Обычная группа превращается в супергруппу автоматически, когда включают часть функций (например, историю для новых участников), и при этом идентификатор меняется: Telegram присылает сообщение с полем migrate_to_chat_id (описание объекта Message). Если бот внезапно перестал писать в давно работающий чат, начните проверку именно с этого.
По теме: Как сделать, чтобы бот отправлял сообщения сам: расписание и события
Режим приватности и права: что бот видит и что может
По умолчанию все боты в группах работают в режиме приватности и получают только сообщения, явно адресованные им: команды с упоминанием бота вида /start@myhelper_bot и ответы на собственные сообщения бота. Исключение: бот со статусом администратора получает все сообщения (документация Telegram).
На отправку это не влияет: писать в группу бот может и с включённой приватностью. Приватность решает другое, что бот слышит, а значит, на что он способен реагировать.
Полный набор для бота с включённой приватностью шире двух позиций выше (описание режима):
- команды, адресованные боту по имени, вроде
/command@this_bot; - общие команды вроде
/start, если бот последним из ботов писал в эту группу; - сообщения, отправленные через бота в инлайн-режиме;
- ответы на любые сообщения, явно или неявно предназначенные боту.
Независимо от приватности боту всегда приходят все служебные сообщения чата, все личные сообщения и все сообщения из каналов, где он состоит. Поэтому реакция на вступление новых участников от этой настройки не зависит.
- Оставьте приватность включённой, если бот рассылает объявления, отвечает на команды и приветствует новых участников. Так он не читает переписку людей, и это спокойнее для группы. Текущую настройку любой участник видит в списке участников группы.
- Выключите её командой
/setprivacyв BotFather, если бот должен реагировать на обычные сообщения: ловить стоп-слова, модерировать спам, отвечать нейросетью на любую реплику. - Telegram рекомендует выключать приватность, только когда без этого не обойтись. Если бот ведёт диалог по шагам, часто хватает принудительного ответа: сообщение бота с параметром
force_replyоткрывает человеку окно ответа, и его реплика доходит до бота даже при включённой приватности (описание ForceReply). - После переключения приватности бота нужно удалить из группы и добавить заново, иначе изменение не применится (там же, в документации Telegram).
Отправлять сообщения бот может и без прав администратора; права открывают действия над чатом. Отмечайте только то, что бот реально делает (права администратора в Bot API):
can_delete_messages: удалять сообщения других участников, нужно антиспам-боту;can_restrict_members: ограничивать, банить и разбанивать участников, нужно для модерации;can_pin_messages: закреплять сообщения, например правила чата;can_invite_users: приглашать участников, принимать и отклонять заявки на вступление;can_manage_topics: создавать, переименовывать, закрывать и открывать темы, только в супергруппах.
Заведите для экспериментов отдельную тестовую группу и добавьте туда бота вторым администратором. Ошибка в шаблоне сообщения или цикл, отправляющий одно и то же, в рабочем чате выглядят гораздо хуже, чем в пустом.
Первое сообщение: метод sendMessage
Отправка это один HTTP-запрос: адрес метода, chat_id и text. Проверить можно прямо из терминала, без единой строчки программы.
curl -X POST https://api.telegram.org/bot<ТОКЕН>/sendMessage \
-d chat_id=-1001234567890 \
-d parse_mode=HTML \
-d text='<b>Планёрка в 11:00</b>%0AСсылка будет здесь же.'
Полезные параметры того же метода: parse_mode со значением HTML или MarkdownV2 включает форматирование (жирный, курсив, ссылки, моноширинный текст), disable_notification отправляет тихо, без звука, message_thread_id кладёт сообщение в конкретную тему группы-форума. Полный список параметров есть в описании sendMessage.
Тот же вызов на Python это основа любого сценария: и расписания, и приветствия, и уведомления с сайта.
import requests
TOKEN = '123456789:AAH...'
CHAT_ID = -1001234567890
def send(text):
return requests.post(
f'https://api.telegram.org/bot{TOKEN}/sendMessage',
data={'chat_id': CHAT_ID, 'text': text, 'parse_mode': 'HTML'}
)
send('<b>Бот на связи</b>')
По теме: Как сделать бота приватным в Telegram: доступ только своим 2026
Автоприветствие новых участников
Когда человек вступает в группу, боту приходит обновление: в сообщении заполнено поле new_chat_members со списком добавленных людей (объект Update). Дальше дело техники.
- Получайте обновления через
getUpdatesв цикле или через вебхук. - Проверяйте, есть ли в сообщении
new_chat_members. - Отправляйте
sendMessageс приветствием и обращением по имени из поляfirst_name. - При желании удаляйте служебную строку «X присоединился к группе», чтобы чат оставался чистым.
Для больших и активных групп надёжнее второй источник: обновление chat_member, где виден переход человека из статуса в статус. Оно приходит только если бот администратор и явно указал chat_member в списке allowed_updates при запросе обновлений, иначе Telegram его не пришлёт (там же, в описании Update).
Приветствие лучше делать коротким: одна фраза, одно правило чата и одно действие (нажать кнопку, представиться, посмотреть закреп). Длинная простыня в момент вступления почти не читается.
sendMessage отправит текст, но кто этот текст напишет? У Якова Юдина эту работу делает ИИ-агент в Telegram: ведёт контент-завод канала и каждый день готовит дайджест. Всё это показывают на бесплатном мастер-классе, досмотревшим 30 идей с промптами.
Хочу на мастер-классРасписание, закреп и уборка служебных сообщений
Как только бот начинает писать сам, появляются лимиты. В группе бот не может отправлять больше 20 сообщений в минуту, а массовая рассылка ограничена примерно 30 сообщениями в секунду (Bots FAQ). Для одной группы это много, но цикл с ошибкой упирается в потолок за секунды и получает ошибку 429.
- Расписание. В конструкторе это блок «по времени», в своём скрипте задача планировщика на сервере (в Linux это
cron). Скрипту нужна круглосуточная площадка, варианты разобраны в материале о том, как бот работает без перерывов. - Закреп. Метод
pinChatMessageработает, если бот администратор с правомcan_pin_messagesв супергруппе (документация метода). Параметрdisable_notificationзакрепит пост без оповещения всей группы. - Удаление. Метод
deleteMessageубирает сообщение, отправленное меньше 48 часов назад; администратор группы может удалить там любое сообщение, а в супергруппе для этого нужно правоcan_delete_messages. Служебные сообщения о создании супергруппы, канала или темы форума удалить нельзя (описание deleteMessage).
Отдельно стоит развести две похожие задачи. Сообщение в группу это один вызов на один chat_id. Рассылка личных сообщений подписчикам бота устроена иначе, там своя база получателей и свои ограничения, о ней есть подробный разбор про рассылку в боте.
По теме: Как сделать, чтобы бот управлял чатом Telegram
Какие задачи поручают боту в группе и какие права им нужны
Набор прав и настройка приватности зависят от задачи, поэтому определите её до сборки бота.
- Приветствие новых участников. Бот реагирует на
new_chat_members, присылает правила чата и короткий гайд. Права администратора для этого не нужны, но убрать служебную строку о вступлении в супергруппе получится только с правомcan_delete_messages. - Антиспам. Бот чистит ссылки и рекламу от новых участников. Нужны
can_delete_messagesиcan_restrict_members, а также доступ ко всем сообщениям, который даёт статус администратора. - Модерация по правилам. Предупреждения, ограничение участников за повторные нарушения, журнал нарушений. Ограничение делает метод
restrictChatMemberв супергруппе, и боту нужны права администратора (описание метода). - Ответы по базе знаний чата. Человек задаёт вопрос, бот отвечает по правилам и FAQ группы, и здесь обычно подключают нейросеть. При включённой приватности вопрос должен прийти командой или ответом на сообщение бота.
- Служебные задачи. Закреп важного, напоминания, обработка заявок на вступление (для неё нужно
can_invite_users).
Бот-собеседник, который сам решает, что ответить, уже ближе к ИИ-агенту. Чем он отличается от обычного чат-бота, рассказано простыми словами.
Конструктор или свой скрипт с ИИ
Оба пути рабочие, выбор зависит от того, насколько нестандартное поведение вам нужно.
- Конструктор без кода. Визуальный сценарий и готовые блоки «приветствие», «отправить в группу», «по расписанию»: так работает, например, SaleBot, есть и другие платформы с бесплатным стартовым тарифом. Запуск за вечер и без сервера, но вы ограничены набором блоков и платите за подписку.
- Свой скрипт. Любые условия, любые внешние источники данных, оплата только за хостинг. Взамен нужно где-то держать запущенный процесс и следить, чтобы он не падал.
Второй путь перестал требовать знания языка программирования. Опишите задачу ИИ-ассистенту, и он соберёт скрипт целиком. Удобнее всего это делать в десктопных приложениях: Claude Code от Anthropic или приложение Codex от OpenAI. Терминальные версии и расширения для редакторов есть у обоих, но начинать проще с программы с окном.
Формулировка задачи важнее выбора инструмента. Рабочий шаблон выглядит так.
Напиши бота на Python (библиотека aiogram) для группы Telegram.
Что должен делать:
1. Приветствовать нового участника по имени и удалять служебное сообщение о вступлении.
2. Каждый будний день в 10:00 по Москве отправлять в группу напоминание о планёрке.
3. По команде /pin от администратора закреплять сообщение, на которое дан ответ.
Токен и chat_id читай из переменных окружения BOT_TOKEN и CHAT_ID.
Добавь обработку ошибки 429 с повтором и файл с инструкцией по запуску.
Дальше остаётся проверить результат в тестовой группе и по одной добавить недостающие детали. Так вайбкодинг и выглядит на практике: вы формулируете поведение, а синтаксис держит на себе ассистент.
Частые вопросы
Может ли бот написать участнику группы в личку первым?
Нет. Бот не может начать переписку сам: человек должен либо написать боту, либо добавить его в группу (документация Telegram). Поэтому в приветствии обычно ставят кнопку со ссылкой на бота, и личный диалог человек открывает сам.
Бот пишет в группу, но не отвечает на сообщения людей. Почему?
Скорее всего, включён режим приватности, и обычные реплики до бота просто не доходят. Проверьте /setprivacy в BotFather, а после изменения удалите бота из группы и добавьте заново.
Нужен ли сервер, если бот только отправляет объявления?
Для разовой отправки нет: достаточно запустить скрипт с компьютера или отправить запрос из терминала. Для расписания и реакции на события нужен постоянно работающий процесс, либо конструктор, который держит его за вас.
Что делать, если Telegram вернул ошибку 429?
Это упор в лимит частоты. В ответе приходит параметр retry_after с числом секунд: нужно подождать это время и повторить отправку. В нормальном сценарии сообщения ставят в очередь и отправляют по одному, а не пачкой в цикле.
Нужно ли делать бота администратором?
Чтобы бот отправлял сообщения, приветствовал новых участников и отвечал на команды, статус администратора не требуется. Если бот удаляет сообщения, ограничивает или банит участников, закрепляет посты и принимает заявки на вступление, права администратора нужны: каждое действие привязано к своему праву из списка выше. Заодно статус администратора открывает боту все сообщения группы независимо от приватности.
Безопасно ли выключать режим приватности?
Это допустимо, но бот начнёт получать все сообщения чата, и участникам стоит об этом сказать: текущую настройку бота они и так видят в списке участников. Telegram рекомендует отключать приватность, только когда без этого не обойтись (документация). Если задача решается правами администратора или принудительным ответом, выбирайте их.
Меняется ли всё это с обновлениями Telegram?
База (sendMessage, приватность, права администратора) держится годами, меняются в основном новые возможности: последняя версия Bot API на момент публикации, 10.2, вышла 14 июля 2026 года (Bot API changelog). Старые сценарии от таких обновлений не ломаются.
Бот пишет в группу, осталось решить, кто будет писать за бота. У Якова Юдина эту работу делает ИИ-агент в Telegram: собирает новости, зачитывает дайджест голосом и расшифровывает аудио. Посмотреть на него можно завтра в 12:00 МСК на бесплатном мастер-классе.
Забронировать место