Middleware インターフェイス
public interface Middleware
受信アクティビティで動作できるミドルウェアを表します。 BotAdapter は、ユーザーのチャネルからの受信アクティビティをミドルウェアの onTurn(TurnContext turnContext, NextDelegate next) メソッドに渡します。
ミドルウェア オブジェクトは、ミドルウェア コレクション\u2019アダプターに追加できます。 アダプターは、ボット ミドルウェア パイプラインを介して受信アクティビティを処理し、ボット\u2019ロジックに転送してから、もう一度戻します。 各アクティビティがボットの内外を流れるにつれて、ミドルウェアの各部分は、ボット ロジックが実行される前と後の両方で、アクティビティを検査または操作できます。
各アクティビティについて、アダプターはミドルウェアを追加した順序で呼び出します。
これにより、アダプターがボットの onTurn(TurnContext turnContext) メソッドを呼び出す前後に"before" メッセージと "after" メッセージを送信するミドルウェアが定義されます。
public class SampleMiddleware : Middleware { public async Task OnTurn(TurnContext context, MiddlewareSet.NextDelegate next) { context.SendActivity("before"); await next().ConfigureAwait(false); context.SendActivity("after"); } }
Bot
メソッドの概要
| 修飾子と型 | メソッドと説明 |
|---|---|
| abstract java.util.concurrent.CompletableFuture<java.lang.Void> |
onTurn(TurnContext turnContext, NextDelegate next)
受信アクティビティを処理します。 |
メソッドの詳細
onTurn
public abstract CompletableFuture
受信アクティビティを処理します。
パラメーター:
戻り値:
next デリゲートを呼び出して、パイプライン内の次のミドルウェアに制御を渡します。 ミドルウェア\u2019次のデリゲートを呼び出さない場合、アダプターは後続のミドルウェア\u2019要求ハンドラーまたはボット\u2019受信ハンドラー、およびパイプラインのショート サーキットを呼び出しません。
context は、受信アクティビティと、アクティビティの処理に必要なその他のデータに関する情報を提供します。
TurnContext
Activity