Кейс: как в боте позвать в канал только тех, кто ещё не подписан
Почти у каждого нашего клиента с Telegram-ботом рано или поздно появляется канал: туда идут новости, акции, контент. И почти всегда возникает одна и та же задача — рассказать про канал пользователям бота, которые о нём ещё не знают.
Самый очевидный способ — сделать рассылку в боте: «Подпишитесь на наш канал!». Проблема в том, что такая рассылка уходит всем пользователям бота, включая тех, кто на канал уже подписан. В лучшем случае это просто лишнее сообщение, в худшем — раздражение и отписки от бота: «я же уже там, зачем вы мне это пишете?».
Задача: отправить приглашение в канал только тем пользователям бота, кто на канал ещё не подписан.
Шаг 1. Подключаем бота и канал как ресурсы
Чтобы Graspil мог сопоставить аудиторию бота с аудиторией канала, оба должны быть подключены как ресурсы в одном аккаунте:
- бот — через автонастройку по токену, проксирование или API;
- канал — бот-администратор добавляется в канал, дальше Graspil сам собирает события.
Как только оба ресурса подключены, Graspil видит по каждому пользователю Telegram, есть ли он среди подписчиков канала — даже если в бот он никогда не писал.
Шаг 2. Почему «рассылка всем» не работает
Если просто открыть «Рассылки» → «Создать кампанию» и выбрать аудиторией всех пользователей бота — сообщение получат 100% базы. Отфильтровать вручную, кто уже подписан на канал, а кто нет, нечем: это два разных списка пользователей, и без специального инструмента их не сопоставить.
Часть клиентов в такой ситуации просто мирится с лишними отправками, часть — выгружает пользователей руками и сравнивает списки в Excel. Оба варианта либо портят метрики рассылки, либо отнимают время каждый раз, когда нужна новая волна приглашений.
Шаг 3. Собираем аудиторию: кросс-ресурсный фильтр «Нет в ресурсе»
В конструкторе аудитории рассылки в Graspil есть кросс-ресурсный фильтр — он умеет напрямую сопоставлять аудитории разных подключённых ресурсов между собой:
- Нажимаем «Добавить кросс-ресурсный фильтр».
- Выбираем режим «Нет в ресурсе».
- Указываем нужный ресурс — канал.
Получаем готовую аудиторию: все пользователи бота, которые не состоят в канале. Никаких событий собирать и вычитать вручную не нужно — фильтр сам сопоставляет два ресурса и отдаёт нужное пересечение.
При желании к этому же фильтру можно добавить обычные условия — по языку, дате регистрации, кастомным полям пользователя — и сузить аудиторию ещё точнее.
Результат
Рассылка уходит только той части базы, которой она реально полезна: пользователям, которые ещё не видели канал. Это сразу даёт три вещи:
- Выше отклик — сообщение релевантно 100% получателей, а не части из них.
- Меньше отписок и жалоб — никто не получает приглашение туда, где он уже есть.
- Кампанию можно повторять — как только в боте появляются новые пользователи, которые ещё не в канале, тот же конструктор аудитории соберёт их заново без ручной выгрузки списков.
Такую аудиторию можно использовать не только для разовой рассылки, но и обернуть в автоматизацию: например, раз в неделю отправлять новым пользователям бота, которые за это время так и не подписались на канал, отдельное напоминание.
Итог
Бот и канал в Graspil — это два ресурса одной системы, поэтому их аудитории можно комбинировать в пару кликов: включать, исключать, пересекать. Не нужно ничего выгружать и сверять вручную — конструктор аудитории рассылки делает это сам.
Если у вас похожая задача — сегментировать пользователей между несколькими ресурсами (бот, канал, группа) для точечных рассылок — пишите нам, поможем настроить.

