API Interactive Canvas — это библиотека JavaScript, которую вы используете для взаимодействия с вашим диалоговым действием с помощью объекта interactiveCanvas
в вашем веб-приложении.
Дополнительные сведения об Interactive Canvas см. в документации Interactive Canvas .
Методы
готовый
ready(callbacks) returns undefined
Вызывается веб-приложением Interactive Canvas после загрузки для регистрации обратных вызовов.
Параметры | |
---|---|
callbacks | InteractiveCanvasCallbacks Объект, содержащий обратные вызовы методов. |
sendTextQuery
sendTextQuery(textQuery) returns Promise<state>
Отправляет текстовый запрос на диалоговое действие.
Параметры | |
---|---|
textQuery | string Запрос для отправки диалоговому действию. |
state | string Одно из следующих: |
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 Объект обработчика намерения, который можно зарегистрировать с помощью |
IntentHandler
Объект, представляющий обработчик намерения. Можно зарегистрировать с помощью expect()
или prompt()
.
Соответствующее намерение
Объект, содержащий данные для совпадающего намерения.
Методы | |
---|---|
getIntentArg(parameterName) | function(string) Метод для получения параметра намерения совпадающего намерения. |
создатьNumberSlot
createNumberSlot(callback, hints?) returns Slot<number>
Создает слот с номером типа.
Параметры | |
---|---|
callback | function( FilledSlot ) Функция, которая будет выполняться, когда слот заполнен. |
hints | Hints Короткие слова, которые пользователь может произнести при заполнении слота. |
Slot | object Объект Slot, который можно зарегистрировать с помощью |
создатьTextSlot
createTextSlot(callback, hints?) returns Slot<string>
Создает слот строкового типа.
Параметры | |
---|---|
callback | function( FilledSlot ) Функция, которая будет выполняться, когда слот заполнен. |
hints | Hints Короткие слова, которые пользователь может произнести при заполнении слота. |
Slot | object Объект Slot, который можно зарегистрировать с помощью |
создатьСлот подтверждения
createConfirmationSlot(callback, hints?) returns Slot<boolean>
Создает слот логического типа.
Параметры | |
---|---|
callback | function( FilledSlot ) Функция, которая будет выполняться, когда слот заполнен. |
hints | Hints Короткие слова, которые пользователь может произнести при заполнении слота. |
Slot | object Объект слота, который можно зарегистрировать с помощью |
СоздатьОпцииСлот
createOptionsSlot(options, callback, hints?) returns Slot<string>
Создает слот из заранее определенного списка опций.
Параметры | |
---|---|
options | array< Option > Функция, которая будет выполняться, когда слот заполнен. |
callback | function( FilledSlot ) Функция, которая будет выполняться, когда слот заполнен. |
hints | Hints Короткие слова, которые пользователь может произнести при заполнении слота. |
Slot | object Объект слота, который можно зарегистрировать с помощью |
Слот
Объект, представляющий слот, который необходимо заполнить. Можно зарегистрировать с помощью 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 Статус ответа. Одно из следующих: |
триггерСцена
triggerScene(sceneName) returns Promise<TriggerSceneStatus>
Запускает сцену.
Параметры | |
---|---|
sceneName | string Имя запускаемой сцены. |
TriggerSceneStatus | string Статус вызова триггераScene(). Одно из следующих: |
setUserParam
setUserParam(key, value) returns Promise<undefined>;
Устанавливает пару ключ-значение, которая передается и сохраняется между диалогами.
Параметры | |
---|---|
key | string Ключ параметра. |
value | object|array|boolean|number|string Значение параметра. |
getUserParam
getUserParam(key) returns Promise<object|array|boolean|number|string>;
Получает значение параметра для данного ключа, если он существует, и состояние вызова.
Параметры | |
---|---|
key | string Ключ параметра. |
сбросUserParam
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 Ключ параметра. |
сбросHomeParam
resetHomeParam() returns Promise<void>;
Очищает все пользовательские параметры.
setCanvasState
setCanvasState(state) returns undefined
Уведомляет Ассистента о том, что веб-приложение Canvas обновило свое состояние. Метод setCanvasState
не возвращает значение. Доступ к полезной нагрузке состояния можно получить через свойство conv.context.canvas.state
.
Параметры | |
---|---|
state | Object Обновленное состояние приложения Canvas как объекта JSON. |
Интерактивный холст
Эти обратные вызовы предоставляют вам возможность отвечать на информацию или запросы вашего диалогового действия, в то время как методы предоставляют способ отправлять информацию или запросы в ваше диалоговое действие.
onUpdate
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 Статус обработки голосового и/или текстового ввода на устройстве. Может быть следующим:
|