На этой странице:

Этот блок позволяет роботу во время диалога с пользователем взаимодействовать с внешней или внутренней CRM-системой для обмена информации о клиенте посредством API. Робот может взаимодействовать с CRM-системой как для поиска и получения уже имеющейся информации о клиенте (место проживания, адрес места жительства, профессия), так и для сохранения новой информации о клиенте (например, наличие домашних животных, увлечения, интересы и т.д.), полученной во время диалога. При помощи данного блока робот также может использовать любые сетевые сервисы, которые доступны посредством API (например, калькулятор, конвертер величин, прогноз погоды, программа передач и др.).

Пример:

От клиента поступает входящий вызов. Робот идентифицирует номер телефона и отвечает на звонок. С помощью блока Запрос к серверу робот обращается в корпоративную CRM-систему, в которой хранятся клиентские данные, полная информация по всему предлагаемому ассортименту товаров, а также информация по статусам всех заказов. По номеру телефона робот получает информацию о клиенте и видит, что у клиента есть активный заказ. Робот обращается к клиенту по имени и до того, как клиент озвучивает цель звонка, интересуется, не хочет ли клиент узнать статус своего заказа. После утвердительного ответа робот предоставляет информацию о текущем статусе заказа.

Для лучшего понимания принципов работы блока Запрос к серверу рекомендуется прочитать информацию о синтаксисе формата JSON.

Блок

Свойства блока

СвойстваОписание

ID

Уникальный идентификатор блока.

Тип блока

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

При смене типа блока сбрасываются все данные, которые содержатся в полях блока. Кроме тех, что содержатся в поле Сообщение с просьбой подождать.

Маркер блока

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

Максимальное количество циклов (чаты)

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

Сообщение с просьбой подождать

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

Отправить немедленно

Позволяет отправить сообщения до полного формирования очереди.

Задержка перед отправкой сообщения

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

Задержка срабатывает лишь после получения ответа от клиента. Ответ клиента фиксируется в блоках «Вопрос» и «Пауза», поэтому задержка сработает лишь после этих блоков в сценарии. Все задержки ДО получения любого ответа клиента будут игнорироваться.

Добавить запись (Гибридный синтез)

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

Как часто говорить еще подождать

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

Сообщение с просьбой подождать еще немного

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

Параметр для уведомления

URL-адрес, на который осуществляется переход после выполнения запроса. Данный параметр является необязательным для использования. Вы можете использовать его для уведомления о выполнении запроса (например, отображать страницу с текстом стандартного сообщения или изображением).

Тип авторизации

Тип авторизации пользователя для обеспечения доступа к данным на сервере. Возможные значения данного параметра описываются ниже.

Выберите тип запроса

Тип запроса к серверу. Возможные значения данного параметра описываются ниже.

URL

Адрес страницы, с которой работает робот. Содержит параметры запроса и переменные.

В строке адреса страницы можно указать переменную, через которую можно передавать информацию в сервис, к которому обращается робот.

Cookie

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

Добавить элемент

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

Принудительный асинхронный режим

Опция позволяет боту ожидать ответа от клиента после отправки запроса к серверу.

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

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


Типы запросов

ТипОписаниеСкриншот
GET

Используется для получения данных от сервера.

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

1. URL – адрес страницы, с которой будет работать робот.

2. Cookie – значение cookie (если требуется для работы с методом стороннего сервиса).

3. Добавить элемент – значение заголовка (если требуется для работы с методом стороннего сервиса).

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


Если вы используете в сценарии переменные, которые принимают значения true или false, в ответе сервера их значения будут отображаться так:

  • 1 - true
  • "" - false

POST

Применяется для отправки данных на сервер.

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

1. URL – адрес страницы, с которой будет работать робот.

2. Cookie значение cookie (если требуется для работы с методом стороннего сервиса).

3. Добавить элемент – значение заголовка (если требуется для работы с методом стороннего сервиса).

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

5. Выберите тип содержимого – тип передаваемого содержимого. Возможные значения:

  • JSON - данные передаются в формате JSON
  • Form - данные передаются в текстовой форме

6. Добавить элемент  позволяет установить порядок указания ключа и значения.

Например: если нужно отправлять данные в теле запроса, то ключ first_name нужно записать в левое поле, а его значение Владимир следует записать в правое поле.

