Описание класса UserAppController | Universal Bot

UserAppController extends BotController
in

Пример, позволяющий сохранить данные в локальном хранилище.

Локальное хранилище работает только для Алисы. Во всех других ботах, будет использована база данных.

Class LocalStorageController

Table of Contents

$buttons Кнопки отображаемые в приложении. Buttons
$card Карточки отображаемые в приложении. Card
$text Текст который отобразится пользователю. string
$tts Текст который услышит пользователь. string|null
$nlu Обработанный nlu в приложении. Nlu
$sound Звуки которые будут присутствовать в приложении. Sound
$userId Идентификатор пользователя. string|null
$userToken Пользовательский токен. Инициализируется когда пользователь авторизовался (Актуально для Алисы). string|null
$userMeta Meta данные пользователя. array|null
$messageId Id сообщения(Порядковый номер сообщения), необходим для того, чтобы понять в 1 раз пишет пользователь или нет. string|int|null
$userCommand Запрос пользователя в нижнем регистре. string|null
$originalUserCommand Оригинальный запрос пользователя. string|null
$payload Дополнительные параметры к запросу. array|null
$userData Пользовательские данные, сохраненные в приложении (Хранятся в бд либо в файле. Зависит от параметра mmApp.isSaveDb). array|null
$isAuth Запросить авторизацию для пользователя или нет (Актуально для Алисы). bool
$userEvents Определяет статус пользовательских событий, таких как успешная авторизация, либо оценка приложения. array
$state Пользовательское локальное хранилище (Актуально для Алисы и Маруси). array|null
$isScreen Наличие экрана. bool
$isEnd Завершение сессии. bool
$isSend Отправлять в конце запрос или нет. (Актуально для Vk и Telegram) False тогда, когда все запросы отправлены внутри логики приложения, и больше ничего отправлять не нужно. bool
$requestObject Полученный запрос. array|null
$oldIntentName Идентификатор предыдущего действия пользователя. string|null
$thisIntentName Идентификатор текущего действия пользователя. Чтобы не сохранять идентификатор предыдущей команды, стоит передавать null. string|null
$emotion Эмоция, с которой будет общаться приложение. Актуально для Сбер. string|null
$appeal Манера общения с пользователем. Общаемся на "Вы" или на "ты". string|null
$isSendRating Отправляет запрос на оценку приложения string
action() Обработка пользовательских команд. void
__construct() BotController constructor. mixed
intents() Получение всех обрабатываемых команд приложения. array
getIntent() Поиск нужной команды в пользовательском запросе. string|null
action() Обработка пользовательских команд. void
run() Запуск приложения. void

Properties

$buttons

Кнопки отображаемые в приложении.

public Buttons $buttons

$card

Карточки отображаемые в приложении.

public Card $card

$text

Текст который отобразится пользователю.

public string $text

$tts

Текст который услышит пользователь.

public string|null $tts
!Важно, если переменная заполняется для других типов приложения, тогда отправляется запрос в yandex speechkit для преобразования текста в звук. Полученный звук отправляется пользователю как аудио сообщение.

$sound

Звуки которые будут присутствовать в приложении.

public Sound $sound

$userId

Идентификатор пользователя.

public string|null $userId

$userToken

Пользовательский токен. Инициализируется когда пользователь авторизовался (Актуально для Алисы).

public string|null $userToken

$userMeta

Meta данные пользователя.

public array|null $userMeta

$messageId

Id сообщения(Порядковый номер сообщения), необходим для того, чтобы понять в 1 раз пишет пользователь или нет.

public string|int|null $messageId

$userCommand

Запрос пользователя в нижнем регистре.

public string|null $userCommand

$originalUserCommand

Оригинальный запрос пользователя.

public string|null $originalUserCommand

$payload

Дополнительные параметры к запросу.

public array|null $payload

$userData

Пользовательские данные, сохраненные в приложении (Хранятся в бд либо в файле. Зависит от параметра mmApp.isSaveDb).

public array|null $userData

$isAuth

Запросить авторизацию для пользователя или нет (Актуально для Алисы).

public bool $isAuth

$userEvents

Определяет статус пользовательских событий, таких как успешная авторизация, либо оценка приложения.

public array $userEvents

$state

Пользовательское локальное хранилище (Актуально для Алисы и Маруси).

public array|null $state

$isScreen

Наличие экрана.

public bool $isScreen

$isEnd

Завершение сессии.

public bool $isEnd

$isSend

Отправлять в конце запрос или нет. (Актуально для Vk и Telegram) False тогда, когда все запросы отправлены внутри логики приложения, и больше ничего отправлять не нужно.

public bool $isSend

$requestObject

Полученный запрос.

public array|null $requestObject

$oldIntentName

Идентификатор предыдущего действия пользователя.

public string|null $oldIntentName

$thisIntentName

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

public string|null $thisIntentName

$emotion

Эмоция, с которой будет общаться приложение. Актуально для Сбер.

public string|null $emotion

$appeal

Манера общения с пользователем. Общаемся на "Вы" или на "ты".

public string|null $appeal
Возможные значения: "official" - официальный тон общения(на Вы) "no_official" - Общаемся на ты null - можно использовать любой тон Актуально для Сбер

$isSendRating

Отправляет запрос на оценку приложения

public string $isSendRating

Methods

action()

Обработка пользовательских команд.

public action( $intentName : mixed ) : void

Если intentName === null, значит не удалось найти обрабатываемых команд в запросе. В таком случе стоит смотреть либо на предыдущую команду пользователя. Либо вернуть текст помощи.

Parameters
$intentName : mixed

Название действия.

__construct()

BotController constructor.

public __construct( ) : mixed
Return values
mixed

intents()

Получение всех обрабатываемых команд приложения.

protected final intents( ) : array
Return values
array

getIntent()

Поиск нужной команды в пользовательском запросе.

protected final getIntent( $text : string ) : string|null

В случае успеха вернет название действия.

Parameters
$text : string

Текст, в котором происходит поиск вхождений.

Return values
string|null

action()

Обработка пользовательских команд.

public abstract action( $intentName : string|null ) : void

Если intentName === null, значит не удалось найти обрабатываемых команд в запросе. В таком случе стоит смотреть либо на предыдущую команду пользователя. Либо вернуть текст помощи.

Parameters
$intentName : string|null

Название действия.

run()

Запуск приложения.

public run( ) : void
Tags
api

Search results