Создание бота для Телеграм, который проверяет подписку на ваш Канал

Все дальнейшие действия я рекомендую делать с компьютера. Так удобнее.
Итак, хватит прелюдий, за работу!
Шаг 1: Регистрация в сервисе
Мы будем пользоваться сервисом LeadConverter . У него есть бесплатный тариф, которым мы и воспользуемся. Переходим в сервис и регистрируем аккаунт.
Шаг 2: Создание нового бота через BotFather
Идем в Telegram в бот BotFather и запускаем его, если раньше вы это не делали. Далее выбираем команду create a new bot (или вводим в чат /newbot).
Далее вводим название вашего бота на русском. Я назвал бота “Бот канала Дмитрия Языкова”. На втором шаге надо ввести логин бота на латинице без пробелов, заканчиваться имя должно на _bot. У меня это yazykov_subscribe_bot. Логин бота должен быть уникальным. Как только вы все сделаете правильно, BotFather пришлет вам сообщение с уникальным токеном вашего нового бота. Он нам понадобится позже.

Рекомендую сразу заполнить описание бота. Для этого выбираем команду /mybots. Далее находим там вашего нового бота и нажимаем на него. Затем нажимаем Edit Bot. По очереди заполняем все поля, разве что Description Picture можно оставить пустым.
Подсказка по полям:
- Name – имя бота на русском. Оно отображается в профиле.
- About – описание бота в профиле.
- Description – та информация, которая выводится как приветствие перед запуском бота.
- Description picture – картинка, которая выводится как приветствие перед запуском бота.
- Botpic – аватар бота, который будет везде отображаться.
Важно! Надо добавить ваш новый бот в администраторы канала, подписку на который будем проверять. Для этого переходим в канал – Изменить – Администраторы. Нажимаем добавить администратора и находим бота по его логину, а затем даем права на все, кроме выбора администраторов.

Шаг 3: Создание бота в конструкторе
Возвращаемся в личный кабинет сервиса LeadConverter и создаем нового бота. Название можно выбрать любое, я назвал своего “Проверка подписки на канал”. Нажимаем на кнопку редактировать.
Нас перекинет на страницу редактирования сценария бота, в котором будет два стандартных блока.

Первый блок (сиреневый? фиолетовый? бордовый?) оставляем как есть. На второй блок нажимаем, должно появится окно редактирования. В нем выбираем действие “Сообщение” и вводим текст первого сообщения. Например:
Привет!
Я дарю чеклист за подписку на канал!
Подпишись на https://t.me/ydmitryru и нажимай на кнопку «Подписка есть».
Должно получиться вот так.

Не спешим жать “Сохранить”. Надо прокрутить вниз и нажать на кнопку “Добавить кнопку”. Текст кнопки “Подписка есть”, тип кнопки – кнопка. Вот теперь сохраняем.
Добавляем следующий блок – “Действие”. Для этого нажимаем на кнопку с плюсиком в правом нижнем углу, а затем выбираем “Добавить действие”. Переходим в настройки блока (нажимаем на него). Далее жмем “Добавить действие” и выбираем “Отправить через вебхук”. Вставляем туда ссылку:
https://api.telegram.org/bot()/getChatMember
Вместо () надо вставить токен канала. Мы его получили на предыдущем шаге. В URL не должно остаться скобочек, проверьте себя.
В поле “Сохранить результат в” вводим return.
Дальше нажимаем “Добавить параметр”. Их нужно сделать 2.
1. Параметр chat_id. Значение – ID канала. Это не логин! Откуда его взять? Переходим в телеграм и находим там бота LeadConverterToolkitBot и запускаем его. Он мне вывел ошибку “Неизвестное действие”, но это не имеет значения. Переходим в свой телеграм-канал и пересылаем в этот бот любой пост. В ответ получим ID канала, копируем его. Минус тоже нужно скопировать, это часть ID.
2. Параметр user_id, значение >.
В итоге должно получиться вот так:

Сохраняем. Не забываем настраивать связи между блоками:

Сделать связь нужно именно между кнопкой “Подписка есть” и блоком действие.
Добавляем еще один блок действие. В этот раз выбираем дейстие “Установить переменную”. В поле “Установить переменную” выбираем “Создать новую переменную” и называем её “Подписка на Telegram-канал”. В Значение указываем >.

Добавляем связь блоков.
Следующий блок, который нужно добавить – это условие. В этот блок надо добавить целых 3 условия. Что переменная “Подписка на Telegram-канал” равно member, creator или admin.

