Как создать беседу в Телеграмме с ботом

Если вы хотите, чтобы ваши менеджеры не тратили время на обработку типовых вопросов от клиентов, пришло время настроить чат-бота в Telegram. Это просто. В статье рассказываем, что умеют телеграм-боты, в чем их плюсы и минусы и как сделать верного виртуального помощника. Перед тем, как создавать чат-ботов в Телеграмме, убедитесь, что этот инструмент подходит конкретно вашему бизнесу.

Что нужно знать о ботах в Telegram

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

Общие сведения

  • Ботами пользуются 58% B2B-организаций и 42% B2C-компаний.
  • 87,2% пользователей хорошо или нейтрально отзываются о своем общении с роботами.
  • 68% пользователей положительно оценивают роботов за быстроту ответов.

Преимущества чат-ботов для бизнеса

Если вы встроите робота в ваш проект, то сможете с его помощью организовать:

Как создать чат бота для бизнеса

  • Клиентскую поддержку в круглосуточном режиме.
  • Обслуживание или удержание клиентов в то время, когда операторов нет на месте — например, в нерабочие дни.
  • Первичное консультирование клиентов.
  • Рутинные клиентские коммуникации — например, ответы на часто задаваемые вопросы. Робот отвечает быстрее менеджера, что повышает вовлеченность собеседника.
  • Подбор тарифа на ваш продукт в зависимости от запроса клиента.
  • Перевод из статуса лида в статус сделки — при несложных запросах чат-бот может сам подвести клиента к покупке.
  • Обслуживание многих клиентов одновременно, что означает масштабирование продаж и бизнеса.
  • Сокращение числа некачественных коммуникаций, на которые повлиял человеческий фактор.
  • Объяснение преимуществ сложного продукта без риска упустить важные детали — робот, в отличие от живого оператора, не забудет скрипт.
  • Высвобождение времени операторов для обработки более сложных запросов.
  • Формирование аналитики и сбор данных о пользователях — бесценного материала для отдела маркетинга.

Недостатки чат-ботов

  • Решение сложных вопросов чат-ботам недоступно (пока).
  • Почти половина потребителей жалуется, что боты мешают общению с живыми операторами.

Эти недостатки подчеркивают важное правило: живых менеджеров машиной не заменить. Сотрудник, готовый «перехватить» клиента у бота, должен быть на линии. А чтобы люди были еще эффективнее, чем роботы, можно управлять их работой с помощью виртуальной АТС.

Что могут чат-боты

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

Источник: www.uiscom.ru

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

6 Апрель 2016 , Python, 454158 просмотров, How To Create a Telegram Bot Using Python

В последнее время Telegram у всех на слуху. Нужно отдать должное отделу маркетинга этого приложения, шумиху подняли на славу. Одной из основных «фишек» Telegram является его якобы защищённость — по словам Павла Дурова вся переписка между пользователями шифруется. Более того, ни одна спец.служба мира не будет иметь доступ к вашим сообщениям. Но в данной статье речь не об этом.

Сегодня хотелось бы поговорить о не менее крутой фишке в Telegram, а именно о ботах. Помимо того, что в сети уже полно информации о различного рода Telegram ботах (github бот, например), мессенджер открыл своё API для разработчиков, и теперь каждый может создать своего собственного бота с блэкджеком и плюшками.

В статье я приведу пример написания онлайн бота с использованием Python и Django фреймворка. То есть мы «запилим» полноценное веб-приложение, которое будет крутиться на удалённом хосте и принимать команды от пользователей. Весь исходный текст доступен в моём github репозитории.

Документация, описывающая процесс взаимодействия с ботами Telegram находится тут. Чтобы не изобретать велосипед, я нашел неплохую Python библиотеку, реализующую все основные функции ботов — telepot. Как я уже упоминал ранее, для того, чтобы обслуживать пользователей нашего бота мы будет разрабатывать веб-приложение, используя Django фреймворк.

Еще по теме:  Как зайти на аккаунт в Телеграмме без пароля и если не привязана Почта вход

Как создать Telegram бота?

Для начала нам необходимо зарегистрировать в Telegram нашего будущего бота. Это делается следующим образом:

  • Необходимо установить приложение Telegram на телефон или компьютер. Скачать приложение можно тут
  • Добавляем к себе в контакт-лист бота с именем BotFather
  • Запускаем процедуру «общения» с ботом нажатием кнопки Start. Далее перед нами предстанет список команд точно как на скриншоте.
  • Для того, чтобы создать нового бота необходимо выполнить команду /newbot и следовать инструкциям. Обратите внимание, что username для бота должен всегда содержать в конце слово bot. Например, DjangoBot или Django_bot.

Telegram bot

  • Для нашего бота я выбрал имя PythonPlanetBot, так как его основная функция заключается в парсинге RSS feed сайта Python Planet и выдача информации о последних постах пользователю 🙂

Python Planet бот

После создания бота, обратите внимание на строку с текстом:

Use this token to access the HTTP API:

За которой следует т.н. token по которому мы будем манипулировать нашим ботом. Помимо функции создания telegram бота, BotFather также имеет ряд других возможностей:

  • Присвоить боту описание
  • Установить аватар
  • Поменять token

