...
завершитьИЗакрытьДиалог()
Примеры сценариев
...
Сценарий с вызовом внешнего сервиса, разбором ответа в JS.
...
Code Block |
---|
установитьПеременную("host_cities", "https://api.autofaq.ai/v1/query") +
установитьПеременную("service_id", "121000") +
установитьПеременную("service_token", "939b8") +
установитьПеременную("other_score", "0.5") +
задатьПользователюВопрос("Уточните ваш город, пожалуйста?").сохранитьРезультат("city")+
вызвать.внешнийСервис("{host_cities}", "POST").сЗаголовками(("Content-Type", "application/json"),("charset", "utf-8")).сТеломСообщения("{\"service_token\": \"{service_token}\",\"service_id\":{service_id},\"query\":\"{city}\"}").сохранитьРезультатКакСтроку("results")+
выполнитьJs("""
var result = JSON.parse(results); var score = 0.0; var answer = '';
if (result.results.length > 0) {
answer = result.results[0]['answer']; score = result.results[0]['score'];
answer = answer.replace(/\n/g,'<br>');
}
var exit = {'answer':answer, 'score':score}; exit;
""") +
если("{http_code} > 210").то(завершитьСШаблоном("Что-то сломалось. Зайдите попозже."))+
если("{score} < {other_score}").то(завершитьСШаблоном("Вот в этом городе у нас ничего нет"))+
сообщениеПользователю.сШаблоном("В указанном городе можно приобрести по адресам: <br>{answer}")+
задатьПользователюВопрос("Все ок?").сВариантамиОтвета("Да", "А мне не выдают").сохранитьРезультат("what")+
если("{what} == Да").или("{what} == да").то(завершитьСШаблоном("ну и отлично. Всего хорошего!"))+
завершитьСНовымЗапросом("Перевести на оператора") |
...
Сценарий для интеграции на событие "Нажатие кнопки оператором"
...
Code Block |
---|
комментарий("Запуск интеграции по кнопке.")+
установитьПеременнуюВДиалог("Поле 2", значение = "Field 2", название = "Поле 2", показыватьОператору = true, обязательное = true, редактируемое = false)+
установитьПеременную("priority", "{\"v1\": \"Blocker\", \"v2\": \"Critical\", \"v3\": \"Major\", \"v4\": \"Minor\"}") +
добавитьПолеВФормуОператора(
форма = "Заведение заявки в Jira",
переменная = "t1",
название = "Что вам нужно сделать: ",
тип = "Нередактируемый текст",
значение = "Заполните форму"
) +
добавитьПолеВФормуОператора(
форма = "Заведение заявки в Jira",
переменная = "t2",
название = "Название заявки",
тип = "Однострочный редактируемый текст",
описание = "Введите название заводимой заявки",
значение = "Введите",
обязательное = true
) +
добавитьПолеВФормуОператора(
форма = "Заведение заявки в Jira",
переменная = "t3",
название = "Критичность",
тип = "Выпадающий список",
описание = "Выберите из списка критичность заявки",
обязательное = true,
значение = "v3",
варианты = "{priority}"
) +
добавитьПолеВФормуОператора(
форма = "Заведение заявки в Jira",
переменная = "t4",
название = "Описание",
тип = "Многострочный редактируемый текст",
описание = "Опишите вашу проблему",
обязательное = true
) +
добавитьПолеВФормуОператора(
форма = "Заведение заявки в Jira",
переменная = "t5",
название = "Уведомить руководителя?",
тип = "Переключатель",
обязательное = false
) +
установитьПеременную("tags", "{\"v1\": \"Teacher\", \"v2\": \"Student\", \"v3\": \"Sales\", \"v4\": \"Tech\"}") +
добавитьПолеВФормуОператора(
форма = "Заведение заявки в Jira",
переменная = "t6",
название = "Теги",
тип = "Множественный выбор",
описание = "Выберите теги, которыми пометить обращение",
варианты = "{tags}",
обязательное = true
) +
добавитьПолеВФормуОператора(
форма = "Заведение заявки в Jira",
переменная = "t7",
тип = "Целое число",
название = "Частота возникновения проблемы",
описание = "% пользователей, у которых возникает проблема"
) +
показатьФормуОператору(имя = "Заведение заявки в Jira") +
комментарий("Вот что у нас получилось: {t2}, {t3}, {t4}")+
комментарий("Конец сценария интеграции!") |