Запись в CRM — пример реализации
В этом уроке мы опишем кейс с созданием карточки в CRM Битрикс24. Данный урок также может быть полезен вам, если вы хотите собирать данные у клиента и отправлять их в Telegram, в ВКонтакте, в Google Таблицу или себе на почту.
- Добавим экран приветствия.
Добавим блок Текст и разместим приветственное сообщение, например:
Здесь вы можете подобрать интересующий вас букет из роз.Какие розы и в каком количестве вы хотите заказать?

- Добавим справочники сущностей.
Нажмите Сохранить, затем перейдите на вкладку Сущности.


Создайте справочник под названием:
color


Здесь мы можем заполнить возможные цвета роз. Например, белый, красный, желтый.

Нажмите Сохранить изменения и вернитесь на вкладку Сущности.


Создайте справочник с названием:
flowers


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

Нажмите Сохранить изменения.

- Добавим интенты
Перейдите назад на вкладку Сценарий.
Добавьте на экран с приветствием блок Интенты и добавьте интент:



$NUMBER $color $flowers

Этот интент может принимать такой ввод как «10 белых роз» и «12 желтых роз».
Также, добавим интент:

$TEXT

Этот интент будет отлавливать любой текст, который не попадает в другие интенты. Также, этот интент нужен для корректного начала диалога в Битрикс24.
Нажмите Сохранить.

Свяжите интент $TEXT с экраном приветствия.

- Оформляем таблицу
Создайте Google Таблицу. Вот пример таблицы.

Скопируйте и вставьте названия столбцов в таблицу:
flower_name
flower_color
flowers_color_name
price
image

Заполним эти колонки.
Так как в нашем магазине пока только розы, первый столбец заполним значением Роза. Важно, чтобы название соответствовало наименованию в справочнике $flowers.
- В столбце flower_name напишите:
Роза
Роза
Роза

- В столбце flower_color запишем следующие значения
Красный
Желтый
Белый

- В столбце flowers_color_name напишем:
Красные розы
Желтые розы
Белые розы

- В столбце price заполним стоимость:
100
120
130

- В столбце image поместим ссылки на изображения. Они должны заканчиваться на
.jpg:
http://pukukurjers.lv/171-large_default/krasnye-rozy-50-60cm.jpg
https://primetytut.ru/wp-content/uploads/2018/06/rozy-buket-zheltye.jpg
https://www.rosemarkt.ru/resources/data/photos/561cc49270696/big.jpg

- Опубликуйте таблицу
Файл → Опубликовать в интернете → Опубликовать → Ок → Закройте всплывающее окно.
Путь из всплывающего окна копировать не нужно.

- Получите путь к таблице.
Откройте блокнот и скопируйте туда ссылку:
https://tools.aimylogic.com/api/googlesheet2json?sheet=1&id=
Затем найдите в пути страницы данный элемент:

Это идентификатор документа.
Скопируйте его и вставьте в блокнот после той строки, которую мы вставили ранее.
Это URL, который потребуется нам позже.
- Вернитесь в сценарий.
От интента $NUMBER $color $flowers создайте новый блок HTTP-запрос.

Оформите его следующим образом:
-
метод Get
-
URL: сюда нужно вставить URL, который получился у вас в блокноте.
-
На вкладке RESPONSE нажмите на плюс и добавьте:
Имя переменной
items
Значение
_.findWhere($httpResponse, {"flowername": $flowers, "flowercolor": $color})

С помощью этого запроса мы будем искать в таблице введенные пользователем значения.
Поля BODY и HEADERS заполнять не нужно.
- Уточнение заказа
- Свяжите вариант Завершен успешно с новым блоком Изображение.

Переключитесь на вкладку По ссылке и вставьте в поле URL картинки:
$items.image

Этот блок будет подтягивать соответст вующее изображение товара из Google Таблицы.
- На экран с изображением добавьте блок Текст:


$items.flowerscolorname есть в наличии по цене $items.price рублей. Вы заказали $NUMBER штук, оформляем?

- Также на экран с изображением и блоком Текст добавьте блок Интенты. Выберите готовые интенты Согласие и Отказ.

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

Свяжите интент Отказ с экраном приветствия.

- Подсчет суммы
От интента Согласие создайте блок Условия, в который скопируйте и вставьте:
$summ = $NUMBER * $items.price

Здесь мы умножает введенное количество на стоимость, и записываем в переменную $summ.
- Принимаем адрес.
От условия создайте новый блок text to $var.

В поле Сообщение напишите:
Введите адрес
В поле Имя переменной напишите:
address

Вот что у нас получится:

- Вариант Переход после ввода $address свяжите с новым блоком Номер телефона.

- От варианта Переход после ввода $phone создайте блок Изображение.
«По ссылке» → введите в поле Url картинки:
$items.image
13. На этот экран с изображением добавьте блок Текст:
$items.flowerscolorname на сумму $summ.Ваш адрес: $addressНомер телефона: $phoneВсе верно?

На этот же экран добавьте блок Интенты — Согласие и Отказ.

Свяжите вариант Любая другая фраза с этим же экраном, который содержит Изображение, Текст и Интенты.

Интент Отказ свяжите с экраном приветствия.

От интента Согласие создайте блок Интеграция с CRM.

Этот блок будет содержать следующее:
- Система:
BITRIX24 - Задача
Создать лида - Список параметров для записи:
- Название лида:
Клиент - Адрес
$address - Телефон контакта:
$phone - Комментарий:
$items.flowerscolorname на сумму $summ.

От варианта Данные сохранены создайте блок Текст:
Менеджер свяжется с вами в течение 15 минут.

От варианта Данные не записаны создайте блок Текст:
Произошла ошибка отправки данных $httpStatus. Не страшно, менеджер прочитает диалог и свяжется с вами!

Готово!
Теперь мы можем собрать у клиента данные по заказу и по итогу диалога с ботом создать карточку лида в Битрикс24.
