Leer en inglés

Compartir a través de


botbuilder-dialogs package

Clases

ChoiceFactory

Un conjunto de funciones de utilidad para ayudar con el formato de una actividad "message" que contiene una lista de opciones.

ComponentDialog

Clase base para un cuadro de diálogo que contiene otros diálogos secundarios.

Configurable

Clase base para todas las clases configurables.

Dialog

Define el comportamiento principal de todos los diálogos.

DialogContainer

Contenedor para un conjunto de diálogos.

DialogContext

El contexto del cuadro de diálogo actual gira con respecto a un DialogSet específico.

DialogContextError

Error que incluye contexto de diálogo adicional, incluida la pila de diálogos.

DialogEvents

Representa los eventos relacionados con el "ciclo de vida" del cuadro de diálogo.

DialogManager

Clase que ejecuta el sistema de diálogos.

DialogSet

Un conjunto relacionado de diálogos que se puede llamar entre sí.

DialogTurnStateConstants

Define las constantes de estado de turno del cuadro de diálogo.

DialogsBotComponent

Componente de bot para diálogos de bot.

DialogsComponentRegistration

Hace que el componente de diálogos esté disponible para la funcionalidad de registro del sistema.

DialogPath

Define la ruta de acceso para los diálogos disponibles.

DialogStateManager

DialogStateManager administra los ámbitos de memoria y las resoluciones de ruta de acceso.

AliasPathResolver

AliasXXX de mapas:> path.xxx ($foo => dialog.foo).

AtAtPathResolver

Asigna @@ => turn.recognized.entitites.xxx matriz.

AtPathResolver

Mapas @@ => turn.recognized.entitites.xxx[0]

DollarPathResolver

Asignaciones $xxx => dialog.xxx

HashPathResolver

Asignaciones #xxx => turn.recognized.intents.xxx

PercentPathResolver

Maps %xxx => class.xxx (también conocido como activeDialog.properties.xxx)

ScopePath

Define rutas de acceso para los ámbitos disponibles.

BotStateMemoryScope

Clase base para ámbitos de memoria basados en BotState.

ClassMemoryScope

ClassMemoryScope asigna "class":> dc.activeDialog.properties

ConversationMemoryScope

Memoria cuyo ámbito es la conversación actual.

DialogClassMemoryScope

DialogClassMemoryScope asigna "dialogClass":> dc.parent.activeDialog.properties

DialogContextMemoryScope

DialogContextMemoryScope asigna las propiedades "dialogcontext">.

DialogMemoryScope

DialogMemoryScope asigna "dialog":> dc.parent.activeDialog.state || dc.activeDialog.state

MemoryScope

Clase base abstracta para todos los ámbitos de memoria.

SettingsMemoryScope

SettingsMemoryScope asigna "settings":> dc.context.turnState['settings']

ThisMemoryScope

ThisMemoryScope asigna "this":> dc.activeDialog.state

TurnMemoryScope

TurnMemoryScope representa la memoria con ámbito del turno actual.

UserMemoryScope

Memoria cuyo ámbito es el usuario actual.

ThisPath

Define la ruta de acceso que se pasa al cuadro de diálogo activo.

TurnPath

Define la ruta de acceso para los giros avaiables.

ActivityPrompt

Espera a que se reciba una actividad.

AttachmentPrompt

Pide a un usuario que cargue datos adjuntos como imágenes.

ChoicePrompt

Pide a un usuario que seleccione una lista de opciones.

ConfirmPrompt

Pide a un usuario que confirme algo con una respuesta "sí" o "no".

DateTimePrompt

Pide a un usuario que escriba una expresión datetime.

NumberPrompt

Pide a un usuario que escriba un número.

OAuthPrompt

Crea un mensaje que pide al usuario que inicie sesión con el servicio Bot Frameworks Single Sign On (SSO).

Prompt

Clase base para todas las solicitudes.

PromptCultureModels

Contenedor de clases para los modelos de referencia cultural admitidos actualmente en confirmación y petición de elección.

TextPrompt

Pide a un usuario que escriba texto.

Recognizer

Clase base recognizer.

SkillDialog

