Что может делать этот бот Телеграмм

В первой части мы сделали гороскоп на Python, который выдаёт нам прогноз на день по знаку зодиака. Сегодня пойдём дальше: теперь этот же генератор гороскопов будет встроен в Телеграм в виде бота.

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

Как всё будет работать

В этом проекте три звена: наш компьютер с Python, сервер Телеграма и Телеграм-клиент.

На компьютере работает интерпретатор Python, а внутри интерпретатора крутится наша программа на Python. Она отвечает за весь контент: в неё заложены все шаблоны текста, вся логика, всё поведение.

Внутри программы на Python работает библиотека, которая отвечает за общение с сервером Телеграма. В библиотеку мы вшили секретный ключ, чтобы сервер Телеграма понимал, что наша программа связана с определённым ботом.

Когда клиент с Телеграмом запрашивает у бота гороскоп, запрос приходит на сервер, а сервер отправляет его на наш компьютер. Запрос обрабатывается программой на Python, ответ идёт на сервер Телеграма, сервер отдаёт ответ клиенту. Изи:

Телеграм-бот на Python

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

Что будем делать

Если записать пошагово наш план, то он будет выглядеть так:

  1. Регистрируем бота в Телеграме.
  2. Устанавливаем Python-библиотеку для работы с Телеграмом.
  3. Добавляем библиотеку в программу с гороскопом и учим программу реагировать на сообщения в чате.
  4. Пишем там же код, который покажет кнопки для выбора знаков зодиака.
  5. Сделаем так, чтобы по кнопкам появлялся гороскоп для этого знака.

Теперь по очереди разберём каждый пункт.

1. Регистрация нового бота

Нажимаем Start и пишем команду /newbot. Нас по очереди спросят про название бота и его никнейм (мы придумали только с третьей попытки, потому что остальные были заняты):

2. Установка библиотеки

Есть два основных способа работать с телеграмом в Python: через библиотеку telebot и с помощью Webhook. Мы будем использовать библиотеку — так проще и быстрее.

Чтобы её установить, запускаем командную строку от имени администратора (если у вас Windows) и пишем команду pip install pytelegrambotapi

Подключаем библиотеку и получаем сообщения

Чтобы программа на Python умела управлять Телеграм-ботами, нужно в самое начало кода добавить строки:

Телеграм Бот 2023. Как Создать Телеграм Бота Правильно Чтобы у Вас его не Увели

import telebot;
bot = telebot.TeleBot(‘токен’);
Программа-гороскоп

# Подключаем модуль случайных чисел import random # Заготовка для первого предложения first = [«Сегодня — идеальный день для новых начинаний.»,»Оптимальный день для того, чтобы решиться на смелый поступок!»,»Будьте осторожны, сегодня звёзды могут повлиять на ваше финансовое состояние.»,»Лучшее время для того, чтобы начать новые отношения или разобраться со старыми.»,»Плодотворный день для того, чтобы разобраться с накопившимися делами.»] second = [«Но помните, что даже в этом случае нужно не забывать про»,»Если поедете за город, заранее подумайте про»,»Те, кто сегодня нацелен выполнить множество дел, должны помнить про»,»Если у вас упадок сил, обратите внимание на»,»Помните, что мысли материальны, а значит вам в течение дня нужно постоянно думать про»] second_add = [«отношения с друзьями и близкими.»,»работу и деловые вопросы, которые могут так некстати помешать планам.»,»себя и своё здоровье, иначе к вечеру возможен полный раздрай.»,»бытовые вопросы — особенно те, которые вы не доделали вчера.»,»отдых, чтобы не превратить себя в загнанную лошадь в конце месяца.»] third = [«Злые языки могут говорить вам обратное, но сегодня их слушать не нужно.»,»Знайте, что успех благоволит только настойчивым, поэтому посвятите этот день воспитанию духа.»,»Даже если вы не сможете уменьшить влияние ретроградного Меркурия, то хотя бы доведите дела до конца.»,»Не нужно бояться одиноких встреч — сегодня то самое время, когда они значат многое.»,»Если встретите незнакомца на пути — проявите участие, и тогда эта встреча посулит вам приятные хлопоты.»] # выводим знаки зодиака print(«1 — Овен») print(«2 — Телец») print(«3 — Близнецы») print(«4 — Рак») print(«5 — Лев») print(«6 — Дева») print(«7 — Весы») print(«8 — Скорпион») print(«9 — Стрелец») print(«10 — Козерог») print(«11 — Водолей») print(«12 — Рыбы») # Спрашиваем у пользователя про его знак zodiac = int(input(«Введите число с номером знака зодиака: «.format(blue=»33[96m», endcolor=»33[0m»))) # Если число введено верно — выдаём гороскоп if 0 < zodiac < 13: print(random.choice(first), random.choice(second), random.choice(second_add), random.choice(third)) else: print(«Вы ошиблись с числом, запустите программу ещё раз»)