и так далее. Полное описание доступных команд можно увидеть на первом скриншоте.

Приступаем к кодированию

Как я ранее уже упоминал, мы будем писать веб-приложение на Django. Но стоит отметить, что это делать необязательно. Можно обойтись и обычным Python скриптом, правда в этом случае необходимо будет периодически опрашивать Telegram на предмет новых запросов от пользователей бота (используя метод getUpdates) и увеличивая offset для получения самых последних данных без повторений. В Telegram существует два взаимоисключающих метода получения команд/сообщений для вашего бота.

  • Использование вызова API метода getUpdates
  • Установка Webhook

Установка Webhook заключается в передаче боту специального URL адреса на который будет поступать POST запрос каждый раз, когда кто-то начнёт посылать сообщения боту. Именно этот вариант мы и будем использовать для взаимодействия между ботом и его пользователем. Для того, чтобы задать URL, необходимо использовать API метод setWebhook.

Отмечу, что URL должен начинаться с https, то есть иметь защищённое SSL соединение с валидным сертификатом. Telegram разрешает использовать самоподписанный сертификат, правда для этого необходимо в методе setWebhook передавать также публичный ключ в PEM формате (ASCII base64). Либо же можно получить валидный бесплатный SSL сертификат от Let’s Encrypt.

Подробнее о getUpdates и setWebhook можно почитать соответственно здесь и тут.

Итак, вернёмся к python библиотеке для работы с Telegram — telepot. На текущий момент самой последней её версий является 6.7. Устанавливаем её в виртуальное окружение python virtualenv:

pip install telepot

Самый простой вариант взаимодействия с Telegram ботом на Python выглядит следующим образом:

import telepot token = ‘123456’ TelegramBot = telepot.Bot(token) print TelegramBot.getMe()

Переменной token присваиваем значение токена, полученного при создании бота через BotFather. В итоге после выполнения этих команд мы получим:

Поздравляю! Мы вызывали самый простой API запрос getMe, который возвращает информацию о боте: username, id, first_name.

Добавим нашего бота к себе в контакт-лист и пошлём ему первую стандартную команду /start

Telegram Bot

TelegramBot.getUpdates() [, u’message_id’: 1, u’chat’: >, u’update_id’: 649179764>]

Процесс общения с telegram ботом происходит по HTTPS; для передачи данных используется JSON. Метод getUpdates возвращает список/массив из объектов типа Update. Внутри Update находится объект Message.

Для стандартного взаимодействия с ботом нас фактически интересует именно объект Message, у которого мы считываем атрибут text, хранящий в себе текст, переданный боту и объект chat, в котором лежит информация о пользователе, инициировавшем общение с нашим Telegram ботом. Также имеется параметр update_id, который служит в качестве offset параметра при вызове метода getUpdates. То есть update_id+1 вернёт все сообщения, поступившие после последнего update_id, при этом все предыдущие сообщения будут удалены.

TelegramBot.getUpdates(649179764+1) [, u’message_id’: 13, u’chat’: >, u’update_id’: 649179765>]

На этапе написания простейшего Telegram бота нам этих вызовов достаточно. Приступим к написанию Django приложения для обслуживания наших пользователей.

Еще по теме:  Как найти нужный чат в Телеграмме

Простая функция парсинга RSS фида Planet Python выглядит вот так:

# -*- coding: utf8 -*- from xml.etree import cElementTree import requests def parse_planetpy_rss(): «»»Parses first 10 items from http://planetpython.org/rss20.xml «»» response = requests.get(‘http://planetpython.org/rss20.xml’) parsed_xml = cElementTree.fromstring(response.content) items = [] for node in parsed_xml.iter(): if node.tag == ‘item’: item = <> for item_node in list(node): if item_node.tag == ‘title’: item[‘title’] = item_node.text if item_node.tag == ‘link’: item[‘link’] = item_node.text items.append(item) return items[:10]

Здесь я использую python библиотеку requests для работы с HTTP в самом простейшем варианте без обработки ошибок. Django «вьюшка» выглядит следующим образом:

CommandReceiveView ждёт POST запрос на себя, парсит его и отвечает исходя из заданной команды. Полноценное Django приложение можно найти по этой ссылке. Стоит отметить в коде использование ещё одного API вызова — sendMessage. Этот метод отправляет сообщение заданному пользователю, используя при этом chat_id и сам текст сообщения.

Chat_id — это уникальный идентификатор чата между пользователем и ботом (его идентификатор есть в ответе на запрос getUpdates). У Telegram ботов есть одно ограничение, они не могут посылать сообщения пользователям, которые предварительно не инициировали общение с ним. По-видимому это сделано дабы избежать массового создания спам-ботов.

Я предполагаю, что вы уже клонировали мой репозиторий, настроили окружение и установили все необходимые зависимости: Django, requests, telepot. Если же вы не знаете как это сделать, то совсем скоро я напишу цикл статей о разработке веб-приложений на Python, включая разбор экосистемы: разработка, настройка, деплой. Если вам это интересно, то отпишитесь, пожалуйста, в комментариях к этой статье. Хочется получить обратную связь 🙂