Сохраняем и добавляем связь с предыдущим блоком.
Далее создаем 2 блока Сообщения.
В первый вписываем текст “Супер! Ты уже подписан. Отправляю материал.”. Тут же в сообщении можно прикрепить ссылку на материал или добавить файл.
Во втором пишем:
Не вижу твоей подписки
Давай ты подпишешься, а я снова проверю
Подпишись на канал https://t.me/ydmitryru и нажимай на кнопку «Подписка есть»
И добавляем кнопку “Подписка есть”.
Настраиваем связи как на скрине
От зеленого выхода блока условия к текстовому сообщению с материалом. От красного – к сообщению с кнопкой. От кнопки текстового блока к первому блоку действия.
Шаг 4: Тестирование и запуск
В правом верхнем углу есть кнопка “Тестировать”. Выбираем “Telegram”. Привязываем свой личный аккаунт для теста и проходим всю цепочку. Т.к. вы админ в своем канале, вам бот вышлет материал. А как проверить сценарий без подписки?
Возвращаемся на страницу со списком ботов (кнопка-гамбурер в левом верхнем углу, далее “Боты”) и включаем активность бота.

Тут же находим кнопку “Ссылка на бота”, копируем ссылку на запуск бота и отправляем другу на тест.
Протестировали? Ну все, значит бот готов. Можно лить трафик 🙂
Бот для проверки подписки на канал или группу
Бывает необходимо предоставить пользователю функционал бота после подписки на канал или группу в Telegram. Вот небольшой гайд как это сделать.
Проверка подписан ли пользователь на канал или группу производится с помощью запроса к Telegram API методом getChatMember. Для этого в конструкторе ботов Botmother предусмотрен такой сценарий.
1. Создадим экран запроса с компонентом «Запрос», метод Post.
2. Пропишем URL запроса:
где «ТОКЕН» — токен вашего бота в Телеграм (получен от BotFather).
3. В настройках компонента добавим тело запроса:
где id канала/группы — идентификатор канала/группы, на который проверяется подписка,
user_id — id пользователя, у которого проверяется подписка. Можно оставить как есть.
4. Выберем «Экран, который выпролнится при удачном выполнении запроса» — следующий шаг по сценарию (п. 5).
5. Добавим экран с компонентом «Развилка», чтобы распределять по разным сценариям пользователей в зависимости от того, подписан юзер или нет, или имеет другой статус, например, заблокирован.
Статус пользователя сообщит Телеграм, ответ попадет в переменные пользователя. Эти переменные можно посмотреть в разделе «Состояния пользователей».
Ответы от Телеграм приходят такие:
member — пользователь является подписчиком;
left — пользователь не подписан;
kicked — пользователь заблокирован;
administrator — админ;
creator — создатель.
В боте ответ попадет в переменную last_request. result. status, значит ее значение мы и проверим в Развилке.
left — не подписан
member — подписан
Пишем last_request. result. status в «Имя переменной, откуда развилка возьмет значение».
6. Добавляем Цели развилки (кнопка «Добавить цель» в настройках Развилки), т. е. куда перейдет пользователь в зависимости от его статуса, подписан или нет.
В целом схема экранов может быть такой.
7. И назначаем бота админом канала или группы.
Теперь после старта бот будет проверять, является пользователь подписчиком или нет. Если нет, то предложить подписаться на канал или вступить в группу. Можно включить такую проверку на любом этапе пользования ботом, например, после триала или для получения расширенного функционала.
Как анализировать аудиторию в Telegram-каналах
В 2021 году ежедневное число пользователей мессенджера Telegram достигло отметки в 12 млн. И это только российских пользователей. С помощью канала в Телеграме можно быстро делиться свежими новостями, приводить трафик на сайт и зарабатывать, публикуя партнёрские ссылки прямо в канале. В статье расскажем, как понять, что аудитория канала живая, и как узнать о ней хотя бы немного информации.

поделиться
Зачем анализировать аудиторию Telegram-канала
- Владельцам канала
Чтобы продумать стратегию продвижения, нужно знать аудиторию, с которой вы работаете. Поэтому важно не только следить за количеством подписок на канал, но и попытаться узнать, кто именно ваши подписчики: пол, возраст, увлечения. - Рекламодателям
Перед тем как разместить платную рекламу в Telegram-канале, нужно проанализировать активность аудитории, понять, подходит ли им продукт, услуга или сервис, который вы собираетесь рекламировать.
Критерии для анализа аудитории Telegram-канала
Перечислим основные критерии анализа аудитории.
Динамика подписчиков
Отлично, когда у канала большое число подписчиков, но для анализа важна ещё и динамика.
Если у канала наблюдается стабильный рост количества подписчиков — нет поводов для беспокойства. А вот резкие скачки вверх могут свидетельствовать о рекламе или накрутках. С помощью сервисов, о которых расскажем дальше, можно увидеть, когда и в каких каналах упоминался исследуемый канал. Логично, после упоминания в крупных каналах случается органический рост подписчиков.
К сожалению, сторонние источники трафика на канал невозможно посмотреть, так что стоит вести учёт всех рекламных кампаний и следить за динамикой подписчиков после их запуска.
Резкое снижение количества подписчиков может объясняться неудачной публикацией, которая огорчила читателей, или тем, что Телеграм удалил ботов.
Если вы рекламодатель, то вы также можете посмотреть динамику подписчиков и задать вопросы владельцу канала, если вас насторожили какие-либо резкие скачки вверх или вниз.
Упоминания канала
Как и в случае с ТИЦ/ИКС для сайтов, присутствует собственный индекс цитирования для Telegram-каналов. Его можно просмотреть на сервисе Tgstat.ru. Это полезный параметр, который указывает на авторитетность и значимость канала. Индекс объединяет несколько форматов упоминаний:

