Справочник по API интерактивного холста

Interactive Canvas API — это библиотека JavaScript, которую вы используете для взаимодействия с диалоговым действием с помощью объекта interactiveCanvas в своем веб-приложении.

Дополнительные сведения об Interactive Canvas см. в документации Interactive Canvas .

Методы

готовый

ready(callbacks) returns undefined

Вызывается веб-приложением Interactive Canvas после его загрузки для регистрации обратных вызовов.

Параметры
callbacks InteractiveCanvasCallbacks

Объект, содержащий обратные вызовы методов.

отправитьтекстовый запрос

sendTextQuery(textQuery) returns Promise<state>

Отправляет текстовый запрос диалоговому действию.

Параметры
textQuery string

Запрос для отправки диалоговому действию.

state string

Одно из следующего:

READY: Платформа может принимать запросы.

BLOCKED: выполняется запрос, и новый запрос будет удален.

UNKNOWN: Не удалось определить текущее состояние запроса.

getHeaderHeightPx

getHeaderHeightPx() returns Promise<height>

Определяет высоту заголовка в верхней части дисплея.

Параметры
height number

Высота в пикселях.

выводTts

outputTts(text, openMic) returns undefined;

Воспроизводит текст SSML.

Параметры
text string

Поддерживаемая SSML строка для воспроизведения.

openMic boolean

Открывать ли микрофон после воспроизведения TTS.

createIntentHandler

createIntentHandler(intentId, callback) returns IntentHandler

Создает обработчик намерения для пользовательского намерения NLU.

Параметры
intentId string

Имя намерения, определенное в Actions Builder.

callback function( MatchedIntent )

Функция, которая будет выполняться при совпадении намерения.

IntentHandler object

Объект обработчика намерений, который можно зарегистрировать с помощью expect() .

IntentHandler

Объект, представляющий обработчик намерений. Можно зарегистрировать с помощью expect() или prompt() .

MatchedIntent

Объект, содержащий данные для совпадающего намерения.

Методы
getIntentArg(parameterName) function(string)

Метод для получения параметра намерения совпадающего намерения.

createNumberSlot

createNumberSlot(callback, hints?) returns Slot<number>

Создает слот типа number.

Параметры
callback function( FilledSlot )

Функция, которая будет выполняться при заполнении слота.

hints Hints

Короткие слова, которые пользователь может сказать при заполнении слота. hints помогают системе NLU решить, какой слот заполнить.

Slot object

Объект слота, который можно зарегистрировать с помощью prompt() .

создатьтекстовый слот

createTextSlot(callback, hints?) returns Slot<string>

Создает слот строкового типа.

Параметры
callback function( FilledSlot )

Функция, которая будет выполняться при заполнении слота.

hints Hints

Короткие слова, которые пользователь может сказать при заполнении слота. hints помогают системе NLU решить, какой слот заполнить.

Slot object

Объект слота, который можно зарегистрировать с помощью prompt() .

createConfirmationSlot

createConfirmationSlot(callback, hints?) returns Slot<boolean>

Создает слот логического типа.

Параметры
callback function( FilledSlot )

Функция, которая будет выполняться при заполнении слота.

hints Hints

Короткие слова, которые пользователь может сказать при заполнении слота. hints помогают системе NLU решить, какой слот заполнить.

Slot object

Объект слота, который можно зарегистрировать с помощью prompt() .

createOptionsSlot

createOptionsSlot(options, callback, hints?) returns Slot<string>

Создает слот из предварительно определенного списка опций.

Параметры
options array< Option >
callback function( FilledSlot )

Функция, которая будет выполняться при заполнении слота.

hints Hints

Короткие слова, которые пользователь может сказать при заполнении слота. hints помогают системе NLU решить, какой слот заполнить.

Slot object

Объект слота, который можно зарегистрировать с помощью prompt() .

Слот

Объект, представляющий слот для заполнения. Можно зарегистрировать с помощью expect() или prompt() .

Заполненный слот<T>

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

Параметр
T boolean|number|string

Тип слота.

Вариант

Объект, представляющий запись типа слота.

Поля
key string

Уникальный идентификатор для записи типа слота.

synonyms array<string>

Список слов, используемых для выбора опции слота.

Подсказки

Объект, представляющий подсказки для слота.

Поля
associatedWords array<string>

Список слов, используемых, чтобы помочь системе NLU решить, какой слот заполнить.

ожидать

expect(expectation) returns HandlerRegistration

Регистрирует ожидание клиента. Может вызываться для обработчиков намерений и слотов.

