Telegram предоставляет возможность делать ботов быстро, удобно и подключать их к своим внутренним системам, создавая множество подвязок, триггеров и шаблонов. Активируешь Botfather-а и просто следуешь инструкциям, самое сложное обычно касается именно работы со внутренними системами и налаживанием API.



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

Почему Telegram


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

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

Бот для покупателей


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

Изначально при создании бота мы постарались учесть максимальное количество пожеланий пользователей. Но и после запуска пользователи активно пользовались возможностью обратной связи и предлагали много новых фичей для бота, о которых мы сами даже и не додумались. Он помогал привязать карту лояльности «Давайте дружить» или заменить её при необходимости и получать информацию о персонализированных акциях и скидках. А затем мы добавили и функцию составления листа покупок, чтобы точно ничего не забыть и прийти в конкретный магазин (который тоже можно было уточнить у бота) и сразу все купить.

image


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

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

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

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

Сейчас покупательский бот не дорабатывается. Все новые функции, которые мы готовим, в том числе по просьбам покупателей, будут появляться только в мобильных приложениях (AppStore / Play Market). Их мы разработали для ВкусВилла на замену боту.

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

Бот доставки


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



Как мы писали выше, с помощью команды (1С-разработчик, SQL-разработчик и аналитик) на всё про всё ушло 5 дней. Сначала обсудили и зафиксировали необходимую функциональность, затем, собственно, написали бота, реализовали необходимые для его нормальной работы SQL-процедуры и развернули все базы. Это первые три дня. Четвертый день решили полностью посвятить активному тестированию, а на пятый день запустили бота в рабочем режиме.

Итого вышло, что курьерского бота сделала команда из трёх человек за 5 дней. На поддержку и какие-то доработки в случае чего уходит не более часа работы в день.

Быстрый запуск бота для курьеров помог вовремя масштабировать возможности доставки, которая в период самоизоляции получила неслабую проверку на прочность. Впрочем, как и все остальные доставки чего угодно. Плюс реализация механизма для работы курьера в виде бота сняла ограничения на устройства: у нас было ранее небольшое мобильное приложение для курьеров, но мы его написали только под Android, полагая, что эта ОС будет у курьеров сильно популярнее яблочной.

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

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

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

Работает все довольно просто:

  1. Курьер отмечается в чате с ботом, что готов к работе.
  2. Получает от бота уведомление, что появился новый заказ, который надо доставить.
  3. Видит свободные для доставки заказы на карте, прикидывает, какие сейчас удобнее и быстрее всего доставить.
  4. Получает возможность построить маршрут в навигаторе для поездки, а также может связаться с покупателем по номеру телефона.
  5. Когда доставляет заказ покупателю (или возвращает в магазин по какой-то причине), то отписывается в чат боту. Бот меняет статус заказа.

Работает и активно дорабатывается. Как видите, тут получилась обратная ситуация: в случае с покупателями мы ушли от бота в сторону полноценного и функционального мобильного приложения под две платформы.

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

Другие внутренние боты


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

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

image


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

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

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