Graph автоматически создает системные переменные. Вы можете оперировать системными переменными, как и собственными.
$queryText
В переменной $queryText
хранится полный текст текущего пользовательского запроса в формате строки.
Используйте переменную если необходимо обработать, передать или сохранить запрос пользователя.
Например вы можете сохранить запрос пользователя в базе данных с помощью блока HTTP-запрос.
Для этого передайте переменную в теле запроса, в виде значения одного из полей, например:
{
"var1": "$queryText"
}
$userId
Уникальный идентификатор пользователя, который не меняется со временем. Этот идентификатор является уникальным только для пары чат-бот-пользователь. То есть, если тот же самый пользователь обратится к другому вашему чат-боту, то идентификатор уже будет другим.
$rawRequest
Позволяет получить содержание запроса в формате протокола чат-бота, который поступил в чат-бот.
Пример запроса можно посмотреть в разделе SmartApp API. Эта переменная может пригодиться, если вам нужно получить какие-то дополнительные данные из изначального запроса (например, информация о голосе ассистента, который выбрал пользователь).
Пример работы с $rawRequest
описан в разделе Обработка данных запроса.
$lastSeen
В этой системной переменной хранится информация о том, сколько секунд назад был предыдущий запрос от этого пользователя. Если пользователь пришел в первый раз, то в переменной будет undefined
. Эту переменную можно использовать, чтобы изменять логику чат-бота для новых и уже известных пользователей. А также чтобы изменять логику, если чат-бот видел пользователя давно и недавно.
Вы можете использовать эту переменную без определения времени. В этом случае переменная будет просто определять, впервые пользователь обратился к чат-боту или нет.
Либо вы можете задать временной интервал последнего обращения. Значение может быть задано в блоке условий подобным образом:
$lastSeen > 600
.
Здесь 600 - это 600 секунд, то есть, 10 минут. Чат-бот будет выдавать реплику "С возвращением!" если пользователь обращался более 10 минут назад, иначе - будет говорить "Привет!"
$httpResponse
В переменной сохраняется тело ответа на HTTP-запросы, выполненные с помощью блока HTTP-запрос. Для доступа к полям ответа используйте точечную нотацию.
$userChannel
Тип | Описание |
---|---|
Виджет на сайте | $request.userChannel === "WIDGET" |
Страница чат-виджета jivo | $request.userChannel === "CHAT_PAGE" |
Электронная почта | $request.userChannel === "EMAIL" |
Telegram | $request.userChannel === "TELEGRAM" |
Viber | $request.userChannel === "VIBER" |
ВКонтакте | $request.userChannel === "VKONTAKTE" |
Одноклассники | $request.userChannel === "ODNOKLASSNIKI" |
Яндекс. Мессенджер | $request.userChannel === "YANDEX" |
Avito | $request.userChannel === "AVITO" |
Мобильный SDK | $request.userChannel === "MOBILE_SDK" |
СМС-канал | $request.userChannel === "TELEPHONY" |
Aliexpress | $request.userChannel === "ALIEXPRESS" |
Chat API | $request.userChannel === "CHAT_API" |
Иначе | Срабатывает во всех остальных случаях (если пришло неизвестное название канала или пришло название канала, который пользователь не добавил в условие). |