- репосты информации в другие каналы;
- указание ссылки при публикации постов в других каналах;
- тематические подборки, списки и топы каналов.
Нередко для искусственного наращивания показателей авторы пытаются пристроить ссылки на свои каналы где угодно. Как правило, это посты-подборки (топы). Формируется коллаборация каналов, создающая свой фиктивный топ. Каждый из участников обязуется опубликовать этот топ в своём канале, тем самым нарастив количество упоминаний другим участникам и получив аналогичный результат для себя. Также нередко встречается партнёрство по типу бартера: «я оставлю ссылку на тебя, а ты на меня».
Если вы замечаете низкий показатель индекса цитирования у довольно крупного канала, это первый повод усомниться в его авторитетности и значимости.
Просмотры постов
Этот критерий отображает вовлечённость аудитории. У канала могут быть десятки тысяч подписчиков, но какой в этом смысл, если они даже не заглядывают в него.
Контент
Когда в сети присутствуют десятки каналов одной тематики, проектам среднего и низкого уровня бывает сложно генерировать уникальный и интересный контент самостоятельно. Да и зачем, если можно позаимствовать информацию у ведущих авторов. Копипаст в Телеграме – такая же популярная проблема, как и на других площадках.
К сожалению, нельзя проверить публикует ли канал уникальный контент или берёт его из других каналов. Сервисы антиплагиата не учитывают контент Telegram-каналов при проверке.
Владельцам каналов мы советуем использовать уникальный контент. Потому что рано или поздно истинный владелец контента может наткнуться на ваш канал, и вы окажетесь в неприятной ситуации.
Если вы рекламодатель, подготовьте тексты для своей рекламной кампании самостоятельно. Так вы будете уверены в их уникальности.
Сложности анализа аудитории Telegram-каналов
Серьёзная проблема сбора статистики по каналам — полное отсутствие официальных инструментов. На текущий момент мессенджер не реализовал сервисы, с помощью которых можно собирать и анализировать какой-либо объём информации. Для анализа приходится использовать сторонние сервисы, которых, впрочем, достаточно много.
Инструменты для аналитики Telegram-каналов
В этом разделе мы рассмотрим наиболее популярные и востребованные сервисы, позволяющие упростить задачу сбора информации по каналам.
Бот Датафан
Бот Датафан — это телеграм-бот, который поможет получить основную статистику о Телеграм-канале, а также аккаунте в Инстаграме и странице во ВКонтакте. Собирает данные по подписчикам, количеству публикаций, охватам, вовлечённости. Подходит для быстрого анализа страниц без регистрации в специальных сервисах.
Чтобы получить статистику по нужной странице, достаточно запустить бот, выбрать команду и отправить ссылку. В каком именно формате — подскажет Датафан.
Все данные предоставляются бесплатно. Также функционал Датафан доступен в сервисе для создания и управления контентом SMMplanner.
| Преимущества | Недостатки |
| Все данные предоставляются бесплатно | Ограниченное количество данных |
| Простой в управлении | Нельзя выгрузить статистику файлом |
Аналитический бот в Telegram
Бот @ChannelAnalyticsBot — очень простой базовый инструмент, который подойдёт для стартовой или дополнительной аналитики в качестве второстепенного сервиса. С его помощью можно следить только за динамикой подписчиков.
Для того чтобы подключить канал к боту, нужно всего лишь сделать из него репост.
| Преимущества | Недостатки |
| Простой в управлении бот | Ограниченный функционал |
Telegram Analytics
Как и в случае с ботом, при помощи Telegram Analytics вы можете посмотреть статистику по любому каналу, даже если не являетесь его владельцем.

