Bagikan melalui


ActionContext class

Memperluas DialogContext dengan metode tambahan untuk memanipulasi urutan tindakan yang dijalankan untuk AdaptiveDialog.

Memperluas

DialogContext

Konstruktor

ActionContext(DialogSet, DialogContext, DialogState, ActionState[], symbol)

Menginisialisasi instans baru dari kelas ActionContext

Properti

actions

Daftar tindakan yang dijalankan.

changes

Mendapatkan daftar perubahan yang diantrekan untuk diterapkan.

Properti yang Diwariskan

activeDialog
child
context

Mendapatkan objek konteks untuk giliran.

dialogManager
dialogs

Mendapatkan dialog yang dapat dipanggil langsung dari konteks ini.

parent

Konteks dialog induk untuk konteks dialog ini, atau undefined jika konteks ini tidak memiliki induk.

services

Mendapatkan kumpulan layanan yang kontekstual dengan konteks dialog ini.

stack

Mendapatkan tumpukan dialog saat ini.

state

Mendapatkan DialogStateManager yang mengelola tampilan semua cakupan memori.

Metode

applyChanges()

Menerapkan perubahan yang diantrekan.

queueChanges(ActionChangeList)

Mengantrekan serangkaian perubahan yang akan diterapkan saat applyChanges() dipanggil.

Metode yang Diwarisi

beginDialog(string, object)

Memulai instans dialog dan mendorongnya ke tumpukan dialog. Membuat instans baru dialog dan mendorongnya ke tumpukan.

cancelAllDialogs(boolean, string, any)

Membatalkan semua dialog pada tumpukan dialog, dan menghapus tumpukan.

continueDialog()

Melanjutkan eksekusi dialog aktif, jika ada, dengan meneruskan konteks dialog ini ke metode Dialog.continueDialog.

emitEvent(string, any, boolean, boolean)

Mencari dialog dengan ID tertentu.

endDialog(any)

Mengakhiri dialog dan memunculkannya dari tumpukan. Mengembalikan hasil opsional ke induk dialog.

findDialog(string)

Mencari dialog dengan ID tertentu.

getLocale()

Dapatkan CultureInfo di DialogContext.

prompt(string, string | Partial<Activity> | PromptOptions)

Fungsi pembantu untuk menyederhanakan pemformatan opsi untuk memanggil dialog perintah.

prompt(string, string | Partial<Activity> | PromptOptions, string | Choice[])

Fungsi pembantu untuk menyederhanakan pemformatan opsi untuk memanggil dialog perintah.

replaceDialog(string, object)

Mengakhiri dialog aktif dan memulai dialog baru di tempatnya.

repromptDialog()

Meminta dialog aktif untuk meminta kembali input kepada pengguna.

Detail Konstruktor

ActionContext(DialogSet, DialogContext, DialogState, ActionState[], symbol)

Menginisialisasi instans baru dari kelas ActionContext

new ActionContext(dialogs: DialogSet, parentDialogContext: DialogContext, state: DialogState, actions: ActionState[], changeKey: symbol)

Parameter

dialogs

DialogSet

Dialog diatur untuk membuat konteks tindakan.

parentDialogContext

DialogContext

Konteks dialog induk.

state

DialogState

Status dialog saat ini.

actions

ActionState[]

Daftar tindakan yang tersisa saat ini untuk dijalankan.

changeKey

symbol

Kunci TurnState tempat untuk mempertahankan perubahan apa pun.

Detail Properti

actions

Daftar tindakan yang dijalankan.

actions: ActionState[]

Nilai Properti

changes

Mendapatkan daftar perubahan yang diantrekan untuk diterapkan.

ActionChangeList[] changes

Nilai Properti

Daftar perubahan yang diantrekan.

Detail Properti yang Diwariskan

activeDialog

activeDialog: DialogInstance | undefined

Nilai Properti

DialogInstance | undefined

Diwariskan Dari DialogContext.activeDialog

child

child: DialogContext | undefined

Nilai Properti

DialogContext | undefined

Diwariskan Dari dialog Context.child

