Использование функций в процессе
Как встроенные, так и пользовательские функции можно использовать тремя способами:
- в качестве отдельного шага в процессе;
- в виде инструмента для AI-агента;
- в коде других блоков.
Режим «Функция»
Базовый режим, чтобы использовать функцию как отдельный шаг в процессе.
- Как работает: система вызывает выбранную функцию с заданными параметрами. Для получения результата в следующем блоке используйте метод
Context.getLastFunctionResult(). - Когда использовать: для задач, где вызов внешней системы — это четкий шаг в процессе. Например: «получить курс валют», «рассчитать доставку», «проверить статус заказа».
Настройка
- В левом меню перейдите в Конструктор → .
- Выберите Функции → Встроенные или Пользовательские → <Нужная коллекция>.
- Перетащите функцию на холст и укажите параметры. Вы можете задать их вручную или использовать JavaScript-выражения для динамической подстановки данных, например
{{'ID этого канала: ' + Context.getBotId()}}.
Режим «Инструмент»
Используется совместно с блоком Агент, позволяя AI самостоятельно решать, когда вызывать функцию.
- Как работает: вы не вызываете функцию напрямую — она становится «инструментом» для агента. Агент сам решает, когда и как ее использовать, исходя из диалога с пользователем.
- Когда использовать: для гибких систем, где агент взаимодействует с внешним миром: например, «забронируй переговорную» или «какой у меня баланс?».
Подробнее о настройке функций в режиме инструмента смотрите в разделе про блок «Агент».
Режим вызова
Функцию можно вызвать:
-
Из JavaScript-выражений в блоках Код и Условие. Пример смотрите в разделах Код и Условие.
-
Из кода других (пользовательских) функций.
-
Из параметров других функций.
Пример:
Добавлять функцию на холст при этом не требуется.
При вызове функций указывайте коллекцию, например:
// Вызов функции myFunction из коллекции MyCollection
MyCollection.myFunction();