Создание чат-ботов: конструкторы против самописных решений

Всем привет! Сегодня я хочу поговорить с вами о чат-ботах, а точнее о том, как их можно создавать, а в конце поделиться своим успешным кейсом, как я создал чат-бота для IT-конференции за один вечер на конструкторе чат-ботов, можешь сразу мотать в конец )

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

Ну что, начнем с самого начала!

Чат-боты стали неотъемлемой частью современного бизнеса, позволяя автоматизировать взаимодействие с клиентами и оптимизировать внутренние процессы.

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

Конструкторы чат-ботов

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

Преимущества:

  • Легкость использования. Конструкторы имеют понятный интерфейс, что позволяет людям без технических навыков быстро создать бота. Например, платформы такие как ManyChat, Aimylogic, Botman предлагают готовые сценарии и шаблоны, которые можно адаптировать под свои нужды
  • Скорость разработки. Создание простого чат-бота может занять всего несколько часов. Это будет полезно при тестировании гипотез или быстрого запуска новых услуг.
  • Поддержка и обновления. Конструкторы часто предоставляют техническую поддержку и регулярные обновления, что упрощает эксплуатацию ботов.

Недостатки:

  • Баги платформы – баги твоего бота. Я перепробовал много разных платформ, где-то бага была меньше, где-то больше. Иногда, чтобы исправить баг, приходится удалить какой-то блок, поставить его заново или же полностью удалить сценарий, создать новый сценарий. В целом, это не очень-таки критично, но нужно быть готовым к тому, что не все будет получаться идеально с первого раза.
  • Ограниченный функционал. Возможности ботов зависят от функционала конкретного конструктора. Например, не все платформы поддерживают интеграцию с CRM-системами или возможность отправки файлов
  • Зависимость от сервиса. Авторские права на созданных ботов остаются у платформы, что может вызвать трудности при переносе данных или смене провайдера. Чтобы таких неприятностей избежать нужно заплатить больше денег и взять пакет опций с расширенными возможностями. Первоначально не у всех есть возможность это сделать.

Самописные решения

Создание самописного чат-бота подразумевает написание кода с нуля, что требует:

  • знания одного из языков программирования
  • фреймворк для взаимодействия с API месанджера
  • опыт работы с базой данных, ведь наверняка придется сохранять какие-либо пользовательские данные, ответы на вопросы, которые будет задавать бот

Приемущества:

  • Это дешевле для разработчика. Когда вы разработчик, то для вас сделать все своими руками действительно выйдет дешевле, ведь все что от вас требуется – это арендовать какой-нибудь сервер установить необходимый софт. Другой вопрос в том, а захотите ли вы бесплатно делать бота для кого-то другого?
  • Полная кастомизация. Возможность реализовать любой функционал, соответствующий уникальным бизнес-процессам. Это особенно важно для крупных компаний с особыми требованиями.
  • Безопасность данных. Самописные решения могут обеспечивать более высокий уровень защиты персональных данных, что критично для таких сфер, как банковское дело или медицина.
  • Улучшение Hard Skills. Это наверное самый важный плюс, в процессе создания бота приобретаешь новые знания и навыки, которые точно не будут лишними, если строишь карьеру в IT

Недостатки:

  • Сложность постоянной адаптации бота к реальным потребностям бизнеса. Такие изменения могут застать врасплох. Часто чат-боты делаются по Scrum, выпускается какая-то минимальная версия и вот уже через пару часов к тебе прибегает заказчик и просит внести правку, поменять связи местами, добавить еще несколько текстовых блоков блоков… И вот нам приходится лезть в код, все менять, потом заново заливать на сервер.
  • Другие минусы. Тут все зависит от того с чьей стороны рассматривать. Со стороны разработчика, который хочет сделать чат-бота для каких-то личных целей минусов практически и нет. Со стороны бизнеса, человека который делает бота для того чтобы закрыть какую-то бизнес потребность, минусов может быть очень много

Когда лучше выбрать конструктор для создания бота?

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

Ну и ответ на этот вопрос зависит от того для чего вам разрабатывать чат-бот.

Если вы хотите "Войти в IT" - стать программистом, то конечно лучше написать что-то своё. Если закрыть свою бизнес потребность - стоит посмотреть и проанализировать можно ли применить уже готовое решение.

Мой кейс работы с конструкторами чат-ботов

Хочу показать реальный кейс, который я реализовал – Чат-бот для записи на конференцию.

Требуемый функционал на входе:

  • Регистрация участников на конференцию
  • Предоставлении информации о лекциях (когда, что, кто выступает)
  • Квиз, по каждой лекции необходимо внести ключевое слово, участники, которые вносят ключевые слова по 5 из 6 лекций получают сертификат
  • Выгрузка данных (анкет и ответов пользователей в google таблицу)

Для реализации MVP (Minimum Viable Product) со всем этим функционалом у меня ушел буквально один вечер. Весь функционал был реализован, однако где-то не было нужного текста с подробным описанием, по какому-то сценарию, почти нигде не было фоток.

ТЗ я получил от контент менеджера в формате графа, где был полностью описан сценарий бота и пример текста в каждом блоке

ТЗ на создание бота
ТЗ на создание бота

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

Вот так выглядит реализация этого ТЗ на конструкторе чат-ботов

Создание чат-ботов: конструкторы против самописных решений

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

Вот так, например, выглядит редактирование одного из сообщения, которое отправляет чат бот при наступлении события “Показать расписание лекций, который пройдут 20 ноября”

Создание чат-ботов: конструкторы против самописных решений

Есть текстовый редактор, с помощью которого можно как-то красиво оформить текст, к этому тексту можно добавить различные виды вложений (аудио, видео, картинка и т.д.), и конечно же кнопки.

Но самое классное, что у меня вызывает восторг - это реализация интеграции с Google таблицей.

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

И вот такую обратную связь я получил по итогу работы:

Создание чат-ботов: конструкторы против самописных решений

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

Что по затратам?

Бот нужен был на два месяца - именно столько проходила регистрация участников и само мероприятие

Стоимость подписки 900 руб в месяц итого вышло 1800. Плюс мне был небольшой подгон, в виде манго, люблю их. Я просто поработал за еду.

Этого чат бота я сделал за один вечер и особо ментально никак не напрягался, нет никакой сложности накидать блоков и соединить их стрелочками, согласно схеме в Miro.

Что понравилось в этом кейсе как разработчику?

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

Личный вывод

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

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

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

При выборе инструмента для реализации спросите себя а зачем я это делаю?

  • Заработать много денег ( тут точно не выбирайте конструктор чат-ботов)
  • Элегантно и быстро решить бизнес-задачу
  • Показать свои скиллы в разработке
  • Улучшить навыки разработки, а получится или не получится решить задачу в приемлемый срок, это уже другой вопрос
33
5 комментариев

Очень интересно, что с помощью конструктора можно создать такого сложного бота за один вечер. Я даже представить не мог, что это так просто. Теперь я хочу попробовать создать своего бота для какой-нибудь простой задачи.

2

автор "лукавит" про один вечер, тем более при нелинейной схеме, судя по схем из более чем 20 блоков...
в части блоков еще нужно прописать параметры и задать условия...
—-
для такой схемы только вечер уйдет в обсуждении функционала с заказчиком, чтобы вытащить из него, что он хочет =))

2

Спасибо за обратную связь)