共用方式為


AdaptiveDialog class

調適型對話會使用事件和事件來建立交談模型,以動態方式適應變更交談流程。

Extends

DialogContainer<O>

建構函式

AdaptiveDialog(string)

建立新的 AdaptiveDialog 實例。

屬性

$kind
autoEndDialog

當沒有任何要執行的動作時,是否要結束對話方塊。

conditionTracker
defaultResultProperty

當對話框沒有其他動作且 AutoEndDialog = true時,要傳回為結果的屬性。

generator

自選。 語言產生器覆寫。

recognizer

自選。 辨識器用來分析任何訊息語句。

schema

設定對話框的 JSON 架構。 取得對話框的 JSON 架構。

selector

自選。 選取器,用於挑選可能要執行的事件。

triggers

觸發處理程式以回應修改執行計劃的條件。

繼承的屬性

dialogs

容器對話框集。

EndOfTurn

取得預設回合結束結果。

id
telemetryClient

方法

beginDialog(DialogContext, O)

啟動對話框並推送至對話堆疊時呼叫。

continueDialog(DialogContext)

當對話框 繼續時呼叫,其中它是使用中的對話框,而使用者會以新的活動回復。

createChildContext(DialogContext)

為指定的內容建立子 DialogContext

endDialog(TurnContext, DialogInstance, DialogReason)

對話框結束時呼叫。

getConverter(Object)
getDependencies()

取得 對話框 列舉相依性。

repromptDialog(DialogContext | TurnContext, DialogInstance)

重新編目使用者。

resumeDialog(DialogContext, DialogReason, any)

當子對話完成回合時呼叫,將控件傳回給這個對話方塊。

繼承的方法

configure(Record<string, unknown>)

用於設定物件的 Fluent 方法。

findDialog(string)

尋找先前新增至容器的子對話。

getVersion()

編碼字串,用來協助在重新部署時偵測 Bot 變更。

onDialogEvent(DialogContext, DialogEvent)

使用 DialogContext.emitEvent()引發事件時,由目前對話框或目前對話框啟動的對話框呼叫。

建構函式詳細資料

AdaptiveDialog(string)

建立新的 AdaptiveDialog 實例。

new AdaptiveDialog(dialogId?: string)

參數

dialogId

string

(選擇性) 元件在其父代對話集內的唯一標識符。

屬性詳細資料

$kind

static $kind: string

屬性值

string

autoEndDialog

當沒有任何要執行的動作時,是否要結束對話方塊。

autoEndDialog: BoolExpression

屬性值

BoolExpression

備註

如果為 true,當沒有要執行的動作時,目前的對話框將會結束。 如果為 false,當沒有要執行的動作時,目前的對話框只會結束回合,而且仍然作用中。 默認值為 true。

conditionTracker

static conditionTracker: string

屬性值

string

defaultResultProperty

當對話框沒有其他動作且 AutoEndDialog = true時,要傳回為結果的屬性。

defaultResultProperty: string

屬性值

string

備註

預設為 dialog.result的值。

generator

自選。 語言產生器覆寫。

generator?: LanguageGenerator

屬性值

recognizer

自選。 辨識器用來分析任何訊息語句。

recognizer?: Recognizer

屬性值

Recognizer

schema

設定對話框的 JSON 架構。 取得對話框的 JSON 架構。

object schema

屬性值

object

對話框架構。

selector

自選。 選取器,用於挑選可能要執行的事件。

selector: TriggerSelector

屬性值

triggers

觸發處理程式以回應修改執行計劃的條件。

triggers: OnCondition[]

屬性值

繼承的屬性詳細資料

dialogs

容器對話框集。

dialogs: DialogSet

屬性值

DialogSet

繼承自 DialogContainer.dialogs

EndOfTurn

取得預設回合結束結果。

static EndOfTurn: DialogTurnResult

屬性值

DialogTurnResult

備註

此結果表示對話(或對話內的邏輯步驟)已完成目前回合的處理,仍在使用中,而且正在等候更多輸入。

繼承自 Dialog.EndOfTurn

id

id: string

屬性值

string

繼承自 Dialog.id

telemetryClient

telemetryClient: BotTelemetryClient

屬性值

BotTelemetryClient

繼承自 DialogContainer.telemetryClient

方法詳細資料

beginDialog(DialogContext, O)

