Системные переменные создаются Aimylogic автоматически. Вы можете оперировать ими точно так же, как и переменными, которые вы добавили в блоках.

$queryText

В этой переменной хранится полный текст текущего пользовательского запроса.

С помощью переменной $queryText вы можете передавать введенный пользователем текст. Например, если вы используете блок Интенты, вы можете передать попавший туда текст с помощью HTTP-запроса и собирать все реакции пользователя, например, в свою гугл таблицу.

Для этого добавьте блок Условие и в нем напишите:

$reply = $queryText
Таким образом, мы создаем новую переменную $reply, которая будет содержать ввод пользователя. Далее, вы можете передать её с помощью сервиса IFTTT.



В блоке условий вы можете использовать любые Javascript выражения. В языке программирования Javascript знак равенства используется для присвоения, поэтому мы в этом случае не уравниваем содержание этих переменных, а превращаем содержание системной переменной $queryText в содержание переменной $reply.

Затем вы можете выводить эту созданную переменную или передавать её сообщением в телеграм, письмом или отправлять в гугл-таблицу. И всё благодаря системной переменной $queryText.

$userId

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

$channelId

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

$channelType

Тип канала. Например chatwidget, telegram или yandex.

Если ваш бот опубликован в нескольких каналах, и по сценарию вам нужно разное поведение для разных каналов (например, вы используете содержание переменной $rawRequest, а оно для разных каналов разное), то вы можете добавить в начало сценария блок условий с определением канала:

VK:
$channelType == "vk"

Facebook messanger:
$channelType == "facebook"

Telegram:
$channelType == "telegram"

Яндекс.Алиса:
$channelType == "yandex"

else будет работать для всех остальных каналов.





$rawRequest

Запрос в том формате канала, из которого он поступил в бота. Например, для канала Яндекс Алиса будет такой формат. Эта переменная может пригодиться, если вам нужно получить какие-то дополнительные данные из изначального запроса (например, имя пользователя и тп).

Подробнее о $rawRequest читайте здесь.

$lastSeen

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

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



Либо вы можете задать временной интервал последнего обращения. Значение может быть задано в блоке условий подобным образом:
$lastSeen > 600


здесь 600 - это 600 секунд, то есть, 10 минут. Бот будет выдавать реплику "С возвращением!" если пользователь обращался более 10 минут назад, иначе - будет говорить "Привет!"
Была ли эта статья полезна?
отменить
Спасибо!