次の方法で共有


WaterfallStepContext class

WaterfallStepに渡されるコンテキスト オブジェクト。

Extends

コンストラクター

WaterfallStepContext(DialogContext, WaterfallStepInfo<O>)

新しい WaterfallStepContext インスタンスを作成します。

プロパティ

activeDialog
child
dialogManager
index

実行中の現在のウォーターフォール ステップのインデックス。

options

DialogContext.beginDialog()で開始されたときにステップ ウォーターフォール ダイアログに渡されるオプション。

reason

ウォーターフォール ステップが実行されている理由。

result

前のウォーターフォール ステップで呼び出されたダイアログまたはプロンプトによって返された結果。

values

すべてのウォーターフォール ステップで永続化される値のディクショナリ。

継承されたプロパティ

context

ターンのコンテキスト オブジェクトを取得します。

dialogs

このコンテキストから直接呼び出すことができるダイアログを取得します。

parent

このダイアログ コンテキストの親ダイアログ コンテキスト。このコンテキストに親がない場合は undefined

services

このダイアログ コンテキストに依存するサービス コレクションを取得します。

stack

現在のダイアログ スタックを取得します。

state

すべてのメモリ スコープのビューを管理する DialogStateManager を取得します。

メソッド

next(any)

次のウォーターフォール ステップにスキップします。

継承されたメソッド

beginDialog(string, object)

ダイアログ インスタンスを開始し、ダイアログ スタックにプッシュします。 ダイアログの新しいインスタンスを作成し、スタックにプッシュします。

cancelAllDialogs(boolean, string, any)

ダイアログ スタック上のすべてのダイアログをキャンセルし、スタックをクリアします。

continueDialog()

アクティブなダイアログがある場合は、このダイアログ コンテキストを Dialog.continueDialog メソッドに渡して、アクティブなダイアログの実行を続行します。

emitEvent(string, any, boolean, boolean)

特定の ID を持つダイアログを検索します。

endDialog(any)

ダイアログを終了し、スタックからポップします。 ダイアログの親にオプションの結果を返します。

findDialog(string)

特定の ID を持つダイアログを検索します。

getLocale()

DialogContext で CultureInfo を取得します。

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

プロンプト ダイアログを呼び出すためのオプションの書式設定を簡略化するヘルパー関数。

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

プロンプト ダイアログを呼び出すためのオプションの書式設定を簡略化するヘルパー関数。

replaceDialog(string, object)

アクティブなダイアログを終了し、その代わりに新しいダイアログを開始します。

repromptDialog()

アクティブなダイアログに対して、ユーザーに入力を再度求めるメッセージを表示するように要求します。

コンストラクターの詳細

WaterfallStepContext(DialogContext, WaterfallStepInfo<O>)

新しい WaterfallStepContext インスタンスを作成します。

new WaterfallStepContext(dc: DialogContext, info: WaterfallStepInfo<O>)

パラメーター

dc
DialogContext

会話の現在のターンのダイアログ コンテキスト。

info

WaterfallStepInfo<O>

ステップ コンテキストを初期化する値。

プロパティの詳細

activeDialog

DialogInstance | undefined activeDialog

プロパティ値

DialogInstance | undefined

ダイアログ スタックの上部にあるダイアログの状態情報。スタックが空の場合は undefined

child

DialogContext | undefined child

プロパティ値

DialogContext | undefined

アクティブなダイアログがコンテナーの場合の子のダイアログ コンテキスト。

dialogManager

警告

この API は非推奨になりました。

This property serves no function.

DialogManager dialogManager

プロパティ値

現在のダイアログ マネージャー インスタンス。 このプロパティは非推奨です。

index

実行中の現在のウォーターフォール ステップのインデックス。

number index

プロパティ値

number

実行中の現在のウォーターフォール ステップのインデックス。

options

DialogContext.beginDialog()で開始されたときにステップ ウォーターフォール ダイアログに渡されるオプション。

O options

プロパティ値

O

ウォーターフォール ダイアログが呼び出されたオプション。

reason

ウォーターフォール ステップが実行されている理由。

DialogReason reason

プロパティ値

ウォーターフォール ステップが実行されている理由。

result

前のウォーターフォール ステップで呼び出されたダイアログまたはプロンプトによって返された結果。

any result

プロパティ値

any

前のウォーターフォール ステップの結果。

values

すべてのウォーターフォール ステップで永続化される値のディクショナリ。

object values

プロパティ値

object

すべてのウォーターフォール ステップで永続化される値のディクショナリ。

継承されたプロパティの詳細

context

ターンのコンテキスト オブジェクトを取得します。

context: TurnContext

プロパティ値