啟動對話框並推送至對話堆疊時呼叫。

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

參數

dc

DialogContext

目前交談回合的 DialogContext

options

O

要傳遞至對話框的選擇性初始資訊。

傳回

Promise<DialogTurnResult>

代表異步操作的 Promise。

continueDialog(DialogContext)

當對話框 繼續時呼叫,其中它是使用中的對話框,而使用者會以新的活動回復。

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

參數

dc

DialogContext

目前交談回合的 DialogContext

傳回

Promise<DialogTurnResult>

代表異步操作的 Promise。

createChildContext(DialogContext)

為指定的內容建立子 DialogContext

function createChildContext(dc: DialogContext): DialogContext

參數

dc

DialogContext

目前交談回合的 DialogContext

傳回

DialogContext

如果找不到指定內容 AdaptiveDialogState.actions,則子 DialogContext 或 null。

endDialog(TurnContext, DialogInstance, DialogReason)

對話框結束時呼叫。

function endDialog(turnContext: TurnContext, instance: DialogInstance, reason: DialogReason): Promise<void>

參數

turnContext

TurnContext

這個回合的內容物件。

instance

DialogInstance

與對話框堆疊上這個對話框實例相關聯的狀態資訊。

reason

DialogReason

對話框結束的原因。

傳回

Promise<void>

代表異步操作的 Promise。

getConverter(Object)

function getConverter(property: Object): Converter | ConverterFactory

參數

property

Object

條件式選取器組態的索引鍵。

傳回

Converter | ConverterFactory

選取器組態的轉換器。

getDependencies()

取得 對話框 列舉相依性。

function getDependencies(): Dialog[]

傳回

Dialog[]

(xref:botbuilder-dialogs.Dialog)的列舉相依性。

repromptDialog(DialogContext | TurnContext, DialogInstance)

重新編目使用者。

function repromptDialog(context: DialogContext | TurnContext, instance: DialogInstance): Promise<void>

參數

context

DialogContext | TurnContext

回合的內容物件。

instance

DialogInstance

此對話框的目前狀態資訊。

傳回

Promise<void>

代表異步操作的 Promise。

resumeDialog(DialogContext, DialogReason, any)

當子對話完成回合時呼叫,將控件傳回給這個對話方塊。

function resumeDialog(dc: DialogContext, _reason?: DialogReason, _result?: any): Promise<DialogTurnResult>

參數

dc

DialogContext

交談目前回合的對話內容。

_reason

DialogReason

對話繼續的原因。

_result

any

選擇性值,從呼叫的對話框傳回的值。 傳回之值的型別取決於子對話框。

傳回

Promise<DialogTurnResult>

代表異步操作的 Promise。

繼承的方法的詳細資料

configure(Record<string, unknown>)

用於設定物件的 Fluent 方法。

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

參數

config

Record<string, unknown>

要套用的組態設定。

傳回

this

作業完成之後 可設定

繼承自 Configure.configure

findDialog(string)

尋找先前新增至容器的子對話。

function findDialog(dialogId: string): Dialog | undefined

參數

dialogId

string

要查閱之對話框的標識碼。

傳回

Dialog | undefined

如果找到對話框,則為 ;否則為 null。

繼承自 DialogContainer.findDialog

getVersion()

編碼字串,用來協助在重新部署時偵測 Bot 變更。

function getVersion(): string

傳回

string

唯一的字串,只有在對話框以應該重新啟動對話框的方式變更時才會變更。

備註

這預設會傳回對話框 標識子,但可以覆寫以提供更精確的變更偵測邏輯。 堆疊上具有其版本變更的任何對話框都會引發 versionChanged 事件。 如果 Bot 未處理此事件,則會擲回錯誤,導致 Bot 錯誤處理程式邏輯正在執行。

傳回空字串將會一起停用元件的版本追蹤。

繼承自 Dialog.getVersion

onDialogEvent(DialogContext, DialogEvent)

使用 DialogContext.emitEvent()引發事件時,由目前對話框或目前對話框啟動的對話框呼叫。

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

參數

dc

DialogContext

目前交談回合的對話內容。

e

DialogEvent

要引發的事件。

傳回

Promise<boolean>

True 是表示 如果事件是由目前的對話框處理,且反升應該停止。

繼承自 DialogContainer.onDialogEvent