Cuadro de diálogo especializado que puede encapsular llamadas remotas a una aptitud.

WaterfallDialog

Una cascada es un cuadro de diálogo optimizado para solicitar a un usuario una serie de preguntas.

WaterfallStepContext

Objeto de contexto pasado a un WaterfallStep.

Interfaces

BeginSkillDialogOptions

Una clase con argumentos de diálogo para un SkillDialog.

ChoiceFactoryOptions

Opciones adicionales que se usan para ajustar el formato de las listas de opciones.

Choice

Instancia de una opción que se puede usar para representar una opción a un usuario o reconocer algo que un usuario ha seleccionado.

FindChoicesOptions

Opciones para controlar el reconocimiento realizado por findChoices().

FoundChoice

Resultado devuelto por findChoices().

FindValuesOptions

Opciones de búsqueda básicas usadas para controlar cómo se reconocen las opciones en una expresión de usuarios.

FoundValue

INTERNAL: resultado de búsqueda sin procesar devuelto por findValues().

SortedValue

INTERNAL: valor que se puede ordenar y que todavía hace referencia a su posición original dentro de una matriz de origen. La función findChoices() expande las opciones pasadas a instancias de SortedValue individuales y las pasa a findValues(). Cada Choice individual puede dar lugar a varios sinónimos que se deben buscar, por lo que esta estructura de datos nos permite pasar cada sinónimo como un valor para buscar al tiempo que mantiene el índice de la elección de ese valor.

ModelResult

Resultado externo devuelto por un reconocedor de entidades como recognizeChoices().

Token

Token individual devuelto por un TokenizerFunction.

Converter

El convertidor convierte el objeto de un tipo a otro.

DialogConfiguration
DialogEvent
DialogInstance

Contiene información de estado para una instancia de un cuadro de diálogo en la pila.

DialogTurnResult

Representa el resultado del intento de inicio, continuación o manipulación de uno o varios diálogos de un contexto de diálogo.

DialogState

Contiene el estado del cuadro de diálogo, información sobre el estado de la pila de diálogos, para un DialogSet específico.

DialogManagerConfiguration
DialogManagerResult
DialogDependencies
ComponentMemoryScopes

Interfaz para enumerar ámbitos de memoria.

ComponentPathResolvers

Interfaz para declarar solucionadores de ruta de acceso.

DialogStateManagerConfiguration
PathResolver

Copyright (c) Microsoft Corporation. Todos los derechos reservados. Con licencia de MIT.

ChoiceDefaultsChoicePrompt
ChoiceDefaultsConfirmPrompt
DateTimeResolution

Resultado devuelto por el DateTimePrompt.

OAuthPromptSettings

Configuración que se usa para configurar una instancia de OAuthPrompt.

PromptOptions

Opciones de configuración básicas compatibles con todos los mensajes.

PromptRecognizerResult

Resultado devuelto por una función de reconocedor de mensajes.

PromptValidatorContext

Información contextual que se pasa a un PromptValidatorpersonalizado.

PromptCultureModel
RecognizerConfiguration
SkillDialogOptions
TemplateInterface

Define la interfaz de plantilla para enlazar datos a T.

WaterfallStepInfo

Valores pasados al constructor de WaterfallStepContext.

Alias de tipos

TokenizerFunction

Firma para un separador de palabras alternativo que se puede pasar a recognizeChoices(), findChoices()o findValues().

type TokenizerFunction = (text: string, locale?: string) => Token[];
ConverterFactory
PromptValidator

Firma de función para proporcionar un validador de solicitud personalizado.

type PromptValidator<T> = (prompt: PromptValidatorContext<T>) => Promise<boolean>;
WaterfallStep

Firma de función de un paso de cascada individual.

type WaterfallStep<O extends object = {}> = (step: WaterfallStepContext<O>) => Promise<DialogTurnResult>;

Enumeraciones

DialogReason

Indica por qué se llama a un método de diálogo.

DialogTurnStatus

Representa el estado de la pila de diálogos después de que un contexto de diálogo intente comenzar, continuar o manipular uno o varios diálogos. Consulte también

ListStyle