TurnContext

DialogContext.context から継承された

dialogs

このコンテキストから直接呼び出すことができるダイアログを取得します。

dialogs: DialogSet

プロパティ値

DialogContext.dialogs から継承された

parent

このダイアログ コンテキストの親ダイアログ コンテキスト。このコンテキストに親がない場合は undefined

parent: DialogContext | undefined

プロパティ値

DialogContext | undefined

注釈

ダイアログを開始しようとすると、ダイアログ コンテキストは、ダイアログDialog.id を検索します。 開始するダイアログがこのダイアログ コンテキストで見つからない場合は、その親ダイアログ コンテキストで検索されます。

DialogContext.parent から継承された

services

このダイアログ コンテキストに依存するサービス コレクションを取得します。

services: TurnContextStateCollection

プロパティ値

TurnContextStateCollection

DialogContext.services から継承された

stack

現在のダイアログ スタックを取得します。

stack: DialogInstance[]

プロパティ値

DialogContext.stack から継承された

state

すべてのメモリ スコープのビューを管理する DialogStateManager を取得します。

state: DialogStateManager

プロパティ値

DialogContext.state から継承された

メソッドの詳細

next(any)

次のウォーターフォール ステップにスキップします。

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

パラメーター

result

any

(省略可能) 次の手順に渡す結果。

戻り値

Promise<DialogTurnResult>

DialogTurnResult との約束。

注釈

return await step.skip();

継承済みメソッドの詳細

beginDialog(string, object)

ダイアログ インスタンスを開始し、ダイアログ スタックにプッシュします。 ダイアログの新しいインスタンスを作成し、スタックにプッシュします。

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

パラメーター

dialogId

string

開始するダイアログの ID。

options

object

随意。 ダイアログの起動時に渡す引数。

戻り値

Promise<DialogTurnResult>

ダイアログ ターンの結果に解決する Promise。

注釈

スタックにアクティブなダイアログが既に存在する場合、そのダイアログはスタック上の一番上のダイアログになるまで一時停止されます。

返されたオブジェクトの 状態 は、このメソッドが完了した後のダイアログ スタックの状態を示します。

このダイアログ コンテキストまたはその先祖で要求されたダイアログが見つからない場合、このメソッドは例外をスローします。

例えば:

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

も参照

DialogContext.beginDialog から継承された

cancelAllDialogs(boolean, string, any)

ダイアログ スタック上のすべてのダイアログをキャンセルし、スタックをクリアします。

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

パラメーター

cancelParents

boolean

随意。 true 場合、すべての親ダイアログも取り消されます。

eventName

string

随意。 ダイアログが取り消されると発生するカスタム イベントの名前。 既定値は cancelDialogです。

eventValue

any

随意。 カスタム キャンセル イベントと共に渡す値。

戻り値

Promise<DialogTurnResult>

ダイアログ ターンの結果に解決する Promise。

注釈

これにより、スタックからダイアログを削除する前に、各ダイアログの Dialog.endDialog メソッドが呼び出されます。

最初にスタックにダイアログがあった場合、戻り値の 状態 は取り消 。それ以外の場合は、空の

次の使用例は、"bookFlight" ダイアログを開始する前に、ダイアログ スタック dcクリアします。

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

も参照

  • endDialog を する

DialogContext.cancelAllDialogs から継承された

continueDialog()

アクティブなダイアログがある場合は、このダイアログ コンテキストを Dialog.continueDialog メソッドに渡して、アクティブなダイアログの実行を続行します。

function continueDialog(): Promise<DialogTurnResult>

戻り値

Promise<DialogTurnResult>

ダイアログ ターンの結果に解決する Promise。

注釈

呼び出しが完了したら、ターン コンテキストの応答 プロパティを確認して、ダイアログがユーザーに応答を送信したかどうかを判断できます。

返されたオブジェクトの 状態 は、このメソッドが完了した後のダイアログ スタックの状態を示します。

通常は、ボットのターン ハンドラー内からこれを呼び出します。

