Как написать Telegram бота: практическое руководство

Спасибо каналу SMM в Telegram, который позволил обновить и улучшить эту статью.

Запрограммировать логику работы Телеграм-бота

Чтобы упростить задачу, мы написали пример такого бота. Его исходный код доступен по ссылке -telegram-bot. Он понимает команды:

  • /start с приветственным сообщением;
  • /sticker с ответом в виде стикера;
  • /getwebhook чтобы вы могли получить информацию о настройках вашего бота;
  • /setwebhook для настройки вашего бота, но об этом позже.

Пройдите следующие шаги с нашим примером бота, чтобы освоиться:

  1. Скачайте исходный код как архив («Clone or download» → «Download ZIP») и распакуйте его.
  2. Внутри должно быть:
    • «» с минимальным кодом, чтобы Python-окружение приняло содержимое папки за модуль для установки;
    • «» с описанием зависимостей;
    • «bot» — папка с исходным кодом нашего бота.
  3. Выделите все эти файлы и папки, а затем создайте из них новый ZIP-архив, тогда исходный код внутри архива не будет иметь лишних папок (как в случае с архивом, скачанным с github).
  4. Перейдите в Облачная ПлатформаФункцииСоздать функцию, подробнее.
  5. Задайте имя, например, «Bot».
  6. Загрузите ZIP-файл в качестве Исполняемого кода.
  7. Укажите Путь к файлу в архиве как «/bot/tele_».
  8. Укажите Вызываемую функцию в коде как «main».
  9. Добавьте переменную окружения «TOKEN», но пока не задавайте для неё значения, мы коснёмся этого на следующем этапе.
  10. Нажмите кнопку Сохранить и развернуть.
  11. Поставьте галочку, что нужна Публичная ссылка.

Теперь у нас есть API, реализующее логику ответов бота. Следующим этапом мы зарегистрируем его в Telegram.

Как настроить чат-бот в Telegram

Тут же после создания бота Botfather выдает вам токен, который вы можете использовать в любом сервисе для подключения и управления своим ботом.

Рассмотрим вариант создания на примере Manybot (мне он понравился больше всех).

Добавляем бота в свой Telegram и в первом меню нажимаем «Добавить нового бота»:

Высылаем в manybot наш токен, который мы получили от Botfather:

Процесс описания можно пропустить, например мне он сейчас не нужен.  Наш бот создан, теперь переходим непосредственно к настройке.

Для настройки бота важно заранее понимать, что он будет делать и представлять себе алгоритм его работы. В идеальном варианте — распишите структуру вашего чат-бота на листке или на доске. Четкий и понятный алгоритм работы избавит вас от постоянных исправлений и корректировок.

Теперь уже в нашем боте, переходим в меню «пользовательские команды» и задаем команды, при использовании которых будут происходить нужные действия.

Например, я хочу, чтобы пользователю выскакивал список наших услуг. Я задаю команду /services , после этого креплю ее под кнопку меню. В окне после отправки команду пишем сообщение, которое будет выскакивать при использовании команды и сохраняем.

Теперь нам надо завести команду под меню. Нажимаем на кнопку «добавить пункт меню», выбираем команду, для которой задаем кнопку, и вводим название пункта меню:

Теперь в нашем боте есть пункт меню. Можно добавить дополнительные пункты меню таким же образом, чтобы пользователю было удобнее. Дополнительно к чат-боту можно заняться продвижением в соцсетях.

Выводы: для создания Telegram-бота можно использовать любой сервис, который вам покажется более удобным. Главное, перед созданием задать себе вопрос — действительно ли вам нужен чат-бот? Если да — вперед!

  • #telegram
  • #чат-боты

Как добавлять кнопки в Телеграм-канале

Добавление кнопок в Telegram-каналах осуществляется через двух ботов. С помощью первого – @ControllerBot – осуществляется создание постов через браузер и из интерфейса мобильного/компьютерного приложения, добавление канала и отслеживание статистики. С помощью второго – @BotFather – создание бота для постинга. Добавление кнопок и реакцией в Telegram-каналах – дело двух минут и ниже мы познакомим вас с процессом.

Читайте также:  Удалите эти файлы и папки Windows, чтобы освободить место на диске

