Как сделать чат-бота своими руками | Бизнес-школа Laba (Лаба)
Журнал

Поиск

Как сделать чат-бота своими руками

Простой гайд для НЕпрограммистов.

cover.chatbot-608c1089eed23341619059.jpg

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

Готовы перенимать опыт крупных компаний и создать свой первый чат-бот? Тогда вооружайтесь терпением, идеями, временем и внимательно читайте инструкции Дарины Даниленко, СЕО Why.Agency — агентства, которое помогает бизнесам строить коммуникацию через чат-боты. 

В конце мы поделимся ссылкой на простой демобот, сделанный по этому гайду.

С чего начать создание чат-бота?

Дарина:

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

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

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

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

Вспомогательные сервисы

Сегодня мы попробуем создать чат-бот на pipe.bot, который позволяет оформлять карты в майндмэпах от coggle.it

Обе площадки доступны в платной и бесплатной версии. Объема функций free trial достаточно для того, чтобы сделать двух простых ботов.

Разберем весь процесс поэтапно на примере создания помощника в Telegram. 

Подготовка

Регистрируемся на упомянутых выше сервисах. Дальше:

#1. Заходим в бот @botfather.

#2. Следуя инструкциям, создаем бота.

#3. Копируем токен, который дает @botfather.

#4. Подключаем свежесозданный бот к Pipe: вводим токен на сайте https://pipe.bot.

#5. Cвязываем его с сайтом https://coggle.it.

#6. Если вы уже создали карту в Coggle, можно сразу ее привязать. Если нет, вернитесь к этому шагу позже.

Чтобы объединить карты из Coggle и Pipe, зайдите в Pipe и выберите нужную папку с картами. После этого нажмите Connect.

Главные знания и формулы

Наш чат-бот состоит из сценариев — определенной логики взаимодействия пользователя с помощником, продуманного на несколько шагов, и вариантов развития диалога. Под «капотом» у каждого сценария — карта вопросов-ответов, созданная в Coggle.

Вот базовые команды, с которыми вы будете работать:

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

В рамках одного бота могут существовать несколько сценариев или активностей.

Обычное сообщение — это то, что бот пришлет человеку. Для его создания дополнительные знаки не нужны.

//Ответ — это кнопка в боте, которая будет выступать в качестве реплики вашего клиента. Перед ней должны стоять две черточки. 

@link — метка. С ее помощью можно определять, на каком этапе взаимодействия пользователь «отпал», путешествовать по боту и переключать разные ветки сценария.

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

%colour=red — значение переменной. То есть какое это явление. %Colour=red — читать как «его цвет — красный».

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

@mapНазвание карты — это команда для вызова другой карты. Важно! Чтобы все работало, название карты нужно указывать точно так, как вы ее назвали — проще всего скопировать и вставить этот текст. 

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

Создаем первую карту

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

Теперь создайте свою первую карту.

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

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

Лайфхак: есть типы карт, для которых лучше использовать универсальные эмодзи:

✅ Root

👋 Onboarding

🛠 Menu

Этап 1: Начало сценария

Начните свою карту с метки @start — это позволит вам возвращать пользователей в начало карты и корректно переводить из одной карты в другую.

Теперь вы можете ввести первое сообщение. Добавьте новую ветку от метки @start.

Введите сообщение. У Coggle есть ограничение по символам — не более 120 знаков в одном сообщении. При необходимости это правило можно обойти. Если вам все же нужно больше текста — используйте команду %text = сообщение. 

Простейший сценарий онбординга будет выглядеть так:

В этом сценарии бот представляется человеку, спрашивает его имя и узнает о желании обучаться. Всех, кто прошел этот этап, бот отмечает отдельной функцией — %onboarding=true.

Метки и переходы

Между ветвями сценария могут быть метки. Они добавляются с помощью команды @link, называть их можно как угодно, но одним словом. Желательно, чтобы название соответствовало контексту метки — зачем вы ставите ее именно здесь и что хотите отследить на этом этапе.

Чтобы перебросить человека в вашу метку:

#1. Выберите сообщение, из которого она будет перепрыгивать.

#2. Нажмите на него правой кнопкой мыши.

#3. Удерживая мышку, нажмите Shift. Вместо значка с горизонтальным ромбом появится пунктирная линия.

#4. Выберите пунктирную линию.

#5. Перетащите до метки, тяните прямо на название.

Открытые вопросы

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

Чтобы человек мог ввести ответ — используйте команду %% .... Например, %%name, %%position, %%strangeAnimal.

Переменная такого человека будет записываться следующим образом: %name=Роман.

Расставляйте переменные между ветвями сценария, чтобы понять, как далеко человек прошел по сюжету. Например, %onboarding=true — это значит, что пользователь закончил обучающую часть или знакомство с ботом. 

С помощью таких меток вы сможете отследить, какие темы человек просмотрел, а где — застрял.

Весь бизнес-контент в удобном формате. Интервью, кейсы, лайфхаки корп. мира — в нашем телеграм-канале. Присоединяйтесь!

Лайфхак: как правильно организовать структуру бота

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

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

Чтобы перебросить человека из одной карты на другую — введите команду @mapНазвание карты.

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

Легче всего потренироваться с «картами в картах» в меню. Вот как выглядит типичное меню любого бота.

С помощью карт в картах вы можете создать общую логику бота.

Вот так выглядит наиболее простой вариант. Здесь написано: если человек прошел онбординг — перебросьте его в меню, если не прошел — переведите в онбординг.

Как это работает в реальности?

Чтобы не быть голословным, автор прошел с вами от начала и до конца весь процесс создания чат-бота. Потестировать простейший бот в три шага, построенный на одной карте, и убедиться, что он работает, можно здесь: t.me/DemoLabaBot.

Подписывайтесь на нашу рассылку

Спасибо за подписку!