context

Mendapatkan objek konteks untuk giliran.

context: TurnContext

Nilai Properti

TurnContext

Diwariskan Dari dialog Context.context

dialogManager

dialogManager: DialogManager

Nilai Properti

DialogManager

Diwariskan Dari Dialog Context.dialogManager

dialogs

Mendapatkan dialog yang dapat dipanggil langsung dari konteks ini.

dialogs: DialogSet

Nilai Properti

DialogSet

Diwariskan Dari dialog DialogContext.dialogs

parent

Konteks dialog induk untuk konteks dialog ini, atau undefined jika konteks ini tidak memiliki induk.

parent: DialogContext | undefined

Nilai Properti

DialogContext | undefined

Keterangan

Saat mencoba memulai dialog, konteks dialog mencari Dialog.id dalam dialog . Jika dialog untuk memulai tidak ditemukan dalam konteks dialog ini, dialog akan mencari dalam konteks dialog induknya, dan sebagainya.

Diwariskan Dari Dialog Context.parent

services

Mendapatkan kumpulan layanan yang kontekstual dengan konteks dialog ini.

services: TurnContextStateCollection

Nilai Properti

TurnContextStateCollection

Diwariskan Dari DialogContext.services

stack

Mendapatkan tumpukan dialog saat ini.

stack: DialogInstance[]

Nilai Properti

DialogInstance[]

Diwariskan Dari dialog Context.stack

state

Mendapatkan DialogStateManager yang mengelola tampilan semua cakupan memori.

state: DialogStateManager

Nilai Properti

DialogStateManager

Diwariskan Dari dialog Context.state

Detail Metode

applyChanges()

Menerapkan perubahan yang diantrekan.

function applyChanges(): Promise<boolean>

Mengembalikan

Promise<boolean>

Benar jika ada perubahan yang akan diterapkan.

queueChanges(ActionChangeList)

Mengantrekan serangkaian perubahan yang akan diterapkan saat applyChanges() dipanggil.

function queueChanges(changes: ActionChangeList)

Parameter

changes
ActionChangeList

Rencanakan perubahan pada antrean.

Detail Metode yang Diwarisi

beginDialog(string, object)

Memulai instans dialog dan mendorongnya ke tumpukan dialog. Membuat instans baru dialog dan mendorongnya ke tumpukan.

function beginDialog(dialogId: string, options?: object): Promise<DialogTurnResult>

Parameter

dialogId

string

ID dialog untuk memulai.

options

object

Fakultatif. Argumen untuk diteruskan ke dialog saat dimulai.

Mengembalikan

Promise<DialogTurnResult>

janji yang menyelesaikan hasil giliran dialog.

Keterangan

Jika sudah ada dialog aktif pada tumpukan, dialog tersebut akan dijeda hingga dialog tersebut lagi menjadi dialog atas pada tumpukan.

Status objek yang dikembalikan menjelaskan status tumpukan dialog setelah metode ini selesai.

Metode ini melemparkan pengecualian jika dialog yang diminta tidak dapat ditemukan dalam konteks dialog ini atau salah satu leluhurnya.

Misalnya:

const result = await dc.beginDialog('greeting', { name: user.name });

Lihat juga

Diwariskan Dari dialog Context.beginDialog

cancelAllDialogs(boolean, string, any)

Membatalkan semua dialog pada tumpukan dialog, dan menghapus tumpukan.

function cancelAllDialogs(cancelParents?: boolean, eventName?: string, eventValue?: any): Promise<DialogTurnResult>

Parameter

cancelParents

boolean

Fakultatif. Jika true semua dialog induk juga akan dibatalkan.

eventName

string

Fakultatif. Nama peristiwa kustom yang akan dinaikkan saat dialog dibatalkan. Ini default untuk cancelDialog.

eventValue

any

Fakultatif. Nilai yang akan diteruskan bersama dengan peristiwa pembatalan kustom.

Mengembalikan

Promise<DialogTurnResult>

janji yang menyelesaikan hasil giliran dialog.

Keterangan