Параметры
expectation IntentHandler | Slot

Обработчик намерений или слот для регистрации.

HandlerRegistration object

Зарегистрированный обработчик намерений или слот.

ОбработчикРегистрация

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

Методы
deleteHandler() function

Отменяет регистрацию ожидаемого обработчика намерений.

ясноОжидания

clearExpectations() returns undefined;

Удаляет все ожидания, удаляя все ранее зарегистрированные обработчики намерений и слоты.

быстрый

prompt(tts, expectation) returns Promise<Answer<T>>

Запрашивает у пользователя предоставленную строку TTS и регистрирует ожидание на клиенте. Может вызываться для обработчиков намерений и слотов.

Параметры
tts string

Строка TTS, используемая для запроса пользователю предоставленного ожидания.

expectation IntentHandler | Slot

Обработчик намерений или слот для регистрации.

Answer<T> object

Пользовательский ответ на приглашение.

Ответ<Т>

Объект, представляющий предоставленный пользователем ответ на приглашение.

Поля
value boolean|number|string

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

status string

Статус ответа.

Одно из следующего:

ANSWERED: Пользователь ответил на приглашение.

NO_MATCH: пользователю было предложено ответить, и он ответил ответом, который не соответствовал ожидаемому ответу или любому другому ожидаемому намерению.

YIELD: пользователь ответил на приглашение с другим намерением.

триггерсцена

triggerScene(sceneName) returns Promise<TriggerSceneStatus>

Запускает сцену.

Параметры
sceneName string

Имя сцены для запуска.

TriggerSceneStatus string

Статус вызова triggerScene().

Одно из следующего:

SUCCESS: Запрос успешно обработан сервером.

BLOCKED: запрос был заблокирован существующим запросом в процессе выполнения.

UNKNOWN: статус запроса неизвестен.

setUserParam

setUserParam(key, value) returns Promise<undefined>;

Задает пару ключ-значение, которая передается и сохраняется между диалогами.

Параметры
key string

Ключ параметра.

value object|array|boolean|number|string

Значение параметра.

получитьUserParam

getUserParam(key) returns Promise<object|array|boolean|number|string>;

Получает значение параметра для данного ключа, если он существует, и статус вызова.

Параметры
key string

Ключ параметра.

resetUserParam

resetUserParam() returns Promise<void>;

Очищает все пользовательские параметры.

setHomeParam

setHomeParam(key, value) returns Promise<undefined>;

Задает пару ключ-значение, которая передается и сохраняется между диалогами.

Параметры
key string

Ключ параметра.

value object|array|boolean|number|string

Значение параметра.

getHomeParam

getHomeParam(key) returns Promise<object|array|boolean|number|string>;

Получает значение параметра для данного ключа, если он существует, и статус вызова.

Параметры
key string

Ключ параметра.

resetHomeParam

resetHomeParam() returns Promise<void>;

Очищает все пользовательские параметры.

setCanvasState

setCanvasState(state) returns undefined

Уведомляет помощника о том, что веб-приложение Canvas обновило свое состояние. Метод setCanvasState не возвращает значение. Доступ к полезной нагрузке состояния можно получить через свойство conv.context.canvas.state .

Параметры
state Object

Обновленное состояние приложения Canvas как объекта JSON.

InteractiveCanvasCallbacks

Эти обратные вызовы предоставляют вам способ отвечать на информацию или запросы от вашего диалогового действия, в то время как методы предоставляют способ отправки информации или запросов вашему диалоговому действию.

при обновлении

onUpdate(data) returns Promise|undefined

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

Параметры
data Object

Обновленные данные, отправленные вебхуком.

onTtsMark

onTtsMark(markName) returns undefined

Обратный вызов, который вызывается во время воспроизведения TTS.

Специальные метки, которые срабатывают всегда:

  • START указывает на начало TTS.
  • END указывает на конец TTS.
  • ERROR указывает на ошибку воспроизведения TTS.

Вы также можете определить пользовательские метки с помощью SSML и тега <mark> , например <mark name="custom"/> .

Параметры
markName string

Имя метки, вызываемое во время воспроизведения TTS.

onInputStatusChanged

onInputStatusChanged(inputStatus) returns undefined

Уведомляет приложение Canvas об изменении состояния ввода помощника.

Параметры
inputStatus Enum

Статус обработки голосового и/или текстового ввода на устройстве. Может быть следующим:

  • LISTENING : микрофон открыт.
  • IDLE : микрофон закрыт.
  • PROCESSING : Ассистент в данный момент выполняет запрос (микрофон закрыт).