В интернетах не прекращается хайп вокруг чат-ботов (в частности, Telegram) благодаря шуму в СМИ, неоспоримых достоинствах платформы, политике продвижения, средствам разработки и т.д.

Смотришь новости: ну жизни нет без чат-ботов!
Да если их не будет, поезда с рельс сойдут, упадут самолеты, погибнут люди от тоски, когда не смогут найти картинки с котиками.

Но давайте положим руку на сердце: когда последний раз вы что-то заказывали в интернет-магазине через чат-бот?

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


Типичный чат-бот магазина Vasya Limited:
>> автоматизирует поток водопад заявок из 5 человек в день,
>> сливает 4 из 5 заявок, кровью добытых через Яндекс-Директ,
>> если повезет, человек найдет номер телефона и позвонит,
>> но, вероятней всего, «Эээ, куда жать?», а потом закроет и уйдет гуглить дальше.

Чем занят владелец, когда продажи «автоматизированы»:
>> вносит заказы в excel-таблицу
>> заполняет почтовые бланки на посылках
>> стоит в очереди на почте с кучей посылок (каждый день!)
>> вносит трек номера в excel-таблицу, затем рассылает клиентам

Может, хватит на ровном месте встраивать «технологии» туда, где действительно нужен человек, в то время как люди загружены рутиной для роботов?

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

  1. Они не решают реальную проблему значительно лучше текущих инструментов
  2. Они не решают реальную проблему значительно лучше текущих инструментов



То есть

  1. Проблемы, которую он решает, на самом деле нет: например, сообщать текущий цвет неба или расстояние до Солнца
  2. Проблема есть, она решается, но решается незначительно лучше текущих решений: чтобы задать тренд, недостаточно «просто лучше» — оно должно быть намного лучше, так как переход на что-то новое — это всегда энергозатратно. Выигрыш от нового должен, очевидно, покрывать потери на освоение новой технологии.

Почему так происходит и что делать?


  • Даже просто увидеть реальную проблему в окружающем мире — непростая задача.

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

Мы не можем представить, чтобы это было реализовано иначе, даже не задумываемся об этом и вообще не видим в этом никакой проблемы.

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


  • Большинство разработчиков сосредоточены на процессе, а не решении проблемы

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


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

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

Хотя достаточно всего лишь опираться на то, что мы уже умеем, и решать более приземленные задачи

Реальный кейс без фантазий




Наша компания занимается производством и продажей электронных устройств. Клиенты по всему миру. Каждый день отправляется 5-10 посылок (по меркам интернет магазинов, довольно немного) почтой, транспортными компаниями; за границу, по России.

  1. В течение дня приходят заказы, которые попадают в базу — таблицу google sheets.
  2. В конце дня комплектуются посылки, заполняются адреса на пакетах.
  3. Посылки отвозятся на центральную почту (работает круглосуточно), отправляются.
  4. Чеки фотографируются и отправляются в специальный Telegram-чат.
  5. Кто-то из сотрудников перебивает трек номера из чата в таблицу.
  6. Трек номера рассылаются клиентам по электронной почте; письма на русском и английском.

Вроде бы, ничего непосильного в этом нет.