Ini memanggil metode dialog Dialog.endDialog sebelum menghapus dialog dari tumpukan.

Jika ada dialog pada tumpukan awalnya, status dari nilai yang dikembalikan dibatalkan; jika tidak, kosong.

Contoh ini menghapus tumpukan dialog, dc, sebelum memulai dialog 'bookFlight'.

await dc.cancelAllDialogs();
return await dc.beginDialog('bookFlight');

Lihat juga

  • endDialog

Diwariskan Dari dialog Context.cancelAllDialogs

continueDialog()

Melanjutkan eksekusi dialog aktif, jika ada, dengan meneruskan konteks dialog ini ke metode Dialog.continueDialog.

function continueDialog(): Promise<DialogTurnResult>

Mengembalikan

Promise<DialogTurnResult>

janji yang menyelesaikan hasil giliran dialog.

Keterangan

Setelah panggilan selesai, Anda dapat memeriksa properti konteks giliran merespons untuk menentukan apakah dialog mengirim balasan kepada pengguna.

Status objek yang dikembalikan menjelaskan status tumpukan dialog setelah metode ini selesai.

Biasanya, Anda akan memanggil ini dari dalam handler giliran bot Anda.

Misalnya:

const result = await dc.continueDialog();
if (result.status == DialogTurnStatus.empty && dc.context.activity.type == ActivityTypes.message) {
    // Send fallback message
    await dc.context.sendActivity(`I'm sorry. I didn't understand.`);
}

Diwariskan Dari dialog Context.continueDialog

emitEvent(string, any, boolean, boolean)

Mencari dialog dengan ID tertentu.

function emitEvent(name: string, value?: any, bubble?: boolean, fromLeaf?: boolean): Promise<boolean>

Parameter

name

string

Nama acara yang akan dinaikkan.

value

any

Fakultatif. Nilai yang akan dikirim bersama dengan peristiwa.

bubble

boolean

Fakultatif. Bendera untuk mengontrol apakah peristiwa harus dibenturkan ke induknya jika tidak ditangani secara lokal. Default ke nilai true.

fromLeaf

boolean

Fakultatif. Apakah peristiwa dipancarkan dari simpul daun.

Mengembalikan

Promise<boolean>

true jika peristiwa ditangani.

Keterangan

Memancarkan peristiwa bernama untuk dialog saat ini, atau seseorang yang memulainya, untuk menanganinya.

Diwariskan Dari dialog Context.emitEvent

endDialog(any)

Mengakhiri dialog dan memunculkannya dari tumpukan. Mengembalikan hasil opsional ke induk dialog.

function endDialog(result?: any): Promise<DialogTurnResult>

Parameter

result

any

Fakultatif. Hasil untuk diteruskan ke logika induk. Ini mungkin dialog berikutnya pada tumpukan, atau jika ini adalah dialog terakhir pada tumpukan, konteks dialog induk, atau penangan giliran bot.

Mengembalikan

Promise<DialogTurnResult>

janji yang menyelesaikan hasil giliran dialog.

Keterangan

Dialog induk adalah dialog berikutnya pada tumpukan dialog, jika ada. Metode ini memanggil metode Dialog.resumeDialog induk, meneruskan hasil yang dikembalikan oleh dialog akhir. Jika tidak ada dialog induk, giliran berakhir dan hasilnya tersedia untuk bot melalui properti hasil objek yang dikembalikan.

Status objek yang dikembalikan menjelaskan status tumpukan dialog setelah metode ini selesai.

Biasanya, Anda akan memanggil ini dari dalam logika untuk dialog tertentu untuk memberi sinyal kembali ke konteks dialog bahwa dialog telah selesai, dialog harus dihapus dari tumpukan, dan dialog induk harus dilanjutkan.

Misalnya:

return await dc.endDialog(returnValue);

Lihat juga

  • beginDialog
  • replaceDialog
  • Dialog.endDialog

Diwariskan Dari Dialog Context.endDialog

findDialog(string)

Mencari dialog dengan ID tertentu.

