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 Объект Slot, который можно зарегистрировать с помощью   | 
СоздатьОпцииСлот
createOptionsSlot(options, callback, hints?) returns Slot<string>
Создает слот из заранее определенного списка опций.
| Параметры | |
|---|---|
 options |  array< Option >Функция, которая будет выполняться, когда слот заполнен.  | 
 callback |  function( FilledSlot )Функция, которая будет выполняться, когда слот заполнен.  | 
 hints |  Hints Короткие слова, которые пользователь может произнести при заполнении слота.   | 
 Slot |  object Объект Slot, который можно зарегистрировать с помощью   | 
Слот
 Объект, представляющий слот, который необходимо заполнить. Можно зарегистрировать с помощью 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Статус обработки голосового и/или текстового ввода на устройстве. Может быть следующим: 
  |