Смотришь новости: ну жизни нет без чат-ботов!
Да если их не будет, поезда с рельс сойдут, упадут самолеты, погибнут люди от тоски, когда не смогут найти картинки с котиками.
Но давайте положим руку на сердце: когда последний раз вы что-то заказывали в интернет-магазине через чат-бот?
Кто все эти люди, которые заказывают разработку ботов для своих магазинов?
Типичный чат-бот магазина Vasya Limited:
>> автоматизирует
>> сливает 4 из 5 заявок, кровью добытых через Яндекс-Директ,
>> если повезет, человек найдет номер телефона и позвонит,
>> но, вероятней всего, «Эээ, куда жать?», а потом закроет и уйдет гуглить дальше.
Чем занят владелец, когда продажи «автоматизированы»:
>> вносит заказы в excel-таблицу
>> заполняет почтовые бланки на посылках
>> стоит в очереди на почте с кучей посылок (каждый день!)
>> вносит трек номера в excel-таблицу, затем рассылает клиентам
Может, хватит на ровном месте встраивать «технологии» туда, где действительно нужен человек, в то время как люди загружены рутиной для роботов?
Почему же боты не набирают ожидаемой популярности?
- Они не решают реальную проблему значительно лучше текущих инструментов
- Они не решают реальную проблему значительно лучше текущих инструментов
То есть
- Проблемы, которую он решает, на самом деле нет: например, сообщать текущий цвет неба или расстояние до Солнца
- Проблема есть, она решается, но решается незначительно лучше текущих решений: чтобы задать тренд, недостаточно «просто лучше» — оно должно быть намного лучше, так как переход на что-то новое — это всегда энергозатратно. Выигрыш от нового должен, очевидно, покрывать потери на освоение новой технологии.
Почему так происходит и что делать?
- Даже просто увидеть реальную проблему в окружающем мире — непростая задача.
Дело в том, что в мире все потребности, так или иначе, уже удовлетворены. Большинство решений являются для нас чем-то самим собой разумеющимся.
Мы не можем представить, чтобы это было реализовано иначе, даже не задумываемся об этом и вообще не видим в этом никакой проблемы.
Например, когда не было поездов, перемещения по миру на лошадях занимали месяцы, годы. Но люди не видели в этом никакой проблемы: в их картине мира по-другому и быть не могло. До появления айфона никто не видел проблемы в физических кнопках.
- Большинство разработчиков сосредоточены на процессе, а не решении проблемы
Мотивация разработчиков — получение новых знаний и навыков, а не решение проблем. Если решение не находится на границе возможностей, оно даже не заслуживает внимания, независимо от того, насколько эффективно решается проблема, важно, чтобы решение было крутым.
Предприниматели, даже если видят реальную проблему, не обладают достаточными знаниями и навыками, чтобы придумать концепцию решения из текущих технологий. Поэтому зачастую просто забивают на поиск решения, довольствуясь тем, что предлагают.
В итоге программисты играются с новыми технологиями, пытаясь приткнуть их везде, где можно.
А предпринимателям остается рыться в этой куче мусора. Иногда из этой кучи внезапно появляются годные продукты.
Хотя достаточно всего лишь опираться на то, что мы уже умеем, и решать более приземленные задачи
Реальный кейс без фантазий
Наша компания занимается производством и продажей электронных устройств. Клиенты по всему миру. Каждый день отправляется 5-10 посылок (по меркам интернет магазинов, довольно немного) почтой, транспортными компаниями; за границу, по России.
- В течение дня приходят заказы, которые попадают в базу — таблицу google sheets.
- В конце дня комплектуются посылки, заполняются адреса на пакетах.
- Посылки отвозятся на центральную почту (работает круглосуточно), отправляются.
- Чеки фотографируются и отправляются в специальный Telegram-чат.
- Кто-то из сотрудников перебивает трек номера из чата в таблицу.
- Трек номера рассылаются клиентам по электронной почте; письма на русском и английском.
Вроде бы, ничего непосильного в этом нет.
Но, если посчитать время, которые занимают эти мелкие рутинные операции в сумме, оказывается, что порядка 2 часов каждый день тратится на:
- Заполнение адресов на пакетах
- Перебивание трек-номеров в базу
- Проверку трек-номеров (иногда плохо пропечатываются цифры)
- Рассылку писем клиентам на разных языках
- Мониторинг других посылок: не застряли ли на таможне, не лежит ли уже неделю на почте у получателя и т. д.
Люди — дорогое удовольствие
- Если раньше можно было не задумываясь нанять девочку «принеси-подай, свали-не мешай» за 15к в месяц, то текущие условия не прощают неэффективности.
- В первую очередь биороботы в малом бизнесе дороги тем, что они часто сменяются, требуют много внимания и контроля, обучения и т.д. Все это отнимает время у ключевых людей команды.
- Каждый новый сотрудник в малом бизнесе значительно повышает расходы на управление, так как отсутствует система.
Если процесс формализуем, его можно автоматизировать
Пытались внедрять различные системы типа 1С, битрикса и тд. Не «зашли» по простой причине — приложения долго грузятся; для того, чтобы внести, например, трату в 300р, нужно подождать, пока загрузится приложение, ткнуть в несколько полей, поставить метки и т.д.
В итоге траты, задачи и прочая информация просто не вносятся.
Система с телеграм-чатами «прижилась»: он всегда под рукой, быстро загружается, кросс-платформенный.
Вывод: главное преимущество, которое дает Telegram для малого бизнеса — скорость ввода информации, все, что занимает больше пары секунд и пары кликов, в итоге делаться не будет.
Окей, информацию мы внесли, но, по факту, все эти чаты — просто свалка необработанной информации: приходы, расходы, закупки, контакты, чеки и т. д.
И вот тут мы логически приходим к тому, что нам нужен бот, который бы эту информацию обрабатывал — главное, что информация вносится.
Распознаем трек-номера
Задача минимум: пусть бот хотя бы распознает трек-номера с чеков, проверяет контрольные суммы и выдает в чат, чтобы осталось просто скопировать и вставить в шаблон письма, а не перебивать вручную.
Проблема в том, что на почтовом чеке нет трек-номера в виде штрих-кода или QR-кода
И тут нам на помощь приходит ABBYY CLI OCR for Linux.
Подробнее про данный инструмент расскажу в другой статье: распознавалка текста от ABBYY с кучей настроек, языков, распознает штрих- и QR-коды, работает на порядок лучше Google.
Скармливаем ей нашу картинку, на выходе получаем достаточно годный распознанный текст, нам остается его распарсить, почистить, найти в нем трек-номер, проверить и исправить ошибки (например, цифра 8 принята за 0).
Ну а раз уж мы вытащили из чека трек-номер, можно и отправить его тоже автоматически, вопрос только — кому? Нужно как-то сопоставить данный трек-номер с соответствующим ему заказом. Делаем небольшой сервис на php, в который переносим нашу базу из Google sheets.
Печатаем адресные бланки (которые наклеиваются на пакет вместо вписывания руками), комплектовочный лист и корешок с QR-кодом со ссылкой на заказ.
После отправки посылок прямо на почте фотографируем чеки, приложенные к корешкам с QR-кодом, и скидываем боту. Всё, дальше все происходит автоматически.
- Распознается трек-номер любой службы доставки.
- Проверяется контрольная сумма.
- Определяется тип отправления и язык
- Отправляется письмо клиенту с трек-номером на нужном языке
- Трек-номер вносится в базу, меняется статус заказа
- Автоматически отслеживается судьба посылки
- При задержке уведомляет нас для принятия мер
- По прибытии посылки напоминает клиенту ее получить
- После получения, через 2 недели, просит оставить отзыв
Система экономит время, избавляет от рутины и человеческих ошибок, повышает сервис и, что самое главное — прибыль.
Спасибо за внимание всем, кто дочитал до конца мой крик души. Надеюсь, смог передать свое видение, какие задачи реально должны решать чат-боты. Формализуемые задачи должны решать машины, люди должны заниматься творчеством.
Хватит делать новомодную хрень, которая не приносит пользы (вокруг куча подобных задач) давайте делать мир лучше)
P.S. Если тема будет интересна, могу более подробно написать. Также есть много идей и прототипов подобных систем, довести до ума которые не хватает времени; если у кого-то есть желание поучаствовать — велкам.
Мой канал в Telegram: Записки Славика.
Комментарии (28)
VioletGiraffe
30.11.2017 19:02+3Хорошо написано про сложность распознавания и выделения изобретательской/рационализаторской задачи. Сложно выйти за рамки известного, чтобы увидеть неизвестное, даже если оно реализуемо.
Вспоминается Форд: «Если бы я делал то, чего хотят от меня клиенты, мне бы пришлось изобрести более быструю лошадь.»
isxam
30.11.2017 19:13+1Чем занят владелец, когда продажи «автоматизированы»:
>> вносит заказы в excel таблицу
жду следующую серию, в которой владелец попросит блокчейн
Axam
01.12.2017 11:56Для трекинга посылок есть уже много готовых решений. Например, Aftership с десктопным и мобильным клиентами. Для продаж есть Shopify.
Начало было хорошим, но дальше стало грустно. Не надо изобретать велосипеды, если уже есть сервисы с API.cherepart
01.12.2017 17:12Не вижу здесь велосипеда. Есть приложение для одной задачи, есть для второй, третьей, это да. Но смысл, когда мелкие задачи можно встроить в привычное приложение для коммуникации, при этом не нагружая девайс.
NNikolay
01.12.2017 12:56Всё правильно написано, плюсую. Я тоже люблю подход «как можно меньше писать самому.» Одно не нравится — зачем было выбрасывать Google Sheets? Система, где весь фронт-енд сделан на Телеграме и гуглдоках, — это круть. Я так считаю.
mickvav
01.12.2017 16:57Ну да, тут было бы круто (особенно в контексте малого бизнеса) свинтить чисто облачное решение, по сути, сплавив статьи и комментарии на хабре — habrahabr.ru/post/326220
с статьей не на хабре
Ptolemy_master
01.12.2017 13:18А по-моему, неплохо получилось.
У меня такой вопрос — а нельзя ли считывание и ираспознавание делать также веб-приложением? Или это только телеграм бот может (помимо собственно приложений)? СпасибоLeopotam
01.12.2017 16:10telegram-бот тут выступает исключительно интерфейсом ввода-вывода данных для пользователя — вся обработка происходит «где-то там» на бэкенде. Т.е да, к нему можно приделать и веб-интерфейс, вопрос только в том — нужно ли оно и кто будет поддерживать.
sovaalexandr
01.12.2017 13:18По поводу ABBYY CLI OCR for Linux — как внедряли, что пробовали перед этим (каких конкурентов и какие подходы рассматривали кроме Google)
и конкретно о кейсе когда "8" распознаётся как "0" — как с таким боретесь, применимо ли к данной системе модное нынче слово "обучить", если нет — какими методами достигается улучшение производительности распознавания? Рассматривали ли уже/рассматриваете ли сейчас модный нынче подход с сетями, или оно вам не надо?
varenich
01.12.2017 14:17Отличная реализация! Буквально только что воспользовался чат-ботом Cdek как клиент для выбора времени доставки и адреса. Удобно! И тут Вы описываете всю системы в целом очень интересно. Действительно, придумать практическое применение для чат-бота довольно трудно, а у Вас это хорошо получилось. В Битриксе, кстати, есть неплохой чат-бот для поиска информации о контрагентах по ИНН.
astec
01.12.2017 14:46+1Согласен что пихать куда попало чат-ботов не надо.
Они хороши когда надо получать уведомления или связать несколько людей которые вряд ли захотят ставить отдельную программу.
Отлично легло на мой случай — телеграмм бот для учёта долгов — https://t.me/DebtsTrackerRuBot — быстро вводить запись, легко отправить квитанцию другу, возможность использования адресной книги для создания контакта, оповещения о просроченных платежах.
Работает так хорошо что даже некоторые используют в профессиональной деятельности. Чему я был немного удивлён.
gxcreator
01.12.2017 16:00Когда загадили веб так, что он стал тяжелым и неудобным и статус заказа легче посмотреть в чате. Подсказка для маркетологов: в корпоративного бота можно встроить назойливую рекламу и спецпредложения для клиентов.
maxzh83
Похоже на кашу из топора. Php скрипты, OCR, Google sheets, но при этом «каша» вроде как из Телеграмма.
Хотелось бы большего раскрытия преимуществ ввода информации в telegram над web или нативным мобильным приложением.
SlavikMIPT Автор
webkumo
Не вижу препятствий. Ставите условие при приёме на работу и работники мелкую софтину поставят легко. Надо только объяснить им, что она им же и поможет.
Так не надо брать всякое дерьмо, простите за мой французский! Обычное приложение, если не пихать в него тонну хотелок и заказывать у нормального подрядчика тормозить не будет — незачем ему!
Да! 2 платформы, это ппц как тяжело по нынешним-то временам!
Единственный реалистичный довод.
softaria
Есть ощущение, что вы искусственно придумали проблему (нам нужно приложение!) и теперь предлагаете небесплатные способы ее решить.
KorP
курьеров озона никогда не видели? у них в приложении и информация по заказам и связь с мобильным терминалом безналичной оплаты и бог его знает что ещё
SlavikMIPT Автор
крупные компании могут себе позволить все забюрократизировать, сделать свое приложение, заставить сотрудников чем то пользоваться — потому что у них есть выстроенная система, которая дает необходимый запас устойчивости.
В малом бизнесе (где сейчас и наблюдается спрос на телеграм ботов) никакой системы нет — есть Валера в куче коробок, на кухне в трусах, друг Валеры и наемный помощник, не особо одаренный креативностью, который просто хочет кушать в этом месяце. Вот на самом деле как выглядит типичный Российский малый бизнес.
Сила крупных компаний в их устойчивости — люди нанимаются, увольняются, но система продолжает работать — не максимально эффективно, главное — стабильно и предсказуемо. Но в то же время компания менее поворотлива — эта та цена, которую приходится отдавать за стабильность и предсказуемость.
Маленькая компания нестабильна, непредсказуема и конкурирует с 100500 другими такими же компаниями.
Если говорить о конкуренции больших компаний — это соревнование СИСТЕМ, конкуренция маленьких компаний — соревнование ЛЮДЕЙ — все твои конкуренты тоже работают по 24 часа в сутки и единственная возможность вырваться — быть эффективнее, достигать бОльших результатов усилиями меньшего количества людей. У малого бизнеса нет системы, чтобы масштабироваться за счет увеличения штата — начнете увеличивать штат — все тут же пойдет наперекосяк — и в один момент поймаете себя на мысли что вроде народу много, кипиша много, а результат такой же — какой вы втроем на кухне делали. Поскольку систему управления выстроить задача не самая простая и быстрая — я вижу единственный путь масштабирования — автоматизация и улучшение инструментов, повышать эффективность людей, не увеличивая их количества.
Соответственно подход тут должен быть — не героически преодолевать и внедрять системы, до которых твоя компания просто не доросла. А решать точечные задачи максимально эффективно
KorP
Вы меня, конечно, извините, но бОльшая часть функционала, который вы описали делает всё же не бот, а какая то обёртка на сервере. Телеграм у вас выступает только в роли коммуникации между пользователем и системой и думаю, что накидать подобную систему, человеку, который реализовал всё остальное — дело одного-двух вечеров.
пс мне ещё не очень понятно почему вы пишете про собственный интернет-магазин в блоге компании, занимающейся VDS…
SlavikMIPT Автор
а что такое бот по вашему? это и есть просто интерфейс — я специально акцентировал внимание, что его главная роль — это то что в него вносятся данные и это не напрягает сотрудников.
«Телеграм у вас выступает только в роли коммуникации между пользователем и системой и думаю, что накидать подобную систему, человеку, который реализовал всё остальное — дело одного-двух вечеров.» — вот пример того, о чем я говорил — Вы оцениваете по тому насколько сложно это реализовать, когда есть ТЗ
Но не берете во внимание то, что основной труд/талант/опыт тут заложены в придумывании этого самого ТЗ, которое легко реализуется и хоршо решает проблему.
Пишу про собственный интернет магазин потому что захотел.
P.S.
можете запустить команду /test на @EasyTrack_bot(просьба не заходить кому реально не надо — а то упадет) — сгенерируется пример работы, или напишите в ЛС SlavikMIPT — покажу реальные примеры
lxsmkv
Преимущество на мой взгляд в том, что не нужно тратиться на разработку полноценного приложения, а результат тот-же. Ведь информатика — это по прежнему: ввод, обработка, вывод. Для первого и третьего телеграмм предоставляет готовый кроссплатформенный интерфейс. Хочешь голос на обработку отправляй хочешь — геокоординаты, хочешь — текст, хочешь — изображение. Осталось сделать только обработку.
В итоге получается дешевле. Поскольку для обработки можно воспользоваться массой существующих технологий, сервисов, api. А разработка целостного приложения довольно затратная вещь. Не нужно решать массу не относящихся к бизнесу задач: обновления приложения, его публикации, кроссплатформенности. Это сильная экономия трудозатрат на создание приложения. Не пользоваться такой «халявой» было бы просто странно.
У нас на фирме делали для конференции приложение — справочник-навигатор. Лучше бы это был телеграм-бот. Получилось очень плохо. Потому, что заставить работать приложение на разных телефонах — та еще задачка.
Потом, имея отделенный от ввода и вывода сервис, его можно легче тестировать при помощи автоматизации. Не нужны все эти заморочки с UI тестами. Опять скажу — это значительная экономия, которой малый и средний бизнес не может пренебрегать.
RusinovIG
А как на счет просто веб-странички с полем для загрузки картинки? Браузер есть во всех телефонах не тормозит…
vvzvlad
Ох, ошибаетесь. Сделать интерфейс для бота проще и быстрее, чем хорошую удобную страницу
SlavikMIPT Автор
Тут хотелось в целом подход свой рассказать — если будет интерес — в детали всегда можно углубиться.