function findDialog(dialogId: string): Dialog | undefined

Parameter

dialogId

string

ID dialog yang akan dicari.

Mengembalikan

Dialog | undefined

Dialog untuk ID yang disediakan.

Keterangan

Jika dialog untuk memulai tidak ditemukan di DialogSet terkait dengan konteks dialog ini, dialog akan mencoba menemukan dialog dalam konteks dialog induknya.

Lihat juga

  • dialog
  • induk

Diwariskan Dari dialog Context.findDialog

getLocale()

Dapatkan CultureInfo di DialogContext.

function getLocale(): string

Mengembalikan

string

string lokal.

Diwariskan Dari dialog Context.getLocale

prompt(string, string | Partial<Activity> | PromptOptions)

Fungsi pembantu untuk menyederhanakan pemformatan opsi untuk memanggil dialog perintah.

function prompt(dialogId: string, promptOrOptions: string | Partial<Activity> | PromptOptions): Promise<DialogTurnResult>

Parameter

dialogId

string

ID dialog perintah untuk memulai.

promptOrOptions

string | Partial<Activity> | PromptOptions

Teks permintaan awal untuk mengirim pengguna, aktivitas yang akan dikirim sebagai perintah awal, atau objek untuk memformat dialog perintah.

Mengembalikan

Promise<DialogTurnResult>

Keterangan

Metode pembantu ini memformat objek untuk digunakan sebagai parameter options, lalu memanggil beginDialog untuk memulai dialog perintah yang ditentukan.

return await dc.prompt('confirmPrompt', `Are you sure you'd like to quit?`);

Diwariskan Dari dialog Context.prompt

prompt(string, string | Partial<Activity> | PromptOptions, string | Choice[])

Fungsi pembantu untuk menyederhanakan pemformatan opsi untuk memanggil dialog perintah.

function prompt(dialogId: string, promptOrOptions: string | Partial<Activity> | PromptOptions, choices: string | Choice[]): Promise<DialogTurnResult>

Parameter

dialogId

string

ID dialog perintah untuk memulai.

promptOrOptions

string | Partial<Activity> | PromptOptions

Teks perintah awal untuk mengirim pengguna, Aktivitas untuk dikirim sebagai perintah awal, atau objek untuk memformat dialog perintah.

choices

string | Choice[]

Fakultatif. Array pilihan untuk dipilih pengguna, untuk digunakan dengan ChoicePrompt.

Mengembalikan

Promise<DialogTurnResult>

Keterangan

Metode pembantu ini memformat objek untuk digunakan sebagai parameter options, lalu memanggil beginDialog untuk memulai dialog perintah yang ditentukan.

return await dc.prompt('confirmPrompt', `Are you sure you'd like to quit?`);

Diwariskan Dari dialog Context.prompt

replaceDialog(string, object)

Mengakhiri dialog aktif dan memulai dialog baru di tempatnya.

function replaceDialog(dialogId: string, options?: object): Promise<DialogTurnResult>

Parameter

dialogId

string

ID dialog untuk memulai.

options

object

Fakultatif. Argumen untuk diteruskan ke dialog baru saat dimulai.

Mengembalikan

Promise<DialogTurnResult>

janji yang menyelesaikan hasil giliran dialog.

Keterangan

Ini sangat berguna untuk membuat perulangan atau mengalihkan ke dialog lain.

Status objek yang dikembalikan menjelaskan status tumpukan dialog setelah metode ini selesai.

Metode ini mirip dengan mengakhiri dialog saat ini dan segera memulai yang baru. Namun, dialog induk tidak dilanjutkan atau diberi tahu.

Lihat juga

  • beginDialog
  • endDialog

Diwariskan Dari dialog Context.replaceDialog

repromptDialog()

Meminta dialog aktif untuk meminta kembali input kepada pengguna.

function repromptDialog(): Promise<void>

Mengembalikan

Promise<void>

Keterangan

Ini memanggil dialog aktif metode repromptDialog.

Misalnya:

await dc.repromptDialog();

Diwariskan Dari dialog Context.repromptDialog