Controla la forma en que se presentan a un usuario las opciones de una ChoicePrompt o sí/no para un ConfirmPrompt.

Funciones

findChoices(string, string | Choice[], FindChoicesOptions)

Función de búsqueda de nivel medio para reconocer una opción en una expresión.

findValues(string, SortedValue[], FindValuesOptions)

INTERNAL: función de bajo nivel que busca un conjunto de valores dentro de una expresión. Las funciones de nivel superior, como findChoices() y recognizeChoices(), se superponen a esta función. En la mayoría de los casos, es más fácil llamar a una de las funciones de nivel superior, pero esta función contiene el algoritmo de búsqueda aproximada que impulsa el reconocimiento de opciones.

recognizeChoices(string, string | Choice[], FindChoicesOptions)

Función de alto nivel para reconocer una opción en una expresión de usuarios.

defaultTokenizer(string, string)

Tokenizador simple que se interrumpe en espacios y puntuación.

getActiveDialogContext(DialogContext)

Recorrer de forma recursiva la pila de dc para encontrar el controlador de dominio activo.

internalRun(TurnContext, string, DialogContext, DialogStateManagerConfiguration)
isFromParentToSkill(TurnContext)

Determina si la aptitud actúa como elemento primario de la aptitud.

runDialog(Dialog, TurnContext, StatePropertyAccessor<DialogState>)

Ejecuta un cuadro de diálogo desde un contexto y un descriptor de acceso especificados.

shouldSendEndOfConversationToParent(TurnContext, DialogTurnResult)

Asistente para determinar si deberíamos enviar un EoC al elemento primario o no.

isComponentMemoryScopes(unknown)

Compruebe si un ComponentRegistrationComponentMemoryScopes o no.

isComponentPathResolvers(unknown)

Compruebe si un ComponentRegistration deComponentPathResolvers o no.

createConnectorClient(TurnContext, string, ClaimsIdentity, string)
exchangeToken(TurnContext, OAuthPromptSettings, TokenExchangeRequest)
getSignInResource(TurnContext, OAuthPromptSettings)
getUserToken(TurnContext, OAuthPromptSettings, string)
signOutUser(TurnContext, OAuthPromptSettings)

Detalles de la función

findChoices(string, string | Choice[], FindChoicesOptions)

Función de búsqueda de nivel medio para reconocer una opción en una expresión.

function findChoices(utterance: string, choices: string | Choice[], options?: FindChoicesOptions): ModelResult<FoundChoice>[]

Parámetros

utterance

string

Texto o expresión de usuario que se va a buscar. Para una actividad de "mensaje" entrante, simplemente puede usar context.activity.text.

choices

string | Choice[]

Lista de opciones para buscar.

options
FindChoicesOptions

(Opcional) opciones usadas para ajustar la búsqueda que se realiza.

Devoluciones

Una lista de opciones encontradas, ordenadas por la más relevante en primer lugar.

Comentarios

Esta función está superpuesta a findValues() y simplemente determina todos los sinónimos que se deben buscar antes de llamar a findValues() para realizar la búsqueda real. La función recognizeChoices() está superpuesta a esta función y agrega la capacidad de seleccionar una opción por índice o posición ordinal en la lista. Llamar a esta función concreta es útil cuando no desea que el reconocimiento de posición ordinal y de índice se realice mediante recognizeChoices().

const { findChoices } = require('botbuilder-choices');

const choices = ['red', 'green', 'blue'];
const utterance = context.activity.text;
const results = findChoices(utterance, choices);
if (results.length == 1) {
    await context.sendActivity(`I like ${results[0].resolution.value} too!`);
} else if (results.length > 1) {
    const ambiguous = results.map((r) => r.resolution.value);
    await context.sendActivity(ChoiceFactory.forChannel(context, ambiguous, `Which one?`));
} else {
    await context.sendActivity(ChoiceFactory.forChannel(context, choices, `I didn't get that... Which color?`));
}

findValues(string, SortedValue[], FindValuesOptions)

