Главное Авторские колонки Вакансии Образование
Выбор редакции:
3 820 42 В избр. Сохранено
Авторизуйтесь
Вход с паролем

Трудно быть ботом?

В этой статье мы рассуждаем о том, зачем стоит делать сервисы в виде ботов для Telegram. Плюсы, минусы, подводные камни. А также пара слов о нашем проекте
Мнение автора может не совпадать с мнением редакции

Количество ботов для полюбившегося многим мессенджера Telegram постоянно растёт. И популярность таких проектов тоже. В каком-то смысле это благодаря СМИ, которые раздувают шумиху по поводу ботов-пиратов, таких как @flibustamirrorbot, @sezon1, @kinok и @nnbclub_bot.Но в то же время не стоит отметать и другие факторы.

Доступность

Новому пользователю не нужно ничего скачивать/устанавливать. Не нужно переживать за то, что придётся освобождать место на устройстве. Можно не бояться, что подхватишь вирус и т.д.

Бот - это просто ещё один диалог в чате. Чтобы начать с ним работу стоит лишь перейти на страницу бота и нажать Start.

При этом пользователю не нужно проходить какую-то регистрацию, авторизацию и так далее — бот его может персонализировать по chatId или username (за исключением необходимости привязки к каким-то внешним веб-сайтам). Также, если у пользователя в профиле заполнено имя, бот тоже это видит. Очень удобное начало работы, не правда ли?

Настоящая кроссплатформенность

Наверное, только самый ленивый не знает, что у Telegram есть клиенты под все современные платформы: iOS, Android, Windows Phone, Windows, OsX, Linux. И даже есть веб-клиент, работающий прямо в браузере. При этом написаны они крайне качественно, учитывая специфику каждого окружения. Работают быстро, имеют современный интерфейс и т.д. Но для сервиса в виде бота плюс не только в этом:

Начав пользоваться ботом на одном устройстве, пользователю он будет доступен и на любом другом устройстве. Для бота совершенно нет разницы: написал ему @username в очередной раз с мобильного или с ПК — всё просто продолжает работать.

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

Юзабилити и унификация

Даже неопытный пользователь, разобравшись, как функционирует какой-либо один бот быстро разберётся и с любым другим, ведь все боты имеют единый интерфейс взаимодействия: текстовые команды и клавиатуры. Кроме того, ваш бот может поддерживать любые активности в чате, например, реагировать на картинку, файл или местоположение, которые послал пользователь. Их использование для юзера также привычно, как при обычном общении с другим человеком. И как плюс — это даёт большие возможности для внедрения различных “фишек”. При этом вы совершенно не несёте затрат по реализации данных интерфейсов. Всё уже создано — берём и пользуемся (сравните трудозатраты сами даже с несложным проектом в виде мобильных приложений).

Скорость работы и нетребовательность к ресурсам и технологиям

Скорость — это настоящая магия Telegram. Соответственно и сервис, который предоставляет бот, будет работать с такой же скоростью (конечно, если ваши программисты не перемудрили с серверной частью). Важной особенностью является и то, что для обработки запросов от бота вам подойдёт даже самый недорогой VDS за 200р. Причём такой сервер сможет нормально обслуживать даже тысячи пользователей.

Создавать серверную часть можно на любой платформе, которая позволяет принимать POST-запросы и отвечать на них: PHP, NodeJS, Java, ASP и другие.

Недостатки

Конечно, они есть. Главный из них — отсутствие центрального канала распространения. У Telegram нет какого-то фирменного “магазина ботов”. Поэтому распространять их приходится, как получится — по всему интернету. При этом трудно нацелиться именно на определённую аудиторию (чтоб запустить, к примеру, таргетированную рекламу): “пользуется Telegram и интересуется темой X”.

Да, есть магазины вроде @storebot, но о них знает очень незначительная часть пользователей.

Хотя, если если у вас уже есть своя аудитория, к которой можно обратиться напрямую через соцсети, сайт или рассылку, этот недостаток вас не коснется. b_56fcdacb2855c.jpg

У Telegram для построения бота есть шикарное API.

Оно хорошо документировано и имеет готовые библиотеки для многих ЯП. Но, к сожалению, оно развивается не так быстро, как нам бы этого хотелось.

