ym88659208ym87991671
Переменная $session для JS API для смартапов | Документация для разработчиков

$session

Обновлено 15 декабря 2023

Объект, который хранит данные о сессии пользователя. Данные перезаписываются в начале новой сессии.

Новая сессия создается в сценарии с помощью тега реакций newSession.

Объект $session хранит ограниченное количество данных. При превышении объема текущий сценарий прерывается, смартап перестает отвечать клиенту.

Контекст диалога

Контекст диалога хранится в поле contextPath. Данные поля используются для восстановления контекста при следующем запросе пользователя.

Примеры

Получение текста последнего запроса пользователя:

theme: /

state: Start
q!: $regex</start>
a: Начнем.

state: Приветствие
intent!: /привет
a: Вы сказали {{$session.rawRequest.textRequest.text}}

Получение информации об имени из системной сущности:

require: zenflow.sc
module = sys.zfl-common

state: Hello
q!: * меня зовут $Name *
script:
$session.name = $parseTree._Name
a: Привет, {{ $session.name }}!

Получение идентификатора пользователя:

require: zenflow.sc
module = sys.zfl-common

theme: /

state: Fallback
event!: noMatch
a: Идентификатор пользователя: {{$session.userId}}

Для получения идентификатора пользователя с помощью переменной $session в проект необходимо подключить библиотеку zfl-common.

Идентификатор пользователя также можно получить из запроса пользователя.

ПАО Сбербанк использует cookie для персонализации сервисов и удобства пользователей.
Вы можете запретить сохранение cookie в настройках своего браузера.