Еще по теме:  Как сделать камеру в Телеграмме лучше

Теперь научим бота реагировать на слово «Привет». Для этого добавим после строчек с импортом новый метод и сразу пропишем в нём реакцию на нужное слово. Если не знаете, что такое метод и зачем он нужен, — читайте статью про ООП.

И последнее, что нам осталось сделать до запуска, — добавить после метода такую строчку:

Она скажет программе, чтобы она непрерывно спрашивала у бота, не пришли ли ему какие-то новые сообщения. Запускаем программу и проверяем, как работает наш бот.

Добавляем кнопки

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

Добавляем код с кнопками в раздел, который реагирует на «Привет»:

# Готовим кнопки keyboard = types.InlineKeyboardMarkup() # По очереди готовим текст и обработчик для каждого знака зодиака key_oven = types.InlineKeyboardButton(text=’Овен’, callback_data=’zodiac’) # И добавляем кнопку на экран keyboard.add(key_oven) key_telec = types.InlineKeyboardButton(text=’Телец’, callback_data=’zodiac’) keyboard.add(key_telec) key_bliznecy = types.InlineKeyboardButton(text=’Близнецы’, callback_data=’zodiac’) keyboard.add(key_bliznecy) key_rak = types.InlineKeyboardButton(text=’Рак’, callback_data=’zodiac’) keyboard.add(key_rak) key_lev = types.InlineKeyboardButton(text=’Лев’, callback_data=’zodiac’) keyboard.add(key_lev) key_deva = types.InlineKeyboardButton(text=’Дева’, callback_data=’zodiac’) keyboard.add(key_deva) key_vesy = types.InlineKeyboardButton(text=’Весы’, callback_data=’zodiac’) keyboard.add(key_vesy) key_scorpion = types.InlineKeyboardButton(text=’Скорпион’, callback_data=’zodiac’) keyboard.add(key_scorpion) key_strelec = types.InlineKeyboardButton(text=’Стрелец’, callback_data=’zodiac’) keyboard.add(key_strelec) key_kozerog = types.InlineKeyboardButton(text=’Козерог’, callback_data=’zodiac’) keyboard.add(key_kozerog) key_vodoley = types.InlineKeyboardButton(text=’Водолей’, callback_data=’zodiac’) keyboard.add(key_vodoley) key_ryby = types.InlineKeyboardButton(text=’Рыбы’, callback_data=’zodiac’) keyboard.add(key_ryby) # Показываем все кнопки сразу и пишем сообщение о выборе bot.send_message(message.from_user.id, text=’Выбери свой знак зодиака’, reply_markup=keyboard)

Добавляем обработчик кнопок

Скорее всего, вы заметили, что в каждой кнопке у нас написано callback_data=’zodiac’ . Это значит, что при нажатии на любую кнопку у нас будет вызываться один и тот же метод, который отвечает за гороскоп. Если вы хотите сделать честный гороскоп, придётся в каждой кнопке прописать своё название обработчика, а потом задать его поведение, тоже для каждой кнопки.

Давайте сделаем обработчик кнопок, который будет реагировать на ‘zodiac’ и выдавать случайный текст, как в исходной программе. Для этого добавим новый метод в программу:

Убираем лишнее

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

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

Что дальше

Впереди — безграничные возможности:

  • можно сделать индивидуальный гороскоп для каждого знака;
  • научить бота новым командам;
  • присылать свежий гороскоп каждое утро;
  • наладить непрерывную работу на веб-сервере.

Напишите в комментариях, что бы вы хотели от такого бота? Что должен уметь идеальный бот с гороскопом?

Источник: thecode.media

25 полезных ботов для Telegram на все случаи жизни

