Часто пользователи нажимают кнопку старта, забирают файл и сразу отписываются от канала. Чтобы этого не происходило, в сценарий бота добавляют проверку статуса участника. Наблюдаемый симптом прост: материалы уходят всем подряд без разбора, хотя задумка была в росте аудитории канала.
Многие ошибочно полагают, что бот автоматически видит подписку сразу после перехода по ссылке. На практике мессенджер не передает такие данные в фоновом режиме без специального запроса. До разработки логики полезно выполнить простой тест: назначьте бота администратором канала, соберите базовую цепочку в конструкторе и отправьте тестовый запрос с аккаунта, который еще не подписан на сообщество.
Рассмотрим два варианта организации выдачи:
- Кнопка с проверкой статуса через метод getChatMember. Бот выполняет скрипт: если статус участника равен member, файл отправляется в чат; если left, на экране появляется текст с просьбой подписаться.
- Прямая кнопка «Получить чек-лист» без каких-либо условий. В этом сценарии документ улетает в диалог при первом клике, а подписка полностью остается на совести читателя.
Допустим, эксперт запускает лид-магнит через Telegram-бота. Пользователь нажимает кнопку запуска, бот отправляет ссылку на канал и кнопку «Проверить подписку». Действие: пользователь подписывается на канал, возвращается в чат и нажимает кнопку проверки. Результат проверки 1: бот фиксирует статус member и прикрепляет файл. Результат проверки 2: бот фиксирует статус left и выводит текст ошибки без отправки документа.
Ограничения и технические нюансы
Описанный способ работает в базовых конструкторах ботов и на собственных скриптах только при одном обязательном условии: бот должен быть назначен администратором целевого канала с правом чтения информации об участниках. Если прав не хватает, метод проверки вернет ошибку, и ни один пользователь не сможет получить файл.
Проверьте права бота в настройках канала перед тем, как запускать трафик на воронку. Откройте чат с ботом с тестового аккаунта, который не подписан на целевой канал, нажмите кнопку выдачи материала и убедитесь, что файл не поступает до момента оформления подписки.
Как проверить сценарий до запуска
Пройдите всю цепочку самостоятельно с двух разных аккаунтов. Первый аккаунт имитирует честного подписчика, второй заходит в бота без подписки. Убедитесь, что сообщения об ошибках написаны понятным языком, а интерфейс не зависает при повторных нажатиях кнопки.