Compartir a través de


botbuilder-dialogs package

Clases

ChoiceFactory

Un conjunto de funciones de utilidad para ayudar con el formato de una actividad de "mensaje" 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

Contexto del turno de diálogo actual 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

Conjunto relacionado de diálogos que se pueden llamar entre sí.

DialogTurnStateConstants

Define 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 los solucionadores 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

Mapas $xxx => dialog.xxx

HashPathResolver

#xxx de mapas => 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 "dialogcontext":> propiedades.

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 cuyo ámbito es el 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 de los turnos avaiables.

ActivityPrompt

Espera a que se reciba una actividad.

AttachmentPrompt

Solicita 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

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

NumberPrompt

Pide a un usuario que escriba un número.

OAuthPrompt

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

Prompt

Clase base para todos los mensajes.

PromptCultureModels

Contenedor de clases para los modelos de referencia cultural admitidos actualmente en el símbolo del sistema de confirmación y opción.

TextPrompt

Pide a un usuario que escriba texto.

Recognizer

Clase base recognizer.

SkillDialog

Un cuadro de diálogo especializado que puede ajustar las llamadas remotas a una aptitud.

WaterfallDialog

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

WaterfallStepContext

Objeto de contexto pasado a .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 seguir haciendo referencia a su posición original dentro de una matriz de origen. La findChoices() función expande las opciones pasadas a instancias individuales SortedValue y las pasa a findValues(). Cada individuo Choice 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 mientras se 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 .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 comenzar, continuar o manipular uno o varios diálogos de un contexto de diálogo.

DialogState

Contiene el estado del 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. Autorización sujeta a la licencia MIT.

ChoiceDefaultsChoicePrompt
ChoiceDefaultsConfirmPrompt
DateTimeResolution

Resultado devuelto por .DateTimePrompt

OAuthPromptSettings

Configuración usada para configurar una OAuthPrompt instancia de .

PromptOptions

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

PromptRecognizerResult

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

PromptValidatorContext

Información contextual que se pasa a un personalizado PromptValidator.

PromptCultureModel
RecognizerConfiguration
SkillDialogOptions
TemplateInterface

Define la interfaz de plantilla para enlazar datos a T.

WaterfallStepInfo

Valores pasados al WaterfallStepContext constructor.

Alias de tipos

TokenizerFunction

Firma de 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 o ChoicePrompt sí/no 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() están superpuestas por encima de esta función. En la mayoría de los casos, es más fácil llamar a una de las funciones de nivel superior en su lugar, pero esta función contiene el algoritmo de búsqueda aproximada que impulsa el reconocimiento de la elección.

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

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

defaultTokenizer(string, string)

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

getActiveDialogContext(DialogContext)

Recorrer de forma recursiva la pila del controlador de dominio 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 debemos enviar un EoC al elemento primario o no.

isComponentMemoryScopes(unknown)

Compruebe si componentRegistration es ComponentMemoryScopes o no.

isComponentPathResolvers(unknown)

Compruebe si componentRegistration es ComponentPathResolvers 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 del 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 las opciones encontradas, ordenadas por la más relevante en primer lugar.

Comentarios

Esta función está superpuesta findValues() y simplemente determina todos los sinónimos que se deben buscar antes de llamar findValues() a para realizar la búsqueda real. La recognizeChoices() función está superpuesta por encima de 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 en particular 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() están superpuestas por encima de esta función. En la mayoría de los casos, es más fácil llamar a una de las funciones de nivel superior en su lugar, pero esta función contiene el algoritmo de búsqueda aproximada que impulsa el reconocimiento de la elección.

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

Parámetros

utterance

string

Texto o expresión del 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 usuario.

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

Parámetros

utterance

string

Texto o expresión del 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 las opciones encontradas, ordenadas por la más relevante en primer lugar.

Comentarios

Esto se coloca por encima de la findChoices() función 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 (puede decir "el segundo" para elegir 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.
  • Por 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[]

Una lista de tokens.

Comentarios

La única normalización realizada es en minúsculas de los tokens. Los desarrolladores pueden encapsular este tokenizador con su propia función para realizar una normalización adicional, como la 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 del controlador de dominio 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

DialogContext activo.

internalRun(TurnContext, string, DialogContext, DialogStateManagerConfiguration)

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

Parámetros

context

TurnContext

TurnContext para el 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 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 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 debemos enviar un EoC al elemento primario o no.

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

Parámetros

context

TurnContext

TurnContext para el turno.

turnResult
DialogTurnResult

Resultado del turno del diálogo.

Devoluciones

boolean

True si debe enviar EoC; en caso contrario, false.

isComponentMemoryScopes(unknown)

Compruebe si componentRegistration es ComponentMemoryScopes 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 componentRegistration es ComponentPathResolvers 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>