Dialog class

定义所有对话的核心行为。

扩展

构造函数

Dialog(string)

创建 Dialog 类的新实例。

属性

EndOfTurn

获取默认的轮次结束结果。

id

对话框的唯一 ID。 设置对话框的唯一 ID。

telemetryClient

获取此对话框的遥测客户端。 设置此对话框的遥测客户端。

方法

beginDialog(DialogContext, O)

在派生类中重写时,启动对话。

continueDialog(DialogContext)

在派生类中重写时,继续对话。

endDialog(TurnContext, DialogInstance, DialogReason)

在派生类中重写时,在对话结束之前执行清理。

getVersion()

用于帮助在重新部署时检测机器人更改的编码字符串。

onDialogEvent(DialogContext, DialogEvent)

通过使用当前对话或当前对话启动的对话,使用 DialogContext.emitEvent()引发事件时调用。

repromptDialog(TurnContext, DialogInstance)

在派生类中重写时,将用户重新分配输入。

resumeDialog(DialogContext, DialogReason, any)

在派生类中重写时,在堆栈上对话完成后恢复对话。

继承的方法

configure(Record<string, unknown>)

用于配置对象的 Fluent 方法。

getConverter(string)

构造函数详细信息

Dialog(string)

创建 Dialog 类的新实例。

new Dialog(dialogId?: string)

参数

dialogId

string

自选。 对话框的唯一 ID。

属性详细信息

EndOfTurn

获取默认的轮次结束结果。

static EndOfTurn: DialogTurnResult

属性值

注解

此结果指示对话(或对话中的逻辑步骤)已完成当前轮次的处理,仍然处于活动状态,并且正在等待更多输入。

id

对话框的唯一 ID。 设置对话框的唯一 ID。

string id

属性值

string

对话框的 ID。

注解

如果未指定,则会自动生成此代码。

telemetryClient

获取此对话框的遥测客户端。 设置此对话框的遥测客户端。

BotTelemetryClient telemetryClient

属性值

BotTelemetryClient

要用于日志记录的 BotTelemetryClient

方法详细信息

beginDialog(DialogContext, O)

在派生类中重写时,启动对话。

function beginDialog(dc: DialogContext, options?: O): Promise<DialogTurnResult>

参数

dc
DialogContext

当前对话框轮次的上下文。

options

O

自选。 对话框启动时要使用的参数。

返回

Promise<DialogTurnResult>

注解

派生对话必须重写此方法。

DialogContext 在此对话创建新的 DialogInstance 时调用此方法,将其推送到对话堆栈,然后启动对话。

表示单轮对话的对话应在退出此方法之前等待 DialogContext.endDialog

另请参阅

continueDialog(DialogContext)

在派生类中重写时,继续对话。

function continueDialog(dc: DialogContext): Promise<DialogTurnResult>

参数

dc
DialogContext

当前对话框轮次的上下文。

返回

Promise<DialogTurnResult>

解析为对话框轮次结果的承诺。

注解

支持多轮对话的派生对话应重写此方法。 默认情况下,此方法指示对话框已完成并返回。

DialogContext 在继续对话时调用此方法。

若要向对话上下文发出信号,表明此对话已完成,请等待 DialogContext.endDialog 退出此方法。

另请参阅

endDialog(TurnContext, DialogInstance, DialogReason)

在派生类中重写时,在对话结束之前执行清理。

function endDialog(_context: TurnContext, _instance: DialogInstance, _reason: DialogReason): Promise<void>

参数

_context

TurnContext

轮次的上下文对象。

_instance
DialogInstance

此对话框的当前状态信息。

_reason
DialogReason

对话结束的原因。

返回

Promise<void>

注解

在结束之前需要执行日志记录或清理的派生对话应重写此方法。 默认情况下,此方法不起作用。

当当前对话结束时,DialogContext 调用此方法。

另请参阅

getVersion()

用于帮助在重新部署时检测机器人更改的编码字符串。

function getVersion(): string

返回

string

唯一字符串,仅当对话发生更改时,才应以重启对话框的方式更改。

注解

这默认返回对话 ID,但可以重写以提供更精确的更改检测逻辑。 堆栈上具有其版本更改的任何对话框都将导致引发 versionChanged 事件。 如果机器人未处理此事件,将引发错误,从而导致运行机器人错误处理程序逻辑。

返回空字符串将一起禁用组件的版本跟踪。

onDialogEvent(DialogContext, DialogEvent)

通过使用当前对话或当前对话启动的对话,使用 DialogContext.emitEvent()引发事件时调用。

function onDialogEvent(dc: DialogContext, e: DialogEvent): Promise<boolean>

参数

dc
DialogContext

当前对话轮次的对话上下文。

e
DialogEvent

正在引发的事件。

返回

Promise<boolean>

如此 如果事件由当前对话框处理,并且冒泡应停止。

repromptDialog(TurnContext, DialogInstance)

在派生类中重写时,将用户重新分配输入。

function repromptDialog(_context: TurnContext, _instance: DialogInstance): Promise<void>

参数

_context

TurnContext

轮次的上下文对象。

_instance
DialogInstance

此对话框的当前状态信息。

返回

Promise<void>

注解

支持验证和重新提示逻辑的派生对话应重写此方法。 默认情况下,此方法不起作用。

DialogContext 在当前对话应从用户重新请求输入时调用此方法。 此方法是针对提示对话实现的。

另请参阅

resumeDialog(DialogContext, DialogReason, any)

在派生类中重写时,在堆栈上对话完成后恢复对话。

function resumeDialog(dc: DialogContext, reason: DialogReason, result?: any): Promise<DialogTurnResult>

参数

dc
DialogContext

当前对话框轮次的上下文。

reason
DialogReason

对话恢复的原因。 这通常 DialogReason.endCalled

result

any

自选。 结束的对话框中的返回值(如果有)。

返回

Promise<DialogTurnResult>

解析为对话框轮次结果的承诺。

注解

支持多轮对话的派生对话应重写此方法。 默认情况下,此方法指示对话框已完成并返回。

DialogContext 恢复对话时调用此方法。 如果堆栈上的上一个对话框返回了一个值,则该值位于 result 参数中。

若要启动 对话,请使用 DialogContext.beginDialogDialogContext.prompt;但是,此对话不一定是启动子对话的对话框。 若要向对话上下文发出信号,表明此对话已完成,请等待 DialogContext.endDialog 退出此方法。

另请参阅

继承的方法详细信息

configure(Record<string, unknown>)

用于配置对象的 Fluent 方法。

function configure(config: Record<string, unknown>): this

参数

config

Record<string, unknown>

要应用的配置设置。

返回

this

操作完成后 可配置

继承自Configure.configure

getConverter(string)

function getConverter(_property: string): Converter | ConverterFactory

参数

_property

string

条件选择器配置的键。

返回

选择器配置的转换器。

继承自Configurable.getConverter