Но, если посчитать время, которые занимают эти мелкие рутинные операции в сумме, оказывается, что порядка 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)


  1. maxzh83
    30.11.2017 18:09
    +1

    Похоже на кашу из топора. Php скрипты, OCR, Google sheets, но при этом «каша» вроде как из Телеграмма.

    главное преимущество, которое дает Telegram для малого бизнеса- скорость ввода информации

    Хотелось бы большего раскрытия преимуществ ввода информации в telegram над web или нативным мобильным приложением.


    1. SlavikMIPT Автор
      30.11.2017 18:21
      +3

      • никто не ставит приложения
      • приложения тормозят
      • приложения не кроссплатформенные
      • информация УЖЕ вносится в различные чаты — без всякого принуждения, органически — значит людям это удобно и нужно подстраиваться под них, улучшая то что уже используется


      1. webkumo
        30.11.2017 18:56

        никто не ставит приложения

        Не вижу препятствий. Ставите условие при приёме на работу и работники мелкую софтину поставят легко. Надо только объяснить им, что она им же и поможет.


        приложения тормозят

        Так не надо брать всякое дерьмо, простите за мой французский! Обычное приложение, если не пихать в него тонну хотелок и заказывать у нормального подрядчика тормозить не будет — незачем ему!


        приложения не кроссплатформенные

        Да! 2 платформы, это ппц как тяжело по нынешним-то временам!


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

        Единственный реалистичный довод.


        1. softaria
          01.12.2017 14:42
          +2

          Есть ощущение, что вы искусственно придумали проблему (нам нужно приложение!) и теперь предлагаете небесплатные способы ее решить.


      1. KorP
        30.11.2017 20:13

        никто не ставит приложения

        курьеров озона никогда не видели? у них в приложении и информация по заказам и связь с мобильным терминалом безналичной оплаты и бог его знает что ещё


        1. SlavikMIPT Автор
          30.11.2017 20:48
          -1

          крупные компании могут себе позволить все забюрократизировать, сделать свое приложение, заставить сотрудников чем то пользоваться — потому что у них есть выстроенная система, которая дает необходимый запас устойчивости.
          В малом бизнесе (где сейчас и наблюдается спрос на телеграм ботов) никакой системы нет — есть Валера в куче коробок, на кухне в трусах, друг Валеры и наемный помощник, не особо одаренный креативностью, который просто хочет кушать в этом месяце. Вот на самом деле как выглядит типичный Российский малый бизнес.
          Сила крупных компаний в их устойчивости — люди нанимаются, увольняются, но система продолжает работать — не максимально эффективно, главное — стабильно и предсказуемо. Но в то же время компания менее поворотлива — эта та цена, которую приходится отдавать за стабильность и предсказуемость.
          Маленькая компания нестабильна, непредсказуема и конкурирует с 100500 другими такими же компаниями.
          Если говорить о конкуренции больших компаний — это соревнование СИСТЕМ, конкуренция маленьких компаний — соревнование ЛЮДЕЙ — все твои конкуренты тоже работают по 24 часа в сутки и единственная возможность вырваться — быть эффективнее, достигать бОльших результатов усилиями меньшего количества людей. У малого бизнеса нет системы, чтобы масштабироваться за счет увеличения штата — начнете увеличивать штат — все тут же пойдет наперекосяк — и в один момент поймаете себя на мысли что вроде народу много, кипиша много, а результат такой же — какой вы втроем на кухне делали. Поскольку систему управления выстроить задача не самая простая и быстрая — я вижу единственный путь масштабирования — автоматизация и улучшение инструментов, повышать эффективность людей, не увеличивая их количества.
          Соответственно подход тут должен быть — не героически преодолевать и внедрять системы, до которых твоя компания просто не доросла. А решать точечные задачи максимально эффективно


          1. KorP
            30.11.2017 20:55
            -3

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


            1. SlavikMIPT Автор
              30.11.2017 21:09
              -2

              а что такое бот по вашему? это и есть просто интерфейс — я специально акцентировал внимание, что его главная роль — это то что в него вносятся данные и это не напрягает сотрудников.
              «Телеграм у вас выступает только в роли коммуникации между пользователем и системой и думаю, что накидать подобную систему, человеку, который реализовал всё остальное — дело одного-двух вечеров.» — вот пример того, о чем я говорил — Вы оцениваете по тому насколько сложно это реализовать, когда есть ТЗ
              Но не берете во внимание то, что основной труд/талант/опыт тут заложены в придумывании этого самого ТЗ, которое легко реализуется и хоршо решает проблему.
              Пишу про собственный интернет магазин потому что захотел.
              P.S.
              можете запустить команду /test на @EasyTrack_bot(просьба не заходить кому реально не надо — а то упадет) — сгенерируется пример работы, или напишите в ЛС SlavikMIPT — покажу реальные примеры


      1. lxsmkv
        30.11.2017 22:27
        +1

        Преимущество на мой взгляд в том, что не нужно тратиться на разработку полноценного приложения, а результат тот-же. Ведь информатика — это по прежнему: ввод, обработка, вывод. Для первого и третьего телеграмм предоставляет готовый кроссплатформенный интерфейс. Хочешь голос на обработку отправляй хочешь — геокоординаты, хочешь — текст, хочешь — изображение. Осталось сделать только обработку.
        В итоге получается дешевле. Поскольку для обработки можно воспользоваться массой существующих технологий, сервисов, api. А разработка целостного приложения довольно затратная вещь. Не нужно решать массу не относящихся к бизнесу задач: обновления приложения, его публикации, кроссплатформенности. Это сильная экономия трудозатрат на создание приложения. Не пользоваться такой «халявой» было бы просто странно.
        У нас на фирме делали для конференции приложение — справочник-навигатор. Лучше бы это был телеграм-бот. Получилось очень плохо. Потому, что заставить работать приложение на разных телефонах — та еще задачка.
        Потом, имея отделенный от ввода и вывода сервис, его можно легче тестировать при помощи автоматизации. Не нужны все эти заморочки с UI тестами. Опять скажу — это значительная экономия, которой малый и средний бизнес не может пренебрегать.


      1. RusinovIG
        01.12.2017 13:26

        А как на счет просто веб-странички с полем для загрузки картинки? Браузер есть во всех телефонах не тормозит…


        1. vvzvlad
          02.12.2017 21:02
          +1

          Ох, ошибаетесь. Сделать интерфейс для бота проще и быстрее, чем хорошую удобную страницу


    1. SlavikMIPT Автор
      30.11.2017 18:24

      Тут хотелось в целом подход свой рассказать — если будет интерес — в детали всегда можно углубиться.


  1. VioletGiraffe
    30.11.2017 19:02
    +3

    Хорошо написано про сложность распознавания и выделения изобретательской/рационализаторской задачи. Сложно выйти за рамки известного, чтобы увидеть неизвестное, даже если оно реализуемо.

    Вспоминается Форд: «Если бы я делал то, чего хотят от меня клиенты, мне бы пришлось изобрести более быструю лошадь.»


  1. isxam
    30.11.2017 19:13
    +1

    Чем занят владелец, когда продажи «автоматизированы»:
    >> вносит заказы в excel таблицу

    жду следующую серию, в которой владелец попросит блокчейн


  1. Axam
    01.12.2017 11:56

    Для трекинга посылок есть уже много готовых решений. Например, Aftership с десктопным и мобильным клиентами. Для продаж есть Shopify.
    Начало было хорошим, но дальше стало грустно. Не надо изобретать велосипеды, если уже есть сервисы с API.


    1. SlavikMIPT Автор
      01.12.2017 13:27

      Вы это используете сами или в теории?


    1. cherepart
      01.12.2017 17:12

      Не вижу здесь велосипеда. Есть приложение для одной задачи, есть для второй, третьей, это да. Но смысл, когда мелкие задачи можно встроить в привычное приложение для коммуникации, при этом не нагружая девайс.


  1. NNikolay
    01.12.2017 12:56

    Всё правильно написано, плюсую. Я тоже люблю подход «как можно меньше писать самому.» Одно не нравится — зачем было выбрасывать Google Sheets? Система, где весь фронт-енд сделан на Телеграме и гуглдоках, — это круть. Я так считаю.


    1. mickvav
      01.12.2017 16:57

      Ну да, тут было бы круто (особенно в контексте малого бизнеса) свинтить чисто облачное решение, по сути, сплавив статьи и комментарии на хабре — habrahabr.ru/post/326220
      с статьей не на хабре


  1. movis08
    01.12.2017 13:18

    Автор молодец.
    Все правильно говорит


  1. Ptolemy_master
    01.12.2017 13:18

    А по-моему, неплохо получилось.
    У меня такой вопрос — а нельзя ли считывание и ираспознавание делать также веб-приложением? Или это только телеграм бот может (помимо собственно приложений)? Спасибо


    1. Leopotam
      01.12.2017 16:10

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


  1. sovaalexandr
    01.12.2017 13:18

    По поводу ABBYY CLI OCR for Linux — как внедряли, что пробовали перед этим (каких конкурентов и какие подходы рассматривали кроме Google)
    и конкретно о кейсе когда "8" распознаётся как "0" — как с таким боретесь, применимо ли к данной системе модное нынче слово "обучить", если нет — какими методами достигается улучшение производительности распознавания? Рассматривали ли уже/рассматриваете ли сейчас модный нынче подход с сетями, или оно вам не надо?


  1. netmels
    01.12.2017 13:18

    Интересная статья и стиль изложения веселый! Большое спасибо!


  1. varenich
    01.12.2017 14:17

    Отличная реализация! Буквально только что воспользовался чат-ботом Cdek как клиент для выбора времени доставки и адреса. Удобно! И тут Вы описываете всю системы в целом очень интересно. Действительно, придумать практическое применение для чат-бота довольно трудно, а у Вас это хорошо получилось. В Битриксе, кстати, есть неплохой чат-бот для поиска информации о контрагентах по ИНН.


  1. astec
    01.12.2017 14:46
    +1

    Согласен что пихать куда попало чат-ботов не надо.


    Они хороши когда надо получать уведомления или связать несколько людей которые вряд ли захотят ставить отдельную программу.


    Отлично легло на мой случай — телеграмм бот для учёта долгов — https://t.me/DebtsTrackerRuBot — быстро вводить запись, легко отправить квитанцию другу, возможность использования адресной книги для создания контакта, оповещения о просроченных платежах.


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


  1. gxcreator
    01.12.2017 16:00

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


  1. SbWereWolf
    02.12.2017 00:04

    Славик молодец.