Например, до сих пор нет возможности узнать, с кем общается пользователь выбирая результат inlineQuery (причём саппорт сообщил, что это не из соображений безопасности).

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

И раз уж зашла речь о нашем боте, стоит сказать еще пару слов о наших результатах.

Напомним, проект стартовал 13 марта на Хакатоне Яндекс.Денег.

Нами достигнута отметка в 300 пользователей с момента запуска (2,5 недели). И мы до сих пор не потратили ни копейки на рекламу.

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

И самое главное! Мы ввели новую функцию, которую заявляли в прошлом посте: защита транзакций PIN-кодом. Вы можете установить PIN-код и бот будет запрашивать его при каждой транзакции. Или можно настроить, чтобы код запрашивался только, если сумма транзакции больше N руб.

Настройка PIN-кода показана на скриншотах:

b_56fcdacbb84f0.jpg

Если коротко - введите команду /pin, и дальше бот подскажет, что нужно делать.

Ещё у нас много небольших улучшений: для любителей вводить команды теперь отображаются подсказки, полностью переписан /help и добавлен /faq, а также появилась “живая” служба поддержки (работает после прочтения faq).

Всем нашим читателям большое спасибо за комментарии и подписки! Было приятно получить такой активный отклик. Мы будем продолжать работать над проектом и делиться новостями.

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

Теперь отдельная просьба к пользователям нашего бота - протестируйте, пожалуйста, работу с пин-кодом и напишите в комментариях ваши замечания и пожелания. Ну или восторги :) Нам важно понимать, оправдала ли реализация этой новой функции ваши ожидания.

Если вы еще не видели нашего telegram-бота для мгновенного пополнения мобильных телефонов и денежных переводов - он вас ждёт тут: https://telegram.me/YandexWalletBot.

Почитать о нём подробнее можно в нашей предыдущей заметке. P.s. Не забудьте подписаться на наш блог (если ещё не успели), чтобы ничего не пропустить.

0
В избр. Сохранено
Авторизуйтесь
Вход с паролем
Комментарии
Gordon Shamway
это какая то шизофрения с ботами для телехрама. надеюсь это под воздействием рекламного бабла. надеюсь пройдет.
Ответить
Показать предыдущие комментарии
Yandex Wallet Bot
Telegram-бот для мгновенных денежных переводов
Александр Лифшиц
Это правда, с первого раза эта тема не взлетела. Мы разрабатывавали ботов с первой недели открытия пратформы и наблюдали рост и падение интереса изнутри. Сейчас могу только повториться - посмотрим, как будут развиваться события. Доказать что-то вам я не стремлюсь, мне это не нужно. Примеров никаких не приведу - я понятия не имею, есть ли они, и мне это не интересно! Для некоммерческого проекта, которым является наш бот, у нас совсем другие приоритеты. Не заработок - другие направления бизнеса нас кормят. Нам просто нравится и мы верим, вот и все!

Что вы пытаетесь мне доказать и зачем вам это?

И второй вопрос. Наш проект подтверждает что? Что без рекламного бюджета можно набрать 300 пользователей в "никому не нужный проект"? Я бы сказал, что это хорошее очень достижение.
Ответить
ADZY
Ассистент для ведения рекламных компаний
Дмитрий Кубитский
мне печально видеть, когда толковые люди тратят свои силы на разработку проектов изначально не под пользователей, а под платформу.
технологии ради технологий - это тупик.
Ответить
Yandex Wallet Bot
Telegram-бот для мгновенных денежных переводов
Miiix
Платформа взаимодействия поставщиков и магазинов
Рябов Сергей
боюсь, что пользователей Телеграмма в России значительно меньше, чем владельцев карт сбербанка и телефона, который умеет отправлять смски :) Я понимаю у вас просто некоммерческий тестовый проект, это хорошо, просто штука, которую он делает, она не нужна :)
Ответить
Yandex Wallet Bot
Telegram-бот для мгновенных денежных переводов
Александр Лифшиц
Сергей, если это не понятно было с самого начала, попробую написать максимально четко и ясно.

Это бот для тех, у кого есть 1) Яндекс.Кошелек и 2) установлен Telegram.

Нужен этот бот вот этим конкретным людям - пусть они сами решат, дайте им шанс!