Favorite

25 полезных ботов для Telegram на все случаи жизни

Веб-боты изменят Telegram. Обзор новой функции

Telegram крут, я его обожаю. В середине апреля мы увидели анонс нового обновления — веб-аппы внутри мессенджера. Что это такое, кому надо и насколько их сложно делать?

Мои друзья, которые регулярно тестируют новинки собрали статью про веб-ботов в Telegram, передаю им слово.

Как новое обновление изменит маркетинг в Telegram?

Привет, на связи команда SMIT.Studio. Мы — студия интерактивного маркетинга. Вот уже 5 лет мы делаем для крупнейших российских и международных брендов спецпроекты с использованием современных диджитал-технологий. Один из самых любимых инструментов у нас — чат-боты. Именно они получили революционные возможности в последнем обновлении Telegram.

Еще по теме:  Значение Смайликоа в Телеграме

Почему этот апдейт так важен, и как он изменит правила игры, — читайте в нашей стать.

Когда боты только появились, они уже умели многое, но почти все сделанные через них решения оставляли ощущение некоторой «костыльности». Кажется, сейчас времена тех самых «костылей» навсегда прошли, и теперь возможности чат-ботов стали практически безграничны. Ведь у разработчиков появилась возможность создавать их с использованием JavaScript.

Поддержка JavaScript дает Telegram возможность открывать на своей платформе сайты и мини-приложения. Это превращает Telegram в «суперплатформу», наподобие китайского WeChat.

Чат-боты теперь смогут иметь полноценный графический интерфейс. А это мощно упрощает пользовательский опыт. И позволяет делать ботов более продающими и эмоциональными.

Как это выглядит сейчас:

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

Чтобы интерфейс выглядел более нативно, команда Telegram добавила возможность ботам адаптироваться под стиль системы, который стоит на устройстве (темная/светлая).

Как это применить для конкретных сегментов бизнеса?

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

1. Ecommerce

Если вы продвигаете продвигаете интернет-магазин или любой ecom-сервис, вы можете внедрить в него полноценную витрину:

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

2. Сфера Услуг

В случае продвижения услуг — можно реализовать виджет с отзывами:

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

3. FMCG

Если говорить про продвижение FMCG-товаров, можно вспомнить классическую чековую механику, которая теперь легко встраивается в мессенджер:

С WebApp можно будет отказаться от накопительных карт и акционных стикеров, которые нужно собирать покупателям, — все это можно будет собрать внутри одного приложения на базе Telegram.

Все уведомления о скидках, акциях и новых поступлениях можно будет реализовывать там же. То есть WebApp является дополнением к привычным ботам и работает совместно с ними.

  1. Необычные возможности
  • Огромные возможности открылись для всевозможных механик геймификации. На этом площадка сделала отдельный фокус — теперь можно запустить конкурс «колесо фортуны» или устроить между пользователями творческое соревнование. Например, проекты в формате квиза теперь можно интерактивно подать внутри мессенджера:
  • Наша команда уже начала экспериментировать с новыми возможностями и выяснила, что теперь в Telegram можно внедрить даже AR-маску.
  • А вот здесь нам удалось перенести игру Ferma в мессенджер и подключить монетизацию.

Реализация WebApp-ботов сложнее разработки стандартных сайтов из-за ограничения консоли в API Telegram. Из-за этого и сжатой технической документации доработка проекта и выявление ошибок происходит пока методом перебора. Поэтому кост на разработку стоит закладывать в 1,5 — 2,5 раза больше по сравнению с web-сайтом.

Для создания бота потребуется команда из frontend-разработчика на JS, backend-разработчика и дизайнера, который разработает интерфейс. Проджект как правило берет на себя проработку пути пользователя, технического задания и контроль реализации проекта. В случае масштабных проектов команду приходится расширять для обеспечения скорости и качества работы.

Что по аналитике?

