Изначально Telegram был обычным мессенджером для базовой отправки сообщений. Чуть позже он начал обрастать новыми функциями. Многим Телега начала заменять другие социальные сети и даже самые разные сервисы интернета.
Чем полезен Telegram
На сегодняшний день, Телеграм — это огромный интернет-комбайн, где можно:
- Вести переписки, как в открытых чатах, так и в приватных (статья о секретном чате)
- Читать новости или потреблять другой контент с помощью каналов
- Загружать и скачивать файлы, тем более недавно появился менеджер загрузок
- Совершать купле-продажу разных типов товаров (даже писали об этом вот тут)
- Слушать музыку
Практически во всех вышеперечисленных случаях помогают именно боты. Например, для прослушивания музыки помогает бот, который переносит музыку из плейлистов ВКонтакте и загружает в свой канал. А при продаже товаров запускается бот, с помощью которого можно листать список товаров, класть их в корзину и оттуда оформлять покупку.
Создаём Telegram-бота с нуля на Python. Урок #1. Echo-bot.
Без помощи ботов это было бы сделать очень затруднительно. Если проще, то боты в Telegram автоматизируют какое-либо действие.
Впрочем, ранее мы уже писали о популярных ботах в Телеграме вот здесь.
Создание бота в Telegram: пошаговая инструкция
Нажимаем «Запустить», и в ответном сообщении сразу присылается меню. Оно на английском, но ничего сложного нет.
Выбираем /newbot, далее в сообщении пишем название своего нового бота.
Далее указываем username бота, по которому его можно будет найти, обязательно чтобы юзернейм заканчивался на «bot».
Наше рабочее название будет «GTOnidzuka_bot», далее мы его переименуем. Если юзернейм занят, то выбираем другой. Также BotFather присылает уникальный ключ, подобие пароля от бота, его никому нельзя показывать.
После того выбора имени нашего бота можно найти в поиске Телеграм или зайти на него по ссылке.
Теперь нам доступно редактирование бота. С помощью команд можно изменить аватарку, общее название, описания и т.д. Также в боковую кнопку «Меню» можно зашить ссылку на сайт или социальную сеть.
Основные команды в BotFather:
- /setname — изменить имя бота
- /setdescription — изменить описание бота
- /setuserpic — изменить аватарку бота
- /setcommands — задать команды для бота
- /deletebot — удалить бота
Наш бот создан и отображается в поиске, но пока еще ничего не умеет.
Больше статей на схожую тематику:
- Посевы ВКонтакте: полный гайд для запуска
- 10 советов, как написать пост в блоге, чтобы его комментировали
- Успеть за 24 часа: как работают сторис ВКонтакте
С помощью уникального токена и юзернейма бота можно подключить к различным сервисам и платформам.
Разработка Telegram Bot на Python. (1. Создание эхо-бота)
Для нашей компании мы попробуем подключить бота через Manybot, он практически единственный позволяет пользоваться ботом для бизнеса бесплатно.
Для начала переходим на официальный сайт и пролистываем вниз страницы, где есть кнопка со ссылкой в Телеграм.
Итак, попадаем в Телегу к Manybot и там имеется русский интерфейс, что очень радует.
Тут нам и пригодится наш ранее скопированный ключ. Вставляем его в строку и отправляем. Далее нужно написать пару слов о том, что будет делать наш бот. У нас будет простой инфобот. Так и запишем.
Для теста мы создали новый канал. Но если есть уже хороший раскрученный канал, то можно внедрить и его.
Чтобы у бота в нем была власть, он должен быть администратором этого канала. Заходим в канал, добавляем нашего бота и даем ему все разрешения на управление каналом.
Для подключения канала к боту, нужно отправить тестовое сообщение. И да, нам пришло уведомление в канале. Простейшие функции уже работают.
Теперь мы можем настроить автопостинг, отложенный постинг и создавать другие команды.
Окей, давайте создадим парочку команд:
Первая команда будет отправлять ссылку на наши услуги. Для этого заходим в «Отца ботов», печатаем /setcommands и выбираем нашего бота. Также можно воспользоваться кнопками меню, кому как удобнее.
В строке пишем название команды, оно может быть любым, главное на латинице и через тире пишем описание команды, у нас это «Услуги и цены», далее нажимаем «Сохранить».
Команда создана, но она пуста. Теперь ей нужно задать действие. Для этого переходим в наш бот, далее в «Пользовательские команды», среди них выбираем наш «bang» и жмем «Редактировать ответы команды».
Сейчас нужно напечатать сообщение к команде — это как раз и есть ответное действие на ее вызов. Ранее мы решили, что при вызове команды, ответом будет ссылка на наш сайт. Поэтому просто вставляем ссылку.
Теперь при вызове команды /bang, в ответе будет ссылка на наш сайт.
Заметили, что также есть кнопка «Добавить вопрос»? Это некая форма обратной связи, если его добавить, то при вызове команды пользователю будет задан этот вопрос.
Добавим нетривиальное сообщение. После отправки нашего вопроса, предложим два варианта ответа для выбора пользователя.
Так выглядит итоговый результат. После того как пользователь тапнет на одну из кнопок, нам придет уведомление об ответе.
А вот и новые ответы на форму:
Если пользователь тапнет на «Хочу заказать услугу», то пользователя можно найти и написать ему.
Как вариант, можно добавить вопрос, на который пользователь сам ответит и будет иметь возможность прислать свой номер телефона для связи.
Далее мы создали еще несколько команд по похожему принципу. Сделали мы это для того, чтобы добавить полноценное меню с кнопками. Ведь пользователям будет очень неудобно вручную каждый раз набирать команду.
На этот раз добавили команды для всех подразделов нашего блога. Перед этим добавив команду /blog, она будет корневой.
Для удобства и лучшего восприятия все команды заканчиваются на blog, так как если мы решим добавить команды с услугами, будет проще в них ориентироваться.
Нравится статья? Тогда смотрите наши курсы!
- Курс «SMMщик с нуля: от чайника до профи»
- Мини-курс «Как продавать в соцсетях»
- Вебинар «Контент, который продает»
Итак, у нас есть много команд, которые мы будем обрамлять в удобные кнопки меню. Но сперва «зашиваем» в команды ссылки на наши подразделы блога как это описано выше.
Для добавления кнопок жмем на «Пользовательские команды», а далее кликаем на «Настроить главное меню».
Затем нажимаем на «Добавить пункт меню». Из ранее добавленных команд выбираем доступную, задаем ей имя, которое будет отображаться и кликаем «Сохранить».
Таким образом мы добавили кнопки для всех основных команд. Также добавили кнопки социальных сетей и контактов.
Вот так теперь выглядит наш бот.
При переходе в социальные сети появляются их кнопки:
А при переходе в блог сперва появляется опрос:
Конечно, не совсем логично, новичкам сперва бы блог почитать, но от постоянных читателей нам важен фидбек.
И далее появляются его подразделы.
В целом, если публиковать статьи в том же Telegraph и добавлять их в бота, то материалы можно читать, даже не выходя из Telegram.
Если зайти с другого аккаунта, бот отображается вот так:
Наш бот подключен к тестовому каналу, через него (бота), можно отправлять сообщения пользователям. К примеру, оповещение о новой записи в блоге, например.
Для этого в главном меню бота нажимаем на «Отправить новое сообщение пользователям», печатаем наше сообщение и жмем «Отправить пост подписчикам».
Прежде чем отправить пост, можно посмотреть, как он будет выглядеть, или задать время для публикации.
Спустя пару секунд придет уведомление о новой статье в блоге.
Также мы прикрутили автопостинг с помощью RSS-ленты. Кстати, в одной из наших статей писали, что это и как ее подключить, рекомендуем прочесть здесь.
Помимо RSS, можно подключить и Youtube.
Примеры роста кликов, конверсий, заказов и прибыли:
- Привлечение лидов на курс SMM по 7 рублей
- Создание, оформление и ведение сообщества ВКонтакте для туристической компании
- Свыше 88 000 показов с ограниченным бюджетом
Так просто?
Вуаля — теперь наш совсем простой бот умеет показывать нужную информацию пользователю, хоть и за счет ссылок, а также принимать обратную связь. Конечно же, функционал этим не ограничивается и с помощью ботов можно создать нечто большее, но это уже совсем другая история.
А если вы еще не подписаны на наш канал, то советую исправить это недоразумение. 🙂 Делимся только полезными новостями из мира SEO и интернет-маркетинга.
44
0
0
0
1
Спасибо за реакцию, она бесценна! Обязательно подпишитесь на наш Telegram-канал, публикуем много интересных и актуальных материалов. Не пользуетесь Telegram, тогда познакомьтесь с Катей и подпишитесь на нашу рассылку. ×
Источник: 1ps.ru
Отправка сообщений в Telegram при помощи Python
Представьте, что вы запустили какую-то программу, на выполнение которой требуется некоторое время, и хотите вздремнуть или что-то в этом роде. Вам нужен простой скрипт, который отправит вам сообщение, когда ваша программа закончит работу.
Реализовать функцию отправки сообщения в Telegram при помощи Python довольно просто. План действий:
- Создать Telegram-бота с помощью BotFather от Telegram
- Получить идентификатор чата
- Послать сообщение Telegram с помощью Python
Создание Telegram-бота
- Откройте приложение Telegram и найдите BotFather. Это встроенный бот Telegram, который помогает создавать пользовательские боты.
- Введите /newbot , чтобы создать нового бота.
- Дайте своему боту имя и уникальный username
- Скопируйте токен вашего нового бота Telegram
Примечание: не загружайте свой токен в интернет, так как любой пользователь с вашим токеном имеет полный контроль над вашим Telegram-ботом.
Получение идентификатора чата
В Telegram каждый чат имеет ID. Нам он нужен, чтобы отправлять в наш чат сообщения.
Отправьте своему Telegram-боту любое сообщение. После этого запустите скрипт Python, чтобы найти ID вашего чата:
import requests TOKEN = «Сюда вставьте свой токен» url = f»https://api.telegram.org/bot/getUpdates» print(requests.get(url).json())
Примечание редакции Pythonist: если у вас не установлена библиотека requests , нужно сперва ее установить:
$ python -m pip install requests
Этот скрипт вызывает функцию getUpdates , которая как бы проверяет наличие новых сообщений. Мы можем найти ID нашего чата из возвращаемого JSON (на иллюстрации выделен красным цветом).
Примечание: если вы не отправите сообщение своему Telegram-боту, результаты могут быть пустыми.
Найдя идентификатор чата, скопируйте его.
Отправка сообщения Telegram с помощью Python
Скопируйте и вставьте в следующий скрипт Python токен вашего Telegram-бота и ID чата из предыдущих двух шагов. Также напишите собственное сообщение.
import requests TOKEN = «Сюда вставьте свой токен» chat_id = «Сюда вставьте ID чата» message = «Здесь напишите свое сообщение» url = f»https://api.telegram.org/bot/sendMessage?chat_id= print(requests.get(url).json()) # Эта строка отсылает сообщение
Запустите скрипт и проверьте свой Telegram!
Источник: pythonist.ru
Как сделать чтобы echo бот отправлял картинки?
В современном мире мессенджеры прочно вошли в нашу жизнь, и для многих пользователей они стали незаменимым инструментом для общения. Одним из самых популярных мессенджеров является Telegram. Он позволяет создавать ботов, которые могут автоматизировать множество процессов, связанных с общением. В данной статье мы рассмотрим, как сделать бота, который будет отправлять картинки в Telegram.
Получив токен нового бота, мы можем начать его программирование. Для этого нам нужно выбрать язык программирования и библиотеку для работы с Telegram API. В данной статье мы будем использовать язык Python и библиотеку python-telegram-bot.
Для начала нам нужно установить библиотеку. Откроем терминал и введем команду:
pip install python-telegram-bot
Теперь мы можем начать создавать нашего бота. Для этого создадим новый файл и импортируем необходимые модули:
import logging from telegram.ext import Updater, CommandHandler, MessageHandler, Filters
Теперь мы можем определить функции, которые будут обрабатывать сообщения, отправляемые боту. Для начала реализуем функцию, которая будет обрабатывать команду /start. Она будет отправлять приветственное сообщение пользователю:
def start(update, context): context.bot.send_message(chat_id=update.effective_chat.id, text=»Привет! Отправь мне картинку!»)
Теперь определим функцию, которая будет обрабатывать сообщения с картинками. Эта функция будет вызываться каждый раз, когда пользователь отправит картинку боту:
def echo(update, context): chat_id = update.message.chat_id photo_file = update.message.photo[-1].get_file() photo_file.download(‘user_photo.jpg’) context.bot.send_photo(chat_id=chat_id, photo=open(‘user_photo.jpg’, ‘rb’))
Как мы видим, эта функция извлекает отправленную пользователем картинку, сохраняет её на диск и отправляет обратно пользователю.
Теперь осталось только связать наши функции с командами. Для этого создадим функцию main, которая будет запускать нашего бота и связывать обработчики сообщений:
def main(): updater = Updater(token=’YOUR_TOKEN’, use_context=True) dispatcher = updater.dispatcher logging.basicConfig(format=’%(asctime)s — %(name)s — %(levelname)s — %(message)s’, level=logging.INFO) start_handler = CommandHandler(‘start’, start) echo_handler = MessageHandler(Filters.photo, echo) dispatcher.add_handler(start_handler) dispatcher.add_handler(echo_handler) updater.start_polling() updater.idle() if __name__ == ‘__main__’: main()
В коде выше мы определяем два обработчика: один будет вызываться при команде /start, а второй – когда пользователь отправляет фото. Оба обработчика добавляются в диспетчер, а затем мы запускаем бота в бесконечном цикле.
Теперь мы можем запустить нашего бота и проверить его работу. Когда пользователь отправляет фото боту, наш бот должен сохранять её на диск и отправлять обратно пользователю.
В заключение стоит отметить, что данная статья не рассматривает все возможные варианты работы с картинками в Telegram. В зависимости от конкретных задач, могут быть использованы и другие методы и библиотеки. Но в рамках данного примера мы можем получить представление о том, как работает отправка картинок в Telegram-ботах.
Источник: qaa-engineer.ru