SimpleDialog class
単純なクロージャに基づくカスタム ダイアログを作成できます。 これは、動的な会話フローが必要な場合や、ウォーターフォールの使用にあまり適していない状況がある場合に便利です。 留意すべき点は次のとおりです。
- ダイアログ クロージャは、テストが必要になる可能性がある 2 つの異なるコンテキストで呼び出すことができます。 ユーザーがダイアログにメッセージを送信すると、予期したとおりに呼び出されますが、クロージャから別のプロンプトまたはダイアログを呼び出すと、プロンプト/ダイアログの結果で 2 回目に呼び出されます。 通常、この 2 番目のケースをテストするには、
args.resumedプロパティの存在を確認します。 簡単にできる無限ループに身を乗り出さないようにすることが重要です。 - ウォーターフォールとは異なり、ダイアログは自動的に終了しません。 session.endDialog()を呼び出すまで、アクティブなダイアログ
残ります。
- Extends
コンストラクター
| Simple |
単純なクロージャに基づいて新しいカスタム ダイアログを作成します。 |
メソッド
| begin<T>(Call |
新しいダイアログ セッションが開始されるときに呼び出されます。 |
| dialog |
子ダイアログが終了し、現在のダイアログが再開されています。 |
| reply |
ユーザーから受信したメッセージを処理します。 ダイアログ システムによって呼び出されます。 |
コンストラクターの詳細
SimpleDialog((session: CallSession, args?: any | IDialogResult<any>) => void)
単純なクロージャに基づいて新しいカスタム ダイアログを作成します。
new SimpleDialog(handler: (session: CallSession, args?: any | IDialogResult<any>) => void)
パラメーター
- handler
-
(session: CallSession, args?: any | IDialogResult<any>) => void
ダイアログの関数クロージャ。
メソッドの詳細
begin<T>(CallSession, T)
新しいダイアログ セッションが開始されるときに呼び出されます。
function begin<T>(session: CallSession, args?: T)
パラメーター
- session
- CallSession
現在の会話のセッション オブジェクト。
- args
-
T
(省略可能) その親によってダイアログに渡される引数。
dialogResumed<T>(CallSession, IDialogResult<T>)
子ダイアログが終了し、現在のダイアログが再開されています。
function dialogResumed<T>(session: CallSession, result: IDialogResult<T>)
パラメーター
- session
- CallSession
現在の会話のセッション オブジェクト。
- result
子ダイアログによって返される結果。
replyReceived(CallSession)
ユーザーから受信したメッセージを処理します。 ダイアログ システムによって呼び出されます。
function replyReceived(session: CallSession)
パラメーター
- session
- CallSession
現在の会話のセッション オブジェクト。