Как конкурируют между собой Яндекс.Деньги и Сбербанк, как относятся пользователи Телеграма к смскам и сторонники смсок к Телеграму, почему пользователи устанавливают Телеграм или, наоборот, не устанавливают, почему несмотря на то, что у Сбербанка много клиентов, существуют другие банки и сервисы - эти вопросы, пожалуйста, не к нам :)
Ответить
Екатерина К
С одной стороны хорошо, что единый интерфейс и не надо ничего скачивать и устанавливать, с другой - ну не могу себе представить, что для того, чтобы получить мои текущие координаты, мне придется спрашивать кого-то в чате, т.е. вводить вопрос вручную "координаты?" или "переведи деньги" или еще что-то. В идее ботов мне не хватает интерактивности и визуального представления. И очень раздражает, что надо что-то писать постоянно чтобы получить какой-то результат или узнать что-либо.
Единственное, по-моему, для чего приемлемо использовать бота, а не программу - это например, чтобы сделать перевод текста, или реально початиться с кем-то. Для всего остального существуют нормальные программы или интернет.
Ответить
Показать предыдущие комментарии
Yandex Wallet Bot
Telegram-бот для мгновенных денежных переводов
Александр Лифшиц
Если говорить о компьютере, то отдельно стоит отметить, что у Telegram полная кроссплатформенность - начали чат в телефоне по дороге куда-то, потом открыли приложение на компьютере или веб-версию в браузере и продолжаете общаться, видя всю свою переписку и не прерываясь. Это очень удобно.

Возвращаясь к ботам, сделаю последнюю попытку вас затащить на нашу сторону :)

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

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

Если сравнивать бота с приложением - удобства бота может быть в том, что он ближе к пользователю. Я это где-то уже писал и буду повторять очень много раз - бот находится в списке диалогов среди ваших друзей. Для тех, кто постоянно чатится, это максимально близкое расположение сервиса. Ты переписываешься с друзьями, и не выходя из мессенджера отсылаешь боту какую-то простейшую команду, либо получаешь от него уведомление, например о пришедшем письме по почте или о выходе новой статьи на Спарке, или о том, что пицца будет доставлена через 15 минут. Даже то, что не нужно переключаться из мессенджера в смс и обратно - это уже плюс, когда идет борьба за кофморт и удобства пользователя. Что уж говорить о переключении между приложениями. Я за собой замечаю, что если во время диалога с кем-то мне нужно открыть другое приложение в телефоне, это сильно раздражает.
Ответить
Екатерина К
Вряд ли у вас получится затащить меня на свою сторону :)
Хотя бы потому, что я, как уже сказала, редко пользуюсь мессенджером на телефоне. И ситуации, когда я чатюсь с кем-то, и вдруг мне надо использовать другое приложение, весьма редки :) Но я, наверное, нетипичный пользователь, поэтому меня лучше не принимать во внимание.
Но все равно, вот я представила, набираю слэш, допустим. Набрать слэш нетрудно. Но дальше-то что? Мне показывается список всех возможных команд? Или я должна перебирать все буквы подряд, и как я догадаюсь, какая команда что делает? Например, мне лично неочевидно, что команда pin - это установка пина. Если бы была pinsetup, тогда понятно, а pin - может быть что угодно: показать пин, сменить пин, показать справку по командам, связанным с пинам. Pinchange и pindisable - понятно.
Кроме того, я почти на 100% уверена, что 90% разработчиков не будут думать о таких "мелочах", как давать вразумительные имена командам, показывать кнопки быстрого доступа и так далее.
Ответить
Yandex Wallet Bot
Telegram-бот для мгновенных денежных переводов
Александр Лифшиц
Слева на скриншоте показан фрагмент разделе "Помощь". Там видны все команды с коротким и понятным описанием.

А справа видна реакция приложения на появление "/".

Про команды - мы решили, что лучше сделать максимально короткую команду /pin для настройки нового кода. А дальше все команды "говорящие". Можно было и подлиннее первую команду, была такая мысль, но решили оставить краткую.

Что касается 90% разработчиков - ну тут я спорить и говорить за других не буду. Главное, чтобы наша команда всегда была в числе тех 10%, которые заботятся о своих пользователях :)

