Referencia de la API de Interactive Canvas

La API de Interactive Canvas es una biblioteca de JavaScript que se usa para interactuar con tu acción de conversación mediante el objeto interactiveCanvas en tu app web.

Para obtener más información sobre Interactive Canvas, consulta Interactive Canvas documentación.

Métodos

listo

ready(callbacks) returns undefined

La app web de Interactive Canvas lo llama una vez que se carga para registrar devoluciones de llamada.

Parámetros
callbacks InteractiveCanvasCallbacks

Un objeto que contiene devoluciones de llamada de métodos.

sendTextQuery

sendTextQuery(textQuery) returns Promise<state>

Envía una consulta de texto a la acción conversacional.

Parámetros
textQuery string

La consulta que se enviará a la acción conversacional.

state string

Uno de los siguientes:

READY: La plataforma puede aceptar las solicitudes.

BLOCKED: Hay una consulta en tránsito y la consulta nueva se descartará.

UNKNOWN: No se pudo determinar el estado actual de la consulta.

getHeaderHeightPx

getHeaderHeightPx() returns Promise<height>

Determina la altura del encabezado en la parte superior de una pantalla.

Parámetros
height number

Es la altura en píxeles.

outputTts

outputTts(text, openMic) returns undefined;

Reproduce texto SSML.

Parámetros
text string

La cadena compatible con SSML que se reproducirá.

openMic boolean

Establece si se debe activar el micrófono después de que se reproduzca el TTS.

createIntentHandler

createIntentHandler(intentId, callback) returns IntentHandler

Crea un controlador de intents para un intent personalizado de CLN.

Parámetros
intentId string

Es el nombre del intent como se define en Actions Builder.

callback function(MatchedIntent)

Función que se debe ejecutar cuando se detecta una coincidencia con el intent.

IntentHandler object

Objeto de controlador de intent que se puede registrar con expect().

IntentHandler

Un objeto que representa un controlador de intents. Se pueden registrar con expect() o prompt().

MatchedIntent

Un objeto que contiene los datos de un intent coincidente.

Métodos
getIntentArg(parameterName) function(string)

Es el método para obtener el parámetro de intent de un intent coincidente.

createNumberSlot

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

Crea un espacio de tipo número.

Parámetros
callback function(FilledSlot)

Es la función que se ejecuta cuando se llena el espacio.

hints Hints

Palabras cortas que el usuario podría decir al llenar un espacio. hints para ayudar al sistema de CLN a decidir qué ranura rellenar.

Slot object

Es un objeto de espacio que se puede registrar con prompt().

createTextSlot

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

Crea un espacio del tipo "string".

Parámetros
callback function(FilledSlot)

Es la función que se ejecuta cuando se llena el espacio.

hints Hints

Palabras cortas que el usuario podría decir al llenar un espacio. hints para ayudar al sistema de CLN a decidir qué ranura rellenar.

Slot object

Es un objeto de espacio que se puede registrar con prompt().

createConfirmationSlot

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

Crea un espacio de tipo booleano.

Parámetros
callback function(FilledSlot)

Es la función que se ejecuta cuando se llena el espacio.

hints Hints

Palabras cortas que el usuario podría decir al llenar un espacio. hints para ayudar al sistema de CLN a decidir qué ranura rellenar.

Slot object

Es un objeto de espacio que se puede registrar con prompt().

createOptionsSlot

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

Crea un espacio a partir de una lista predefinida de opciones.

Parámetros
options array<Option>

Es la función que se ejecuta cuando se llena el espacio.

callback function(FilledSlot)

Es la función que se ejecuta cuando se llena el espacio.

hints Hints

Palabras cortas que el usuario podría decir al llenar un espacio. hints para ayudar al sistema de CLN a decidir qué ranura rellenar.

Slot object

Es un objeto de espacio que se puede registrar con prompt().

Ranura

Un objeto que representa un espacio que se debe rellenar. Se pueden registrar con expect() o prompt().

FilledSlot&lt;T&gt;

Objeto que representa un espacio lleno.

Parámetro
T boolean|number|string

Es el tipo de ranura.

Opción

Un objeto que representa una entrada de tipo de ranura.

Campos
key string

Es el identificador único de la entrada del tipo de ranura.

synonyms array<string>

Es una lista de palabras que se usan para seleccionar la opción de espacio.

Sugerencias

Un objeto que representa sugerencias para una ranura.

Campos
associatedWords array<string>

Una lista de palabras que se usan para ayudar al sistema de CLN a decidir qué ranura rellenar.

Espera

expect(expectation) returns HandlerRegistration

Registra la expectativa del cliente. Se puede llamar en ranuras y controladores de intents.