INTERNAL: función de bajo nivel que busca un conjunto de valores dentro de una expresión. Las funciones de nivel superior, como findChoices() y recognizeChoices(), se superponen a esta función. En la mayoría de los casos, es más fácil llamar a una de las funciones de nivel superior, pero esta función contiene el algoritmo de búsqueda aproximada que impulsa el reconocimiento de opciones.

function findValues(utterance: string, values: SortedValue[], options?: FindValuesOptions): ModelResult<FoundValue>[]

Parámetros

utterance

string

Texto o expresión de usuario que se va a buscar.

values

SortedValue[]

Lista de valores que se van a buscar.

options
FindValuesOptions

(Opcional) opciones usadas para ajustar la búsqueda que se realiza.

Devoluciones

Lista de valores encontrados.

recognizeChoices(string, string | Choice[], FindChoicesOptions)

Función de alto nivel para reconocer una opción en una expresión de usuarios.

function recognizeChoices(utterance: string, choices: string | Choice[], options?: FindChoicesOptions): ModelResult<FoundChoice>[]

Parámetros

utterance

string

Texto o expresión de usuario que se va a buscar. Para una actividad de "mensaje" entrante, simplemente puede usar context.activity.text.

choices

string | Choice[]

Lista de opciones para buscar.

options
FindChoicesOptions

(Opcional) opciones usadas para ajustar la búsqueda que se realiza.

Devoluciones

Una lista de opciones encontradas, ordenadas por la más relevante en primer lugar.

Comentarios

Esto se coloca por encima de la función findChoices() y agrega lógica para permitir al usuario especificar su elección por índice (puede decir "uno" para elegir choice[0]) o posición ordinal (pueden decir "la segunda" para seleccionar choice[1]). La expresión de los usuarios se reconoce en el orden siguiente:

  • Por nombre mediante findChoices().
  • En la posición ordinal basada en 1.
  • En la posición de índice basada en 1.
const { recognizeChoices } = require('botbuilder-choices');

const choices = ['red', 'green', 'blue'];
const utterance = context.activity.text;
const results = recognizeChoices(utterance, choices);
if (results.length == 1) {
    await context.sendActivity(`I like ${results[0].resolution.value} too!`);
} else if (results.length > 1) {
    const ambiguous = results.map((r) => r.resolution.value);
    await context.sendActivity(ChoiceFactory.forChannel(context, ambiguous, `Which one?`));
} else {
    await context.sendActivity(ChoiceFactory.forChannel(context, choices, `I didn't get that... Which color?`));
}

defaultTokenizer(string, string)

Tokenizador simple que se interrumpe en espacios y puntuación.

function defaultTokenizer(text: string, _locale?: string): Token[]

Parámetros

text

string

Texto de entrada.

_locale

string

Opcional, identifica la configuración regional del texto de entrada.

Devoluciones

Token[]

Lista de tokens.

Comentarios

La única normalización realizada es minúsculas de los tokens. Los desarrolladores pueden encapsular este tokenizador con su propia función para realizar una normalización adicional, como lematización.

const { recognizeChoices, defaultTokenizer } = require('botbuilder-choices');
const stemmer = require('stemmer');

function customTokenizer(text, locale) {
   const tokens = defaultTokenizer(text, locale);
   tokens.forEach((t) => {
       t.normalized = stemmer(t.normalized);
   });
   return tokens;
}

const choices = ['red', 'green', 'blue'];
const utterance = context.activity.text;
const results = recognizeChoices(utterance, choices, { tokenizer: customTokenizer });

getActiveDialogContext(DialogContext)

Recorrer de forma recursiva la pila de dc para encontrar el controlador de dominio activo.

function getActiveDialogContext(dialogContext: DialogContext): DialogContext

Parámetros

dialogContext
DialogContext

(xref:botbuilder-dialogs. DialogContext) para el turno actual de conversación con el usuario.

Devoluciones

Cuadro de diálogo activoContext.

internalRun(TurnContext, string, DialogContext, DialogStateManagerConfiguration)

function internalRun(context: TurnContext, dialogId: string, dialogContext: DialogContext, dialogStateManagerConfiguration?: DialogStateManagerConfiguration): Promise<DialogTurnResult>

Parámetros

context

TurnContext

TurnContext del turno.