Сервис позволяет отслеживать количество подписчиков и их прирост, охват одного поста и суммарный охват, показатели ERR (степень вовлеченности) и упоминания. Информация представлена удобными графиками.
| Преимущества | Недостатки |
| Все данные предоставляются бесплатно | Обновление данных происходит раз в день |
| Удобный интерфейс |
TGStat Bot
Сервис TGStat разработал и собственного бота @TGStat_Bot, с помощью которого можно быстро получать аналогичную информацию, только без показателя ERR. По запросу можно получить детальную статистику по определённым каналам за прошедший день.
Данные у сервиса и бота не отличаются, поэтому использовать можно более удобный инструмент. Как правило, для оперативного получения данных бота достаточно, а к сервису стоит обращаться при более масштабном анализе аудитории Telegram-канала.
Telemetr
Сервис был запущен в 2017 году и стремительно развивается, улучшая функционал. Для просмотра статистики по каналу нужно зарегистрироваться, это займёт несколько секунд.
Одна из особенностей Telemetr — с его помощью можно увидеть пересечение аудитории с другим каналом (вашим или любым уже проанализированным из списка «доступные для пересечения»).

Сервисом можно пользоваться бесплатно, но с некоторыми ограничениями. Платная подписка для полного доступа обойдётся в 1 500 руб/мес.
| Преимущества | Недостатки |
| Обновление данных осуществляется раз в час | Полный функционал только по подписке |
| Оповещения можно отправлять в ваш Telegram | |
| Можно посмотреть пересечение аудитории каналов |
Combot
Бот @combot позволяет получить достаточно много полезной информации. В частности, можно узнать о:
- количестве отправленных сообщений за разный период времени,
- активности пользователей,
- статистике сообщений (количество и объём),
- активности в разное время суток.

С помощью Combot можно просматривать статистику по каждому из участников, выделять наиболее активных, включая периоды пиковой активности. Однако посмотреть статистику можно только для своего канала.
| Преимущества | Недостатки |
| Детальный анализ аудитории | Сложная навигация в большом объёме данных |
| Просмотр статистики пользователей |
Опросы
Чтобы лучше узнать своих подписчиков, поговорите с ними! Вы можете задать им вопрос о возрасте, например, используя опросы.
А предлагая поставить лайк или минус новому посту, вы сможете понять, какой контент нравится подписчикам, а какой вызывает негатив.
Рекомендации по выбору сервиса
Попробуйте каждый из перечисленных сервисов и ботов, чтобы понять, чей интерфейс вам удобнее и какой из сервисов предоставляет достаточное для вас количество данных. Иногда одного сервиса недостаточно, и вам нужно будет использовать несколько. А затем объединять всю статистику в отдельном документе.
Как проверить свою подписку в телеграмме
«Проверка подписки» на канал в Телеграм
Обзор функции «Проверка подписки» в сервисе Fleep.бизнес
Проверка подписки на канал — новейшая функция в Fleep.бизнес, с помощью которой можно закрывать разделы бота от тех, кто не подписался на ваш канал/чат.
Рассмотрим примеры и разберемся в настройках этой функции.
Кому полезна эта функция
Функция пригодится админам, бизнесменам и фрилансерам. Проверку подписки вы можете использовать для перелива трафика в другие каналы, повышения охватов, привлечения клиентов на ваши площадки, продажи инфопродуктов и для многих других бизнес-задач.
Примеры использования
1. Скрывать продолжение контента или материалы без цензуры.
2. Проводить конкурсы среди всех пользователей бота, скрывая условия конкурса в закрытом разделе (через выгрузку базы)
3. Раздавать промокоды и привилегии только тем, кто подписался на канал.
4. Рассылка особого контента. Для СМИ это может быть подборка популярных постов за неделю. Для каналов с вакансиями — подборка лучших вакансий. Для скидочных проектов — особые купоны и промокоды. И так далее.
5. Собранную в боте базу вы можете использовать для продажи ваших инфопродуктов (курсы, обучения, марафоны).
6. Собранную в боте базу вы можете использовать для продажи услуг и товаров.
Мы лишь привели основные способы использования функции Проверки подписки, однако вариантов применения намного больше.
Пример: в этом боте промокоды доступны только подписчикам канала https://t.me/FleepSupportBot
Как настроить Проверку подписки
Открыв раздел «Проверка подписки» вы увидите две опции:
1. Настройка Формы — форма с просьбой подписаться на каналы/чаты.
2. Закрытые разделы — настроить, какие именно разделы в боте вы хотите закрыть.

Настройка формы
В первую очередь вам нужно настроить форму, которую увидит пользователь (скриншот ниже).
Уведомление о подписке — это сообщение с просьбой о подписке, которое увидит пользователь.
Кнопка подтверждения подписки — тут нужно будет задать имя для кнопки, на которую нажмет пользователь после подписки.
Каналы 1/2 — сюда добавляются каналы, на которые вы хотите вести пользователей.
Посмотреть форму — бот покажет вам текущий вид вашей формы.