Parámetros
expectation IntentHandler|Slot

La ranura o el controlador del intent que se registrará.

HandlerRegistration object

La ranura o el controlador de intent registrado.

HandlerRegistration

Un objeto que representa un controlador de intents registrado.

Métodos
deleteHandler() function

Cancela el registro del controlador de intents esperado.

clearExpectations

clearExpectations() returns undefined;

Quita todas las expectativas, ya que borra todas las ranuras y los controladores de intents registrados con anterioridad.

mensaje

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

Solicita al usuario la cadena de TTS proporcionada y registra la expectativa en el cliente. Se puede llamar en ranuras y controladores de intents.

Parámetros
tts string

Es la cadena de TTS que se usa para solicitarle al usuario la expectativa proporcionada.

expectation IntentHandler|Slot

La ranura o el controlador del intent que se registrará.

Answer<T> object

Es la respuesta a la instrucción proporcionada por el usuario.

Respuesta<T>

Un objeto que representa una respuesta que proporciona el usuario a una instrucción.

Campos
value boolean|number|string

Es el valor de la respuesta proporcionada por el usuario.

status string

El estado de la respuesta.

Uno de los siguientes:

ANSWERED: El usuario respondió la instrucción.

NO_MATCH: Se le solicitó al usuario una respuesta que no coincidía con la respuesta esperada o con ningún otro intent esperado.

YIELD: El usuario respondió al mensaje con un intent diferente.

triggerScene

triggerScene(sceneName) returns Promise<TriggerSceneStatus>

Activa una escena.

Parámetros
sceneName string

El nombre de la escena que se activará.

TriggerSceneStatus string

Es el estado de la llamada a triggerScene().

Uno de los siguientes:

SUCCESS: El servidor procesó correctamente la solicitud.

BLOCKED: Una consulta existente bloqueó la solicitud.

UNKNOWN: Se desconoce el estado de la solicitud.

setUserParam

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

Establece el par clave-valor que se pasa y se conserva entre conversaciones.

Parámetros
key string

La clave del parámetro.

value object|array|boolean|number|string

Es el valor del parámetro.

getUserParam

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

Obtiene el valor del parámetro para la clave determinada si existe, y el estado de la invocación.

Parámetros
key string

La clave del parámetro.

resetUserParam

resetUserParam() returns Promise<void>;

Borra todos los parámetros del usuario.

setHomeParam

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

Establece el par clave-valor que se pasa y se conserva entre conversaciones.

Parámetros
key string

La clave del parámetro.

value object|array|boolean|number|string

Es el valor del parámetro.

getHomeParam

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

Obtiene el valor del parámetro para la clave determinada si existe, y el estado de la invocación.

Parámetros
key string

La clave del parámetro.

resetHomeParam

resetHomeParam() returns Promise<void>;

Borra todos los parámetros del usuario.

setCanvasState

setCanvasState(state) returns undefined

Notifica al Asistente que la app web de Canvas actualizó su estado. El setCanvasState no muestra un valor. Se puede acceder a la carga útil de estado conv.context.canvas.state.

Parámetros
state Object

El estado actualizado de la app de Canvas como un objeto JSON.

InteractiveCanvasCallbacks

Estas devoluciones de llamada te permiten responder a la información o las solicitudes de tu acción de conversación, mientras que los métodos proporcionan una forma de enviar información o solicitudes a tu acción de conversación.

onUpdate

onUpdate(data) returns Promise|undefined

Se llama cuando se envía una respuesta de Canvas desde la acción de conversación. El TTS comenzará cuando se resuelve la promesa que se devuelve o se agota el tiempo de espera después de 10 segundos.

Parámetros
data Object

Se actualizaron los datos que envió el webhook.

onTtsMark

onTtsMark(markName) returns undefined

Es la devolución de llamada que se invoca durante la reproducción de TTS.

Marcas especiales que siempre se activan:

  • START indica el inicio de la TTS.
  • END indica el final del TTS.
  • ERROR indica un error de reproducción del TTS.

También puedes definir marcas personalizadas con SSML y la etiqueta <mark>, como <mark name="custom"/>

Parámetros
markName string

Nombre de la marca invocado durante la reproducción de TTS

onInputStatusChanged

onInputStatusChanged(inputStatus) returns undefined

Notifica a la app de Canvas que cambió el estado de entrada del Asistente.

Parámetros
inputStatus Enum

Estado del procesamiento de entrada de texto o voz en el dispositivo. Lata ser la siguiente:

  • LISTENING : El micrófono está abierto.
  • IDLE : El micrófono está cerrado.
  • PROCESSING : Asistente está ejecutando un consulta (micrófono cerrado).