Итак, веб-приложение на Django запущено. Как же начать тестировать бота? А всё очень просто — необходимо симулировать действия Telegram сервиса. Для этого нам понадобится HTTP клиент и тело запроса. В качестве HTTP клиента я часто использую Chrome плагин под названием Postman, а тело запроса мы возьмём напрямую из данных, полученных с помощью API вызова getUpdates.

После запуска runserver, URL на который необходимо посылать запрос выглядит следующим образом:

http://127.0.0.1:8000/planet/b. BOT_TOKEN/

где BOT_TOKEN — это токен нашего бота. Смотрим скриншот:

Postman REST Client

telegram-bot-postman

А давайте-ка отправим команду feed для получения списка новостей из Planet Python:

Postman и TelegramPostman и Telegram

На скриншотах видно, что бот адекватно отреагировал на нашу команду вывести список последних 10 постов.

Следующим шагом является деплой нашего Django приложения на удалённый хост и последующий вызов метода setWebhook для передачи URL на который будет посылаться POST запрос от сервиса Telegram каждый раз при поступлении команд боту от пользователей. Об этом мы поговорим в следующей заметке.

Присоединяйтесь к рассылке

Понравился контент? Пожалуйста, подпишись на рассылку.

Интересные записи:

  • Celery: начинаем правильно
  • Обзор Python 3.9
  • Введение в logging на Python
  • FastAPI, asyncio и multiprocessing
  • Почему Python?
  • Руководство по работе с HTTP в Python. Библиотека requests
  • Работа с MySQL в Python
  • Pyenv: удобный менеджер версий python
  • Django Channels: работа с WebSocket и не только
  • Что нового появилось в Django Channels?
  • Работа с PostgreSQL в Python
  • Авторизация через Telegram в Django и Python
  • Python-RQ: очередь задач на базе Redis
  • Введение в pandas: анализ данных на Python
  • Разворачиваем Django приложение в production на примере Telegram бота
  • Django, RQ и FakeRedis
  • Обзор Python 3.8
  • Итоги первой встречи Python программистов в Алматы
  • Участие в подкасте TalkPython
  • Строим Data Pipeline на Python и Luigi
  • Видео презентации ETL на Python

Источник: khashtamov.com

Команды в «Telegram»: управление ботами

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

Команды в Telegram: зачем нужны и сколько их существует

Команды в Telegram ускоряют работу с приложением.

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

Еще по теме:  Самые ужасные видео в Телеграмме

Bot «Telegram», реагируя на команду пользователя, может рассылать различную информацию, текстовую или содержащую вложения (фото, аудио, видео или другие файлы), в зависимости от направления, которое присуще конкретному роботу. Многие компании используют этот инструмент для работы с клиентами, для онлайн-консультаций или продаж, так что при помощи ботов «Telegram» можно не только получить рассылку свежих новостей, курса валют, прогноза погоды, но и заказать пиццу, суши, вызвать такси и даже купить билет по выгодной цене.

СОВЕТ. Эти роботизированные помощники существенно экономят время и облегчают жизнь людям, взяв множество рутинных обязанностей на себя. Некоторые боты имеют функцию русификации приложения, чем многие пользователи успешно пользовались до выхода обновления «Телеграмм», включающего эту опцию.

Как начать общение с ботом

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

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

Bot «Telegram» взаимодействует с пользователем посредством отправляемых ему запросов, а в некоторых случаях рассылает сообщения по заданному таймеру.

Начало работы с ботом

Как создать бота

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

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

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

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

Команды «Telegram» для управления ботами

Сосчитать число ботов, а уж тем более количество команд для них нереально, ведь они создаются каждый день и являются уникальными программами, прописанными под определённые действия, поэтому распознаваемые ими коды отличаются. Для того чтобы определить имеющийся функционал бота, в диалоге с ним введите символ «/». При начале работы командой /start или написании косой черты пользователю станет доступен набор всех возможных функций для конкретного робота, а какими они будут – на то уже воля создателя помощника. С символа «/» начинаются все «Telegram» команды, использовать его в начале кода обязательно. При этом общая длина запроса должна составлять не более 32 символов.

К примеру, список основных команд BotFather выглядит так:

  • /newbot – сотворение нового робота;
  • /setname – смена наименования;
  • /setdescription – описание функционала бота;
  • /setabouttext – немного сведений о профиле;
  • /setuserpic – установка фото аккаунта;
  • /setcommands – функции, доступные при наборе символа «/»;
  • /setjoingroups – добавление робота в сообщество;
  • /deletebot – удаление профиля.

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

  • /start – команда, с которой начинается диалог с роботом;
  • /help – помощь пользователю в работе, список возможностей чат-бота и прочая вспомогательная информация;
  • /settings – доступные настройки.

В «Телеграмме» есть возможность делиться интересными ботами со своими друзьями (кнопка Share – поделиться) или добавлять в группы, участником которых является пользователь, решивший это сделать (Add To Group). В лице роботизированного аккаунта можно приобрести отличного помощника для развития вашего бизнеса, значительно сэкономить время на поиске информации или же просто разнообразить свой досуг.

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

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