共用方式為


ChoicePrompt class

提示使用者從選擇清單中選取。

Extends

備註

根據預設,提示會返回呼叫對話框,FoundChoice 物件,其中包含選取的選項。

建構函式

ChoicePrompt(string, PromptValidator<FoundChoice>, string, ChoiceDefaultsChoicePrompt)

建立新的 ChoicePrompt 實例。

屬性

choiceOptions

傳遞至 ChoiceFactory 的其他選項,並用來調整呈現給用戶的選擇樣式。

defaultLocale

提示預設地區設定,應該辨識。

id

對話框的唯一標識碼。 設定對話框的唯一標識符。

recognizerOptions

傳遞至基礎 recognizeChoices() 函式的其他選項。

style

提示時呈現給使用者的 「是」和「否」選項樣式。

telemetryClient

取得此對話框的遙測用戶端。 設定此對話框的遙測用戶端。

繼承的屬性

EndOfTurn

取得預設回合結束結果。

繼承的方法

beginDialog(DialogContext, PromptOptions)

當提示對話框推送至對話堆疊並正在啟動時呼叫。

configure(Record<string, unknown>)

用於設定物件的 Fluent 方法。

continueDialog(DialogContext)

當提示對話框是作用中的對話框,且使用者以新的活動回復時呼叫。

endDialog(TurnContext, DialogInstance, DialogReason)

在衍生類別中覆寫時,會在對話結束之前執行清除。

getConverter(string)
getVersion()

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

onDialogEvent(DialogContext, DialogEvent)

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

repromptDialog(TurnContext, DialogInstance)

當要求提示對話方塊重新提示使用者輸入時呼叫。

resumeDialog(DialogContext, DialogReason, any)

當提示對話框繼續成為對話堆疊上的使用中對話框時呼叫,例如當堆棧上的上一個使用中對話方塊完成時。

建構函式詳細資料

ChoicePrompt(string, PromptValidator<FoundChoice>, string, ChoiceDefaultsChoicePrompt)

建立新的 ChoicePrompt 實例。

new ChoicePrompt(dialogId: string, validator?: PromptValidator<FoundChoice>, defaultLocale?: string, choiceDefaults?: ChoiceDefaultsChoicePrompt)

參數

dialogId

string

對話框父系內的唯一識別碼 DialogSet

validator

PromptValidator<FoundChoice>

(選擇性) 驗證程式,會在每次用戶回應提示時呼叫。 如果驗證程式以訊息回復,則不會傳送其他重試提示。

defaultLocale

string

(選擇性) 地區設定,以在未指定 dc.context.activity.locale 時使用。 預設為 en-us的值。

choiceDefaults
ChoiceDefaultsChoicePrompt

(選擇性)覆寫 Bot Framework SDK 支援的_choiceDefaults字典(適用於提示本地化)。 必須傳入需要自定義選擇預設值的每個 ConfirmPrompt。

屬性詳細資料

choiceOptions

傳遞至 ChoiceFactory 的其他選項,並用來調整呈現給用戶的選擇樣式。

choiceOptions: ChoiceFactoryOptions | undefined

屬性值

ChoiceFactoryOptions | undefined

defaultLocale

提示預設地區設定,應該辨識。

defaultLocale: string | undefined

屬性值

string | undefined

id

對話框的唯一標識碼。 設定對話框的唯一標識符。

string id

屬性值

string

對話框的識別碼。

備註

如果未指定,系統就會自動產生此專案。

recognizerOptions

傳遞至基礎 recognizeChoices() 函式的其他選項。

recognizerOptions: FindChoicesOptions | undefined

屬性值

FindChoicesOptions | undefined

style

提示時呈現給使用者的 「是」和「否」選項樣式。

style: ListStyle

屬性值

備註

預設為 ListStyle.auto

telemetryClient

取得此對話框的遙測用戶端。 設定此對話框的遙測用戶端。

BotTelemetryClient telemetryClient

屬性值

BotTelemetryClient

要用於記錄的 BotTelemetryClient

繼承的屬性詳細資料

EndOfTurn

取得預設回合結束結果。

static EndOfTurn: DialogTurnResult

屬性值

備註

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

繼承自Dialog.EndOfTurn

繼承的方法的詳細資料

beginDialog(DialogContext, PromptOptions)

當提示對話框推送至對話堆疊並正在啟動時呼叫。

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

參數

dc
DialogContext

交談目前回合的 DialogContext

options
PromptOptions

自選。 PromptOptions,將其他資訊傳遞至正在啟動的提示。

傳回

Promise<DialogTurnResult>

表示異步操作的 Promise

備註

如果工作成功,結果會指出提示在提示處理回合之後是否仍在使用中。

繼承自Prompt.beginDialog

configure(Record<string, unknown>)

用於設定物件的 Fluent 方法。

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

參數

config

Record<string, unknown>

要套用的組態設定。

傳回

this

作業完成之後 可設定

繼承自Configure.configure

continueDialog(DialogContext)

當提示對話框是作用中的對話框,且使用者以新的活動回復時呼叫。

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

參數

dc
DialogContext

目前交談回合的 DialogContext

傳回

Promise<DialogTurnResult>

表示異步操作的 Promise

備註

如果工作成功,結果會指出對話在對話框處理回合之後是否仍在使用中。 提示通常會繼續接收用戶的回復,直到接受使用者的回復作為提示的有效輸入為止。

繼承自Prompt.continueDialog

endDialog(TurnContext, DialogInstance, DialogReason)

在衍生類別中覆寫時,會在對話結束之前執行清除。

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

參數

_context

TurnContext

回合的內容物件。

_instance
DialogInstance

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

_reason
DialogReason

對話框結束的原因。

傳回

Promise<void>

備註

需要在結束之前執行記錄或清除的衍生對話應該覆寫此方法。 根據預設,這個方法沒有任何作用。

DialogContext 目前對話框結束時呼叫這個方法。

另請參閱

繼承自Dialog.endDialog

getConverter(string)

function getConverter(_property: string): Converter | ConverterFactory

參數

_property

string

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

傳回

選取器組態的轉換器。

繼承自可設定.getConverter

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 是表示 如果事件是由目前的對話框處理,且反升應該停止。

繼承自Dialog.onDialogEvent

repromptDialog(TurnContext, DialogInstance)

當要求提示對話方塊重新提示使用者輸入時呼叫。

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

參數

context

TurnContext

(xref:botbuilder-core.TurnContext),目前與使用者交談回合的內容。

instance
DialogInstance

(xref:botbuilder-dialogs.DialogInstance),堆棧上對話框的實例。

傳回

Promise<void>

表示異步操作的 Promise

繼承自Prompt.repromptDialog

resumeDialog(DialogContext, DialogReason, any)

當提示對話框繼續成為對話堆疊上的使用中對話框時呼叫,例如當堆棧上的上一個使用中對話方塊完成時。

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

參數

dc
DialogContext

交談目前回合的 DialogContext。

_reason
DialogReason

列舉,指出對話繼續的原因。

_result

any

選擇性的堆疊上一個對話框傳回的值。 傳回的值類型取決於上一個對話框。

傳回

Promise<DialogTurnResult>

代表異步操作的 Promise。

備註

如果工作成功,結果會指出對話在對話框處理回合之後是否仍在使用中。

繼承自Prompt.resumeDialog