П.С. В процессе я заметил, что у нас про PIN-код не появились подсказки по нажатию на слэш:) Забыли! Поправим, записал в туду-лист.
Ответить
tagao
Получайте посты из Вк, Twitter, Instagram в одном стандартизированном JSON
Николай Мамадаев
Тема ботов мне нравится, но эксперимент про 13 секунд не совсем точный. Потому что, нельзя сравнивать многофункциональное приложение с таким, грубо говоря, монофункциональным ботом. У приложения есть преимущества, из-за которых можно потратить и три минуты, на такую операцию.
Ответить
Yandex Wallet Bot
Telegram-бот для мгновенных денежных переводов
Александр Лифшиц
Мы не сравниваем приложение с ботом. Мы сравниваем время на решение конкретной задачи - положить деньги на телефон. Бот выиграл с огромным отрывом. Приложение, конечно, многофункциональное, красивое, и все такое, но я после этого не пойду в него платить. Я воспользуюсь им для решения других задач.
Ответить
Gordon Shamway
хах, еще пособираю минусов. даю прогноз. год 2020. дуров или какое-то другое придуманное блатное чудило запускает супер хрень Командная строка. Теперь не надо куда-то тыкать пальцем или курсором, нету всяких картинок, немодных папочек. Стиль дизайна Антиматериал 2.0. Можно сразу писать команды, так сказать напрямую общаться с Компьютером. Гениально. Свежо. Необходимо.
Ответить
ADZY
Ассистент для ведения рекламных компаний
Дмитрий Кубитский
сначала он выпустит самый секретный браузер, в котором будут шифроваться все соединения, эти соединения будут идти через сервера паши -> поэтому ваша секретность будет на самой высоте.
Ответить
Yandex Wallet Bot
Telegram-бот для мгновенных денежных переводов
Александр Лифшиц
Ребята, мы поняли, что вы дико хейтите Павла Дурова.
Не знаю, что у вас с ним, но нас в это не впутывайте, пожалуйста:)
Ответить
ADZY
Ассистент для ведения рекламных компаний
Дмитрий Кубитский
пфффф, знать его не знаю, ни чего к нему не имею, это просто публичный персонаж, который удобно использовать в примерах, или шутках.
могу заменить на Цукербрина.
Ответить
Gordon Shamway
ага, мы Филипп Морис, че вы на нас гоните, это Колумб табак привез))
Ответить
Valentin Zverev
У меня вопрос, какова схема работы по созданию ботов?
Понятно, что структура общения имеет древовидную структуру, ну или граф.
Вы реализовывали это как хранение состояния для каждого chatId, а перемещение по меню реализовывалось через алгоритм? Или что-то более универсальное?
Ответить
Yandex Wallet Bot
Telegram-бот для мгновенных денежных переводов
Артём Риженков
У нас тут используется почти классическая схема MVC. Только вместо вида (View) используется отправка сообщений пользователю в чат, а контроллер написан так, что реагирует не на URI, а на входящие команды от пользователя. И, конечно же, приходится сохранять и обрабатывать результаты предыдущего взаимодействия для поддержания контекста.
Ответить
Valentin Zverev
а какой язык/фреймворк используете?
Ответить
Yandex Wallet Bot
Telegram-бот для мгновенных денежных переводов
Артём Риженков
Для написания проекта мы использовали язык PHP и фреймворк Kohana. Мы работаем с ним много лет в веб-разраюотке и для создания бота ничего другого искать не пришлось.
Ответить
Valentin Zverev
Артем, благодарю за ответы )
Я решил nodeJS использовать, но то что кажется простым на PHP тут пока туговато )) Если время пришмет, думаю вернусь тоже на PHP/Yii
Ответить
Yandex Wallet Bot
Telegram-бот для мгновенных денежных переводов
Александр Лифшиц
Мы тоже планируем попробовать что-то на NodeJs, опыт с ним есть, но не такой большой. Поскольку у нас были только одни сутки, мы писали на том, что знаем лучше всего :)
Ответить
Выбрать файл
Блог проекта
Расскажите историю о создании или развитии проекта, поиске команды, проблемах и решениях
Написать
Личный блог
Продвигайте свои услуги или личный бренд через интересные кейсы и статьи
Написать

Spark использует cookie-файлы. С их помощью мы улучшаем работу нашего сайта и ваше взаимодействие с ним.