{
"first_name" : "Владимир"
}

7. Название переменной с вложением – позволяет отправить в запросе вложенный файл.

Если вы используете в сценарии переменные, которые принимают значения true или false, в ответе сервера их значения будут отображаться так:

  • 1 - true
  • "" - false

Delete

Применяется для удаления данных на сервере. В запросе требуется указать ID изменяемого ресурса. 

Используя этот тип запроса, можно удалять данные о заказе, товаре и т.д.

1. URL – адрес страницы, с которой будет работать робот.

2. Cookie – значение cookie (если требуется для работы с методом стороннего сервиса).

3. Добавить элемент – значение заголовка (если требуется для работы с методом стороннего сервиса).

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

Put

Применяется для отправки данных на сервер. В запросе требуется указать ID изменяемого ресурса. 

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

1. URL – адрес страницы, с которой будет работать робот.

2. Cookie – значение cookie (если требуется для работы с методом стороннего сервиса).

3. Добавить элемент – значение заголовка (если требуется для работы с методом стороннего сервиса).

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

5. Выберите тип содержимого – тип передаваемого содержимого. Возможные значения:

  • JSON - данные передаются в формате JSON
  • Form - данные передаются в текстовой форме

6. Добавить элемент – позволяет установить порядок указания ключа и значения.

Например: если нужно отправлять данные в теле запроса, то ключ first_name нужно записать в левое поле, а его значение Владимир следует записать в правое поле.

{
"first_name" : "Владимир"
}

7. Название переменной с вложением – позволяет отправить в запросе вложенный файл.


Типы авторизации

ТипОписаниеСкриншот
Отсутствует

Этот тип используется, если для работы со страницей не требуется проходить авторизацию (например, если сервис находится в защищенном контуре).

1. Выберите тип запроса – один из типов запроса описанных выше.

2. URL – адрес страницы, с которой будет работать робот.

3. Cookie – значение cookie (если требуется для работы с методом стороннего сервиса).

4. Добавить элемент – значение заголовка (если требуется для работы с методом стороннего сервиса).

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

Логин/Пароль

Данный тип используется, если для работы со страницей требуется выполнить авторизацию по логину и паролю.

1. Имя пользователя – логин клиента.

2. Пароль – пароль клиента.

3. Выберите тип запроса – один из типов запроса описанных выше.

4. URL – адрес страницы, с которой будет работать робот.

5. Cookie – значение cookie (если требуется для работы с методом стороннего сервиса).

6. Добавить элемент – значение заголовка (если требуется для работы с методом стороннего сервиса).

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

Заголовок

Данный тип используется, если для работы со страницей требуется использовать авторизационный токен.

В этом случае требуется:

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

2. Значение ключа – имя ключа.

3. Выберите тип запроса – один из типов запроса описанных выше.

4. URL – адрес страницы, с которой будет работать робот.

Пример: Если в заголовке токен передается в ключе Authorization в следующем виде:

Authorization: Bearer t490da279fd42889f56

то в поле Тип авторизации нужно указать Bearer, а в поле Значение Ключа, нужно указать t490da279fd42889f56

5. Cookie – значение cookie (если требуется для работы с методом стороннего сервиса).

6. Добавить элемент – значение заголовка (если требуется для работы с методом стороннего сервиса).

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

Подробнее о схемах можно ознакомиться в следующей статье.


Стрелка

Свойства стрелки

ОписаниеСкриншот

1. Текст стрелки – вспомогательный текст, который позволяет создателю сценария ориентироваться в связях.

2. Тип – тип принятия решения. Переход к следующему блоку скрипта осуществляется при достижении определенного результата запроса (успешен или не успешен) или по умолчанию.

Типы стрелок

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

РезультатУспешно

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

Результат ответа от сервера будет сохранен в переменную result.

1. Успешность запроса – определяет успешность запроса.

2. Загрузить файл – возможность импорта условий и переменных из файла.

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

Подробнее о кодах состояния можно прочесть здесь.

4. Условия – набор условий, по которым принимается решение.

5. Добавить элемент – создание переменной, в которую будет записано значение из ответа от сервера.

Подробнее узнать о получении данных из ответа от сервера можно в этой статье.

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



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


  • Нет меток