dialogId

string

Identificador del cuadro de diálogo.

dialogContext
DialogContext

dialogContext para el turno actual de conversación.

dialogStateManagerConfiguration
DialogStateManagerConfiguration

Configuración del administrador de estado del cuadro de diálogo.

Devoluciones

Promise<DialogTurnResult>

una promesa que resuelve el resultado del turno del cuadro de diálogo.

isFromParentToSkill(TurnContext)

Determina si la aptitud actúa como elemento primario de la aptitud.

function isFromParentToSkill(context: TurnContext): boolean

Parámetros

context

TurnContext

(xref:botbuilder-core. TurnContext) objeto para el turno actual de conversación con el usuario.

Devoluciones

boolean

Valor booleano que representa si la aptitud actúa como elemento primario de la aptitud.

runDialog(Dialog, TurnContext, StatePropertyAccessor<DialogState>)

Ejecuta un cuadro de diálogo desde un contexto y un descriptor de acceso especificados.

function runDialog(dialog: Dialog, context: TurnContext, accessor: StatePropertyAccessor<DialogState>): Promise<void>

Parámetros

dialog
Dialog

cuadro de diálogo de que se va a ejecutar.

context

TurnContext

(xref:botbuilder-core. TurnContext) objeto para el turno actual de conversación con el usuario.

accessor

StatePropertyAccessor<DialogState>

Métodos definidos para acceder a la propiedad state creada en un objeto BotState.

Devoluciones

Promise<void>

shouldSendEndOfConversationToParent(TurnContext, DialogTurnResult)

Asistente para determinar si deberíamos enviar un EoC al elemento primario o no.

function shouldSendEndOfConversationToParent(context: TurnContext, turnResult: DialogTurnResult): boolean

Parámetros

context

TurnContext

TurnContext del turno.

turnResult
DialogTurnResult

Resultado del turno del cuadro de diálogo.

Devoluciones

boolean

True si debe enviar EoC; de lo contrario, false.

isComponentMemoryScopes(unknown)

Compruebe si un ComponentRegistrationComponentMemoryScopes o no.

function isComponentMemoryScopes(component: unknown): boolean

Parámetros

component

unknown

Registro de componentes.

Devoluciones

boolean

Escriba el resultado de la comprobación.

isComponentPathResolvers(unknown)

Compruebe si un ComponentRegistration deComponentPathResolvers o no.

function isComponentPathResolvers(component: unknown): boolean

Parámetros

component

unknown

Registro de componentes.

Devoluciones

boolean

Escriba el resultado de la comprobación.

createConnectorClient(TurnContext, string, ClaimsIdentity, string)

function createConnectorClient(context: TurnContext, serviceUrl: string, claimsIdentity: ClaimsIdentity, audience: string): Promise<ConnectorClient>

Parámetros

context

TurnContext

serviceUrl

string

claimsIdentity

ClaimsIdentity

audience

string

Devoluciones

Promise<ConnectorClient>

exchangeToken(TurnContext, OAuthPromptSettings, TokenExchangeRequest)

function exchangeToken(context: TurnContext, settings: OAuthPromptSettings, tokenExchangeRequest: TokenExchangeRequest): Promise<TokenResponse>

Parámetros

context

TurnContext

tokenExchangeRequest

TokenExchangeRequest

Devoluciones

Promise<TokenResponse>

getSignInResource(TurnContext, OAuthPromptSettings)

function getSignInResource(context: TurnContext, settings: OAuthPromptSettings): Promise<SignInUrlResponse>

Parámetros

context

TurnContext

Devoluciones

Promise<SignInUrlResponse>

getUserToken(TurnContext, OAuthPromptSettings, string)

function getUserToken(context: TurnContext, settings: OAuthPromptSettings, magicCode: string): Promise<TokenResponse>

Parámetros

context

TurnContext

magicCode

string

Devoluciones

Promise<TokenResponse>

signOutUser(TurnContext, OAuthPromptSettings)

function signOutUser(context: TurnContext, settings: OAuthPromptSettings): Promise<void>

Parámetros

context

TurnContext

Devoluciones

Promise<void>