botbuilder-dialogs package
类
ChoiceFactory |
一组实用工具函数,可帮助设置包含选项列表的“message”活动的格式。 |
ComponentDialog |
包含其他子对话的对话的基类。 |
Configurable |
所有可配置类的基类。 |
Dialog |
定义所有对话的核心行为。 |
DialogContainer |
一组对话框的容器。 |
DialogContext |
与特定 DialogSet相关的当前对话轮次的上下文。 |
DialogContextError |
包含额外对话上下文(包括对话堆栈)的错误。 |
DialogEvents |
表示与对话框的“生命周期”相关的事件。 |
DialogManager |
运行对话框系统的类。 |
DialogSet |
一组可以相互调用的相关对话。 |
DialogTurnStateConstants |
定义对话框轮次状态常量。 |
DialogsBotComponent |
机器人对话的机器人组件。 |
DialogsComponentRegistration |
使对话框组件可用于系统注册功能。 |
DialogPath |
定义可用对话的路径。 |
DialogStateManager |
DialogStateManager 管理内存范围和路径解析程序。 |
AliasPathResolver |
Maps aliasXXX -> path.xxx ($foo => dialog.foo)。 |
AtAtPathResolver |
地图 @@ => turn.recognized.entitites.xxx 数组。 |
AtPathResolver |
Maps @@ => turn.recognized.entitites.xxx[0] |
DollarPathResolver |
地图$xxx => dialog.xxx |
HashPathResolver |
地图 #xxx => turn.recognized.intents.xxx |
PercentPathResolver |
地图 %xxx => class.xxx (aka activeDialog.properties.xxx) |
ScopePath |
定义可用范围的路径。 |
BotStateMemoryScope |
基于 BotState 的内存范围的基类。 |
ClassMemoryScope |
ClassMemoryScope 映射“class”-> dc.activeDialog.properties |
ConversationMemoryScope |
范围限定为当前会话的内存。 |
DialogClassMemoryScope |
DialogClassMemoryScope 映射“dialogClass”-> dc.parent.activeDialog.properties |
DialogContextMemoryScope |
|
DialogMemoryScope |
DialogMemoryScope 映射“dialog”-> dc.parent.activeDialog.state ||dc.activeDialog.state |
MemoryScope |
所有内存范围的抽象基类。 |
SettingsMemoryScope |
SettingsMemoryScope 映射“settings”-> dc.context.turnState['settings'] |
ThisMemoryScope |
ThisMemoryScope 映射“this”-> dc.activeDialog.state |
TurnMemoryScope |
TurnMemoryScope 表示限定为当前轮次的内存。 |
UserMemoryScope |
限定为当前用户的内存。 |
ThisPath |
定义传递给活动对话框的路径。 |
TurnPath |
定义可实现的轮次的路径。 |
ActivityPrompt |
等待接收活动。 |
AttachmentPrompt |
提示用户上传像图像这样的附件。 |
ChoicePrompt |
提示用户从选项列表中选择。 |
ConfirmPrompt |
提示用户使用“是”或“否”响应确认某些内容。 |
DateTimePrompt |
提示用户输入日期/时间表达式。 |
NumberPrompt |
提示用户输入数字。 |
OAuthPrompt |
创建一个新提示,要求用户使用 Bot Frameworks 单一登录 (SSO) 服务登录。 |
Prompt |
所有提示的基类。 |
PromptCultureModels |
“确认”和“选择提示”中当前支持的区域性模型的类容器。 |
TextPrompt |
提示用户输入一些文本。 |
Recognizer |
识别器基类。 |
SkillDialog |
一个专用对话,可以包装对技能的远程调用。 |
WaterfallDialog |
瀑布图是一个经过优化的对话框,用于提示用户出现一系列问题。 |
WaterfallStepContext |
传入 |
接口
BeginSkillDialogOptions |
包含 SkillDialog 对话参数的类。 |
ChoiceFactoryOptions |
用于调整选择列表格式的其他选项。 |
Choice |
可用于向用户呈现选项或识别用户选取的内容的选项的实例。 |
FindChoicesOptions |
用于控制 |
FoundChoice |
由 |
FindValuesOptions |
用于控制用户话语中如何识别选项的基本搜索选项。 |
FoundValue |
内部: |
SortedValue |
内部:可以排序的值,但仍引用其源数组中的原始位置。
|
ModelResult |
实体识别器(如 |
Token |
由 |
Converter |
转换器将对象从一种类型转换为另一种类型。 |
DialogConfiguration | |
DialogEvent | |
DialogInstance |
包含堆栈上对话框实例的状态信息。 |
DialogTurnResult |
表示对话上下文尝试开始、继续或其他操作一个或多个对话的结果。 |
DialogState |
包含特定 DialogSet的对话状态、有关对话堆栈状态的信息。 |
DialogManagerConfiguration | |
DialogManagerResult | |
DialogDependencies | |
ComponentMemoryScopes |
用于枚举内存范围的接口。 |
ComponentPathResolvers |
声明路径解析程序的接口。 |
DialogStateManagerConfiguration | |
PathResolver |
版权(c) Microsoft公司。 保留所有权利。 根据 MIT 许可证获得许可。 |
ChoiceDefaultsChoicePrompt | |
ChoiceDefaultsConfirmPrompt | |
DateTimeResolution |
|
OAuthPromptSettings |
用于配置 |
PromptOptions |
所有提示支持的基本配置选项。 |
PromptRecognizerResult |
提示识别器函数返回的结果。 |
PromptValidatorContext |
传递给自定义 |
PromptCultureModel | |
RecognizerConfiguration | |
SkillDialogOptions | |
TemplateInterface |
定义用于将数据绑定到 T 的模板接口。 |
WaterfallStepInfo |
传递给 |
类型别名
TokenizerFunction |
可传递给
|
ConverterFactory | |
PromptValidator |
用于提供自定义提示验证器的函数签名。
|
WaterfallStep |
单个瀑布步骤的函数签名。
|
枚举
DialogReason |
指示调用对话方法的原因。 |
DialogTurnStatus |
表示对话上下文尝试开始、继续或操作一个或多个对话后对话堆栈的状态。 另请参阅 |
ListStyle |
控制向用户显示 |
函数
函数详细信息
findChoices(string, string | Choice[], FindChoicesOptions)
用于识别话语中选项的中级搜索函数。
function findChoices(utterance: string, choices: string | Choice[], options?: FindChoicesOptions): ModelResult<FoundChoice>[]
参数
- utterance
-
string
要搜索的文本或用户话语。 对于传入的“消息”活动,只需使用 context.activity.text
。
- choices
-
string | Choice[]
要搜索的选项列表。
- options
- FindChoicesOptions
(可选)用于调整执行的搜索的选项。
返回
找到的选项列表,按最相关的第一个排序。
注解
此函数分层在 findValues()
之上,只需确定在调用 findValues()
执行实际搜索之前应搜索的所有同义词。
recognizeChoices()
函数分层在此函数上方,并添加了按索引或序号位置选择列表的选项的功能。 如果不希望 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)
内部:低级别函数,用于搜索话语中的一组值。 更高级别的函数(如 findChoices()
和 recognizeChoices()
)分层在此函数之上。 在大多数情况下,只需调用较高级别的函数之一,但此函数包含驱动选择识别的模糊搜索算法。
function findValues(utterance: string, values: SortedValue[], options?: FindValuesOptions): ModelResult<FoundValue>[]
参数
- utterance
-
string
要搜索的文本或用户话语。
- values
要搜索的值列表。
- options
- FindValuesOptions
(可选)用于调整执行的搜索的选项。
返回
找到的值的列表。
recognizeChoices(string, string | Choice[], FindChoicesOptions)
用于识别用户话语中的选项的高级函数。
function recognizeChoices(utterance: string, choices: string | Choice[], options?: FindChoicesOptions): ModelResult<FoundChoice>[]
参数
- utterance
-
string
要搜索的文本或用户话语。 对于传入的“消息”活动,只需使用 context.activity.text
。
- choices
-
string | Choice[]
要搜索的选项列表。
- options
- FindChoicesOptions
(可选)用于调整执行的搜索的选项。
返回
找到的选项列表,按最相关的第一个排序。
注解
这分层在 findChoices()
函数之上,并添加逻辑,让用户按索引指定自己的选择(他们可以说“一个”来选取 choice[0]
)或序号位置(他们可以说“第二个”选择 choice[1]
)。用户话语按以下顺序进行识别:
- 按名称使用
findChoices()
。 - 按 1 的序号位置。
- 按 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)
在空格和标点符号上中断的简单标记器。
function defaultTokenizer(text: string, _locale?: string): Token[]
参数
- text
-
string
输入文本。
- _locale
-
string
可选,用于标识输入文本的区域设置。
返回
Token[]
令牌列表。
注解
唯一完成的规范化是小写令牌。 开发人员可以使用自己的函数包装此 tokenizer 来执行其他规范化,例如 词干化。
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)
以递归方式向上走 DC 堆栈以查找活动 DC。
function getActiveDialogContext(dialogContext: DialogContext): DialogContext
参数
- dialogContext
- DialogContext
(xref:botbuilder-dialogs.DialogContext)用于与用户的当前对话轮次。
返回
Active DialogContext。
internalRun(TurnContext, string, DialogContext, DialogStateManagerConfiguration)
function internalRun(context: TurnContext, dialogId: string, dialogContext: DialogContext, dialogStateManagerConfiguration?: DialogStateManagerConfiguration): Promise<DialogTurnResult>
参数
- context
-
TurnContext
轮次的 TurnContext。
- dialogId
-
string
对话框 ID。
- dialogContext
- DialogContext
当前会话轮次的 DialogContext。
- dialogStateManagerConfiguration
- DialogStateManagerConfiguration
对话框状态管理器的配置。
返回
Promise<DialogTurnResult>
解析为对话框轮次结果的承诺。
isFromParentToSkill(TurnContext)
确定技能是否充当技能父级。
function isFromParentToSkill(context: TurnContext): boolean
参数
- context
-
TurnContext
(xref:botbuilder-core。与用户的当前聊天轮次的 TurnContext 对象。
返回
boolean
一个布尔值,表示技能是否充当技能父级。
runDialog(Dialog, TurnContext, StatePropertyAccessor<DialogState>)
从给定上下文和访问器运行对话。
function runDialog(dialog: Dialog, context: TurnContext, accessor: StatePropertyAccessor<DialogState>): Promise<void>
参数
- context
-
TurnContext
(xref:botbuilder-core。与用户的当前聊天轮次的 TurnContext 对象。
- accessor
-
StatePropertyAccessor<DialogState>
用于访问 BotState 对象中创建的状态属性的已定义方法。
返回
Promise<void>
shouldSendEndOfConversationToParent(TurnContext, DialogTurnResult)
帮助程序确定我们是否应向父级发送 EoC。
function shouldSendEndOfConversationToParent(context: TurnContext, turnResult: DialogTurnResult): boolean
参数
- context
-
TurnContext
轮次的 TurnContext。
- turnResult
- DialogTurnResult
对话框轮次结果。
返回
boolean
如果应发送 EoC,则为 True,否则为 false。
isComponentMemoryScopes(unknown)
检查 ComponentRegistration 是否 ComponentMemoryScopes。
function isComponentMemoryScopes(component: unknown): boolean
参数
- component
-
unknown
组件注册。
返回
boolean
类型检查结果。
isComponentPathResolvers(unknown)
检查 ComponentRegistration 是否 ComponentPathResolvers。
function isComponentPathResolvers(component: unknown): boolean
参数
- component
-
unknown
组件注册。
返回
boolean
类型检查结果。
createConnectorClient(TurnContext, string, ClaimsIdentity, string)
function createConnectorClient(context: TurnContext, serviceUrl: string, claimsIdentity: ClaimsIdentity, audience: string): Promise<ConnectorClient>
参数
- context
-
TurnContext
- serviceUrl
-
string
- claimsIdentity
-
ClaimsIdentity
- audience
-
string
返回
Promise<ConnectorClient>
exchangeToken(TurnContext, OAuthPromptSettings, TokenExchangeRequest)
function exchangeToken(context: TurnContext, settings: OAuthPromptSettings, tokenExchangeRequest: TokenExchangeRequest): Promise<TokenResponse>
参数
- context
-
TurnContext
- settings
- OAuthPromptSettings
- tokenExchangeRequest
-
TokenExchangeRequest
返回
Promise<TokenResponse>
getSignInResource(TurnContext, OAuthPromptSettings)
function getSignInResource(context: TurnContext, settings: OAuthPromptSettings): Promise<SignInUrlResponse>
参数
- context
-
TurnContext
- settings
- OAuthPromptSettings
返回
Promise<SignInUrlResponse>
getUserToken(TurnContext, OAuthPromptSettings, string)
function getUserToken(context: TurnContext, settings: OAuthPromptSettings, magicCode: string): Promise<TokenResponse>
参数
- context
-
TurnContext
- settings
- OAuthPromptSettings
- magicCode
-
string
返回
Promise<TokenResponse>
signOutUser(TurnContext, OAuthPromptSettings)
function signOutUser(context: TurnContext, settings: OAuthPromptSettings): Promise<void>
参数
- context
-
TurnContext
- settings
- OAuthPromptSettings
返回
Promise<void>