Создаём бота для канала: пошаговая инструкция

  1. В поиск с компьютерной или мобильной версии мессенджера пишем название бота «@ControllerBot».
  2. Добавляем его в контакты и кликаем по кнопке «Начать», если ранее не пользовались им либо «Перезапустить».
  3. Выбираем команду «/addchanel» для добавления нового канала или вводим её вручную.
  4. Кликаем по кнопке «Подключить новый бот».
  5. Переходим согласно инструкции внутри @ControllerBot в бот @BotFather для создания нового бота.
  6. Нажимаем кнопку «Начать».
  7. Среди предложенных команд нажимаем «/newbot» либо вводим её самостоятельно в поле для ввода сообщений и отправляем нажатием кнопки «Enter».
  8. Задаем имя новому боту в @BotFather, отправив ответное сообщение. Например, PostiumPost_Bot (нижнее подчеркивание перед «bot» обязательно).
  9. Сообщение о завершении создания перешлите в @ControllerBot. Нажмите для этого правую кнопку мыши на тексте сообщения и в контекстном меню выбираем пункт «Переслать сообщение», затем ищем в диалогах @BotController и направляем текст ему. Для пересылки сообщения с телефона нажимаем на сообщение и удерживаем палец до появления контекстного меню, где выбираем «Переслать».

Отлично. Половина работы успешно проделана, далее – настройка созданного бота.

Настраиваем бота

Через @ControllerBot нужно выполнить предварительную настройку созданного бота:

  1. Копируем название созданного бота.
  2. Нажимаем на вертикальное троеточие в собственном канале и в выпадающем меню нажимаем на пункт «Управление каналом».
  3. Кликаем по пункту «Администраторы» и в новом окне нужно нажать на кнопку добавления администраторов.
  4. Вставляем ранее скопированное имя созданного бота в строку поиска, выбираем его среди результатов. Подтверждаем назначение пользователя (бота) в качестве администратора канала нажатием кнопки «ОК». Он будет автоматически приглашен в канал и назначен администратором.
  5. Задаем права как на изображении ниже и сохраняем результат.
  6. Напишите сообщение на канал или перешлите в @ControllerBot любое ранее опубликованное. На смартфоне удерживайте палец на сообщении и в появившемся контекстном меню выберите «Переслать». На компьютере кликните по сообщению правой кнопкой и выберите аналогичный пункт.
  7. Настраиваем тайм-зону (часовой пояс канала), отправив название города в ответном сообщении. Например, Москва. Нажимаем кнопку «Верно», чтобы подтвердить выбор города.

Готово! Все настройки завершены.

Как сделать пост с url-кнопкой и реакциями в Telegram

Сложности позади, осталось понять логику создания красивых публикаций через нашего бота:

Готово! Пост опубликован с реакциями, ссылками на сайт в виде кнопок и изображением.

Процесс создания бота, публикации сообщений с реакциями и кнопками-ссылками со смартфонов аналогичен.

Полезные ссылки:

  • 10 конструкторов для создания чат-ботов
  • Как записать видео в кружочке для Телеграм-канала
  • Как добавить ссылку в Instagram Stories

Как создать канал в Телеграм: пошаговая инструкция

Сразу перейдем к практической части статьи — создадим канал в Телеграм. Расскажем, как это сделать — в формате пошаговой инструкции. Сначала с телефона (устройства на Андроид и Айфоны), а потом — с компьютера.

С телефона

Первый шаг: зайдите в приложение Telegram на своем смартфоне и нажмите кнопку «Создать чат».

Второй шаг: в окне «Написать сообщение» выберите опцию «Создать канал».

Третий шаг: укажите название канала — например, название компании. Далее введите небольшое описание — здесь можно указать дополнительную информацию о Telegram-канале.

Также можно загрузить аватарку — для этого нажмите на иконку фотоаппарата (слева от названия). В любом случае, выполнить это действие можно позже — уже после того, как вы создадите канал.

Чтобы продолжить нажмите «Далее».

Четвертый шаг: выберите тип канала. 

Как создать канал в Телеграм: пошаговая инструкция

На выбор доступно два варианта:

  1. Публичный. Пользователи смогут найти канал через поиск.
  2. Частный. На частный (приватный) Telegram-канал можно подписаться только по специальной ссылке.

