Лия - База Знаний
  • База знаний
  • 💻Обзор платформы
    • Намерения
      • Добавление намерения
      • Редактирование намерения
      • Как перераспределять намерения
      • Приоритизация намерений
      • Клонирование намерения
      • Добавление и удаление сущностей внутри намерения
      • Удаление намерения
      • Архивирование намерения
    • QA
    • Сущности
    • Тестовый чат
    • Обучение
      • Обучение на нераспознанных сообщениях
      • Обучение по кластерам
    • Создание сценария и работа с ним
      • Динамические сценарии
        • Тестирование в проекте
      • Реакции
        • Реакция Условие
      • Триггеры
      • Инструкция по сборке сценариев
      • Hello World бот
      • Как дообучать Лию
      • Алармные сценарии
  • 🤖Вопросы и ответы
    • Общие
    • Обучение и покрытие
    • Cценарии и намерения
    • Вопросы по приоритизации намерений
    • Датасет
    • Вопросы по аналитике
    • Распознавание
    • Безопасность
    • Интеграция
    • Ядро, языки, кейсы и др.
    • Словарь
    • Вопросы по сниппетам
    • Полезные кейсы
      • Как настроить бот для определения номера телефона и других данных и передачи их в контекст?
      • Как с помощью сниппета сделать API-запрос для обработки номера телефона и иных данных из сообщений?
  • 🤷‍♀️Работа с проектом
    • Как получить доступ к личному кабинету Лии?
    • Начало работы с проектом
    • Управление проектом
    • Безопасность
    • Управление командой
    • Журнал активности
    • Публикация
    • Аналитика
  • ⚙️Разработчикам
    • Подключение бота
      • Chat2Desk
      • Edna
      • Helpdeskeddy
      • Infobip
      • Jivochat
      • LiveChat
      • Omnidesk
      • Usedesk
      • Webim
      • Imotio
      • Chatwoot
    • Лия API
    • Минимальные требования для разработки динамического сценария
    • Работа со сниппетами
    • Контекст
    • Переменные личного кабинета
    • Интеграции
Powered by GitBook
On this page
  1. Вопросы и ответы

Вопросы по сниппетам

Как можно достать данные из контекста в Лии и использовать их в блоке "текст"?

Внутри текстового блока сценария можно получить доступ к контексту. Рассмотрим пример с установкой фактов из сниппета:

sync function snippet(core = new Core(), context = new Context()) {
    // Financial data configuration
    const balanceArray = [100, 200, 300];
    const currencies = ['USD', 'EUR', 'RUB'];

    // Client configuration
    const clientConfig = {
        type: 'vk',
        phone: 892512312312
    };

    // Set balance-related values
    context.set('balance', balanceArray);
    context.set('first_balance', balanceArray[0]);
    context.set('array', [...balanceArray]);

    // Set client information
    context.set('client_type', clientConfig.type);
    context.set('phone', clientConfig.phone);
    context.set('param_fill');

    // Set currency information
    context.set('currency', currencies);
}

По умолчанию mustache заменяет спец. символы на их html код (например, кавычку превращает в “"”). Если вы хотите получить строку без кодирования, используйте в шаблоне текста тройные фигурные скобки {{{paramName}}}. Например, ⁣{{phone}}}.

В случае ошибки выполнения сниппета (переход в ветку Ошибка) факты контекста, установленные в данном сниппете, не сохраняются. Любые события (реакции), генерируемые внутри сниппета, не отправляются.

Правильнее ли отправлять динамические данные после запроса из сниппета через core.sendText()?

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

Функция core.sendText отправляет строку (текст) из сниппета.

Пример отправки текстовой строки:

core.sendText('пример текста')

Пример отправки текста из заранее установленной переменной:

core.sendText(text5)

Функция core.sendButtons отправляет текстовые кнопки. Пример сниппета с core.sendButtons:

core.sendButtons('Are you agree with our conditions?',[
          {type: 'text', title: 'on the button', params: {text: 'sends as text'}},
          {type: 'text', title: 'on the button', params: {text: 'sends as text'}},
          {type: 'text', title: 'on the button', params: {text: 'sends as text'}},
        ]
);
PreviousСловарьNextПолезные кейсы

Last updated 6 months ago

🤖