Новые чат-боты в Телеграм открывают и возможности для аналитики, которые ранее были немыслимы:

  • Как минимум, мы видим IP-адрес пользователя. Если получится сопоставить IP-адрес от бота с данными, собранными на других сайтах, можно составить агрегированный «портрет пользователя».
  • В играх есть возможность сохранять прогресс, благодаря передаче user ID.
  • Можно подключить пиксель VK/FB и настраивать ретаргет по зашедшим в бота пользователям. Работает без ограничений, как и на web-сайте или приложении.
  • Для аналитики поведения внутри WebApps есть возможность добавить необходимые счетчики. Например, Яндекс.Метрику. Можно собирать источники трафика, глубину просмотра, время на сайте, типы устройств, анализировать поведение посетителей на вебвизоре, выставлять цели и события и даже анализировать конверсии. В общем, вся привычная нам аналитика теперь доступна в WebApps.
Еще по теме:  Телеграмм бот для анонимного просмотра историй инстаграмм

Что всё это значит и куда дует ветер?

Масштабному обновлению предшествовало заявление Павла Дурова, в котором он призывает бороться с монополией таких техно-гигантов как Apple и Google на распространение программного обеспечения. К чему это приведет?

К тому, что Telegram может стать мега-приложением, как китайский WeChat и его менее успешные аналоги — японский Line и корейский Kakaotalk.

Сейчас китайский WeChat может практически полностью заменить «большой» интернет для жителя Китая. Им пользуются даже государственные организации. Помимо привычной функции обмена сообщениями, в приложении можно заказывать еду или такси, расплачиваться через встроенный Wechat-кошелек, покупать билеты на поезда и самолёты и много другое.

На родине WeChat приложением пользуются даже премиальные бренды. Например, Givenchy для продвижения лимитированной коллекции сумок (80 штук, по 15 000 юаней за сумку) запустил проект в партнерстве с местным инфлюенсером Тао Лян с аудиторией 1,2 миллионов подписчиков. В рамках проекта в аккаунте блогера был опубликован интерактивный пост, посвященный партнерству с брендом.

Как итог, всего за 12 минут бренд распродал всю свою коллекцию и привлек к себе огромное количество внимания.

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

За счет того, что одно приложение объединило под своей крышей все остальные, Wechat и пользуется популярностью. И все это — возможное будущее Telegram.

Подстегнуть развитие приложений внутри мессенджера может случившаяся сейчас частичная блокировка App Store и Google Play. Через магазины приложений нельзя скачивать платные программы, большое количество софта удалено из-за санкций. Многие сервисы могут захотеть переехать внутрь телеграма — он может превратиться в подобие альтернативного магазина приложений.

А какие есть ограничения?

Так как WebApp — это сайт, который открывается внутри приложения, а не самостоятельная программа, мы сталкиваемся с парочкой нюансов:

  1. Первая и самая очевидная проблема — окно бота перекрывает основное окно приложения. Из-за этого мы не можем пользоваться основными функциями мессенджера, — например, звонками;
  2. Из этого вытекает вторая проблема — если необходимо настроить отправку сообщений пользователю через сам бот, то юзер сможет увидеть их только после закрытия окна браузера;
  3. Несмотря на то, что команда Telegram добавила возможность синхронизировать тему бота с системной, у нас нет стандартизированной библиотеки стилей. Это значит, что все боты будут выглядеть по-разному и отличаться от дизайна основного приложения;
  4. Нет возможности скачивать или загружать файлы через окно браузера;
  5. Звуки проигрываются только после какого-нибудь действия пользователя (например, после нажатия кнопки);

Почему нужно внедрять новый тип чат-ботов прямо сейчас?

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

Чат-боты нового типа обеспечивают:

  • Большее время контакта пользователя с продуктом
  • Эффект новизны и удивления, который приковывает внимание к товару/услуге
  • Увеличение времени контакта с пользователем (ему хочется пощупать новую «фишку»)
  • Оцифровку и большую прозрачность поведения пользователя внутри WebApp.

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

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

Ответьте себе на вопрос — какой функционал вашего сайта или приложения заиграет новыми красками при переносе в WebApp-бота. Или обратитесь к нам за консультацией, а мы поможем вам придумать, как применить новые возможности Telegram для продвижения вашего продукта.

Хочешь больше классных исследований
и статей?
Подпишись на мои соцсети:

Уникальная платформа для подкастеров и рекламодателей — mave
— Бесплатный и безлимитный хостинг для подкастов с продвинутой аналитикой.
— Крупнейшая в СНГ база подкастов для рекламодателей с риалтайм статистикой

Источник: dnative.ru

Рейтинг
( Пока оценок нет )
Загрузка ...