例えば:

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.`);
}

DialogContext.continueDialog から継承された

emitEvent(string, any, boolean, boolean)

特定の ID を持つダイアログを検索します。

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

パラメーター

name

string

発生させるイベントの名前。

value

any

随意。 イベントと共に送信する値。

bubble

boolean

随意。 ローカルで処理されない場合にイベントを親にバブルするかどうかを制御するフラグ。 既定値は trueです。

fromLeaf

boolean

随意。 イベントがリーフ ノードから出力されるかどうか。

戻り値

Promise<boolean>

イベントが処理されたかどうかを true します。

注釈

現在のダイアログまたはそれを開始したユーザーが処理する名前付きイベントを出力します。

DialogContext.emitEvent から継承された

endDialog(any)

ダイアログを終了し、スタックからポップします。 ダイアログの親にオプションの結果を返します。

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

パラメーター

result

any

随意。 親ロジックに渡す結果。 これは、スタック上の次のダイアログ、またはこれがスタックの最後のダイアログ、親ダイアログ コンテキスト、またはボットのターン ハンドラーである場合です。

戻り値

Promise<DialogTurnResult>

ダイアログ ターンの結果に解決する Promise。

注釈

ダイアログは、ダイアログ スタック上の次のダイアログ (存在する場合) です。 このメソッドは、親の Dialog.resumeDialog メソッドを呼び出し、終了ダイアログによって返された結果を渡します。 親ダイアログがない場合、ターンは終了し、結果は返されたオブジェクトの 結果 プロパティを通じてボットで使用できます。

返されたオブジェクトの 状態 は、このメソッドが完了した後のダイアログ スタックの状態を示します。

通常は、特定のダイアログのロジック内からこれを呼び出して、ダイアログが完了したことをダイアログ コンテキストに通知し、ダイアログをスタックから削除し、親ダイアログを再開します。

例えば:

return await dc.endDialog(returnValue);

も参照

DialogContext.endDialog から継承された

findDialog(string)

特定の ID を持つダイアログを検索します。

function findDialog(dialogId: string): Dialog | undefined

パラメーター

dialogId

string

検索するダイアログの ID。

戻り値

Dialog | undefined

指定された ID のダイアログ。

注釈

このダイアログ コンテキストに関連付けられている DialogSet で開始するダイアログが見つからない場合は、その親ダイアログ コンテキストでダイアログを検索しようとします。

も参照

DialogContext.findDialog から継承された

getLocale()

DialogContext で CultureInfo を取得します。

function getLocale(): string

戻り値

string

ロケール文字列。

DialogContext.getLocale から継承された

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

プロンプト ダイアログを呼び出すためのオプションの書式設定を簡略化するヘルパー関数。

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

パラメーター

dialogId

string

開始するプロンプト ダイアログの ID。

promptOrOptions

string | Partial<Activity> | PromptOptions

ユーザーを送信する最初のプロンプトのテキスト、最初のプロンプトとして送信するアクティビティ、またはプロンプト ダイアログの書式設定に使用するオブジェクト。

戻り値

Promise<DialogTurnResult>

注釈

このヘルパー メソッドは、 パラメーターとして使用するオブジェクトを書式設定し、beginDialog 呼び出して、指定したプロンプト ダイアログを開始します。

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

DialogContext.prompt から継承された

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

プロンプト ダイアログを呼び出すためのオプションの書式設定を簡略化するヘルパー関数。

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

パラメーター

dialogId

string

開始するプロンプト ダイアログの ID。

promptOrOptions

string | Partial<Activity> | PromptOptions

ユーザーを送信する初期プロンプトのテキスト、初期プロンプトとして送信する アクティビティ、またはプロンプト ダイアログの書式設定に使用するオブジェクト。

choices

string | Choice[]

随意。 ユーザーが選択する選択肢の配列。ChoicePromptで使用します。

戻り値

Promise<DialogTurnResult>

注釈

このヘルパー メソッドは、 パラメーターとして使用するオブジェクトを書式設定し、beginDialog 呼び出して、指定したプロンプト ダイアログを開始します。

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

DialogContext.prompt から継承された

replaceDialog(string, object)

アクティブなダイアログを終了し、その代わりに新しいダイアログを開始します。

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

パラメーター

dialogId

string

開始するダイアログの ID。

options

object

随意。 起動時に新しいダイアログに渡す引数。

戻り値

Promise<DialogTurnResult>

ダイアログ ターンの結果に解決する Promise。

注釈

これは、ループを作成したり、別のダイアログにリダイレクトしたりする場合に特に便利です。

返されたオブジェクトの 状態 は、このメソッドが完了した後のダイアログ スタックの状態を示します。

このメソッドは、現在のダイアログを終了し、新しいダイアログをすぐに開始するのと似ています。 ただし、親ダイアログは再開も通知もされません。

も参照

  • beginDialog を する
  • endDialog を する

DialogContext.replaceDialog から継承された

repromptDialog()

アクティブなダイアログに対して、ユーザーに入力を再度求めるメッセージを表示するように要求します。

function repromptDialog(): Promise<void>

戻り値

Promise<void>

注釈

これにより、アクティブなダイアログの repromptDialog メソッドが呼び出されます。

例えば:

await dc.repromptDialog();

DialogContext.repromptDialog から継承された