Рекомендуем выбирать «Публичный». Не забудьте указать ссылку для канала — например,

Как создать канал в Телеграм: пошаговая инструкция

Чтобы продолжить нажмите «Далее».

Читайте также:  Лучшие беспроводные наушники по отзывам. ТОП 20

Пятый шаг: выберите людей, которых вы хотите пригласить в свой канал. В списке доступны пользователи из ваших контактов. Чтобы продолжить нажмите «Далее».

На этом процесс создания канала с телефона успешно завершен.

Как создать канал в Телеграм: пошаговая инструкция

С компьютера

Первый шаг: запустите десктопное приложение Telegram и откройте меню профиля (три параллельные линии в левом верхнем углу). Выберите функцию «Создать канал».

Второй шаг: введите название канала, загрузите аватарку и укажите описание.

Как создать канал в Телеграм: пошаговая инструкция

Третий шаг: выберите тип канал — публичный или частный. Для публичного TG-канала укажите ссылку.

Четвертый шаг: пригласите друзей в свой канал или пропустите этот шаг.

Установка и настройка

Для начала давайте скачаем сам python. Сделать это можно на официальном сайте. Не забудьте поставить галочку add to PATH во время установки! После установки python’a нам понадобится хороший редактор кода. На помощь приходит компания JetBrains со своим бесплатным PyCharm. Мы уже близко, осталось скачать библиотеку telebot. Для этого заходим в командную строку и пишем:

pip install pytelegrambotapi

1 pip install pytelegrambotapi

Если всё прошло успешно, мы можем продолжать!

Как создать канал в Телеграмме: пошаговая инструкция для чайников

Шаг 1. Определяемся зачем вам нужен канал в Телеграмме.

Создавая канал, человек должен знать, для чего он это делает. К примеру, целью может быть информирование пользователей по определенной теме (в определенной степени ликбез). Однако это не единственная возможная цель.

Шаг 2. Выбираем тему или направление канала в Телеграмм.

Главное, определиться, какой канал создать в Телеграмме, или точнее, на какую тему создать канал в Телеграмме.

Если вы правильно выбрали тематику канала, то успех вам обеспечен. Можно выкладывать приколы в формате gif, постить рецепты блюд французской кухни, но таких каналов очень много.

Выбор следует останавливать на узких темах и предварительно проводить мониторинг конкурентов с такой же тематикой каналов. Если таких не так много, и вы уверены, что ваш контент будет более качественным и интересным, то смело беритесь за дело.

Шаг 3. Придумываем название канала.

Название канала может состоять из одного или двух слов, вызывающих эмоции и ассоциации. К примеру, канал, посвященный кино, можно назвать «Кинокляча», канал про переживания – «Бывший», про журналистику – «Пьяный редактор» и т.п.

Если же вы – владелец компании, то назовите канал так же, не изобретайте велосипед. Ведь вы же с помощью канала собираетесь продвигать свой бизнес?

Шаг 4. Выбираем логотип для канала в Телеграмм.

Логотип нужен яркий и заметный. Имейте ввиду, что иконки в Телеграмме маленькие, поэтому нежелательно, чтобы логотип содержал мелкие детали. Разглядеть их пользователю будет нереально.

Разработать логотип высокого качества сможет только дизайнер.

Как и в случае с названием, владельцам компаний следует использовать их логотипы в качестве логотипов каналов.

Следующая часть имеет чисто технический характер.

Вас также может заинтересовать: Продвижение через социальные сети: разработка стратегии и основные ошибки

Настраиваем сервер

Теперь научим сер­вер пони­мать, как рабо­тать с нашей про­грам­мой. Для это­го в корне сай­та нахо­дим файл .htaccess и добав­ля­ем в него такую строчку:

AddHandler cgi-script .py

Если у вас тако­го фай­ла нет — создай­те его и не забудь­те про точ­ку в самом нача­ле названия.

Послед­нее, что оста­лось сде­лать, — настро­ить пра­ва досту­па у фай­ла с про­грам­мой. Нахо­дим её сре­ди фай­лов хостин­га и выстав­ля­ем пра­ва 755 или rwxrwxr-x:

Теперь с помо­щью Putty сно­ва под­клю­ча­ем­ся к сер­ве­ру и настра­и­ва­ем рабо­чее окру­же­ние. Это как буд­то вир­ту­аль­ная песоч­ни­ца, где мы смо­жем ста­вить нуж­ные моду­ли для Python, что­бы не мешать осталь­ным поль­зо­ва­те­лям сервера.

Всё, что мы будем делать даль­ше, отно­сит­ся к хостин­гу SpaceWeb. Если у вас дру­гой хостинг, то, воз­мож­но, часть команд вам не при­го­дит­ся и Python будет рабо­тать напря­мую. У нас так не рабо­та­ет, поэто­му дела­ем вир­ту­аль­ное окружение.

Читайте также:  Код ошибки 963 Play Market что делать и как исправить

В SSH-терминале пишем по оче­ре­ди такие коман­ды (вме­сто .thecode мож­но напи­сать назва­ние ката­ло­га, кото­рое вам по душе):

virtualenv .thecode source .thecode/bin/activate

Настраиваем сервер

Эти две коман­ды созда­дут вир­ту­аль­ное про­стран­ство для запус­ка Python-файлов.

Теперь уста­но­вим Python-модуль для рабо­ты с Телеграмом:

pip install pytelegrambotapi

Когда уста­нов­ка закон­чит­ся, пишем такую команду:

nohup python3 /home/t/thecode/osebe/public_html/cgi-bin/

/home/t/thecode/osebe/ — это наш путь к пап­ке cgi-bin, а у вас он будет дру­гим. Поме­няй­те путь на свой и запускайте.

Что­бы про­грам­ма про­дол­жа­ла рабо­тать после того, как мы закро­ем SSH-клиент, в самом нача­ле пишем коман­ду nohup.

Резуль­тат про­ек­та — бот @TheCode_Baboolya_bot.

Оформление собственной группы в Telegram

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

Разберемся подробнее, как добавить бота в группу Telegram:

  1. Для начала необходимо в поисковом окне мессенджера найти имя нужного бота. Например, @cbr_bot – робот, показывающий нынешний курс валют.
  2. Отправить запрос на приглашение в группу.
  3. Бот автоматически присоединится к вашему сообществу, если такая возможность не заблокирована создателем.

Если вам никак не удается найти робота с необходимой функциональностью, можно попробовать создать собственного робота, наделив его индивидуальными особенностями. Для этого можно использовать сервис Manybot. Manybot – это сервис для разработки вашего личного робота.

Для первого шага нужно нажать на «Старт», подтвердив начало операции. Затем подтвердить предложение о добавлении BotFather, который является родоначальником всех роботов в Telegram. В диалоговом окне введите команду «/newbot», создайте уникальное название для своего бота. После этих действий BotFather пришлет вам индивидуальный код. Его необходимо скопировать и переслать Manybot-у.

Эта операция является завершающей при создании бота. Теперь необходимо перейти к наполнению робота функциями и задачами, которые он будет выполнять.

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

Нюансы

Непринужденный стиль

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

Вести канал от своего имени

Некоторые команды, наверное, по тем же причинам, что мы писали выше, вещают «от первого лица». В Telegram это выглядит более чем уместно.

Картинки с текстом

Очень хорошо работают, особенно если они сами — предмет большого внимания (например, графики или схемы),

либо представляют оглавление ссылки, которую вы даете в подписи:

Хештеги

— не работают. Не работают в качестве тематического поиска по другим каналам, но прекрасны как инструмент навигации в канале.

Полезные примеры Телеграм-ботов

Делимся с вами списком чат-ботов в Телеграмме, которые будут вас вдохновлять на создание собственного и приносить пользу в повседневной жизни.

  1. @music – для истинных ценителей классической музыки: можно послушать и скачать любимые композиции прямо в Телеграмме.
  2. @misis_sch_bot – вот так удобно в форме чат-бота выполнено расписание МИСиС.
  3. @FastAid_bot – ну и для тех, кто внезапно оказался в экстремальной ситуации и не хочет гуглить, есть бот по оказанию первой помощи.
  4. @EcoideaBot — поможет вам правильно сортировать мусор.

Сам процесс создания чат-бота в Телеграмм может сначала показаться долгим и нудным. На самом деле это очень интересно, а результат – во много раз упрощенная работа – будет наградой за ваши старания.