BotAdapter class
ボットをサービス エンドポイントに接続できるボット アダプターのコア動作を定義します。
注釈
ボット アダプターは認証プロセスをカプセル化し、Bot Connector Service との間でアクティビティを送受信します。 ボットがアクティビティを受信すると、アダプターによってターン コンテキスト オブジェクトが作成され、ボット アプリケーション ロジックに渡され、応答がユーザーのチャネルに返されます。
アダプターは、ボット ミドルウェア パイプラインを介して受信アクティビティを処理してボット ロジックに誘導し、もう一度戻します。 各アクティビティがボットの内外を流れるにつれて、ミドルウェアの各部分は、ボット ロジックが実行される前と後の両方で、アクティビティを検査または操作できます。
メソッド
詳細については、
プロパティ
Bot |
|
Connector |
|
OAuth |
|
on |
ミドルウェアまたはアプリケーションで例外をキャッチできるエラー ハンドラーを取得または設定します。 ミドルウェアまたはアプリケーションで例外をキャッチできるエラー ハンドラーを設定します。 |
メソッド
プロパティの詳細
BotIdentityKey
BotIdentityKey: symbol
プロパティ値
symbol
ConnectorClientKey
ConnectorClientKey: symbol
プロパティ値
symbol
OAuthScopeKey
OAuthScopeKey: symbol
プロパティ値
symbol
onTurnError
ミドルウェアまたはアプリケーションで例外をキャッチできるエラー ハンドラーを取得または設定します。 ミドルウェアまたはアプリケーションで例外をキャッチできるエラー ハンドラーを設定します。
(context: TurnContext, error: Error) => Promise<void> onTurnError
プロパティ値
(context: TurnContext, error: Error) => Promise<void>
非同期操作を表す Promise。
注釈
エラー ハンドラーは、次のパラメーターを使用して呼び出されます。
名前 | 種類 | 形容 |
---|---|---|
context |
TurnContext の |
ターンのコンテキスト オブジェクト。 |
error |
Error |
Node.js エラーがスローされました。 |
メソッドの詳細
continueConversation(Partial<ConversationReference>, (revocableContext: TurnContext) => Promise<void>)
ユーザーとの会話を非同期的に再開します。時間が経った後に再開される可能性があります。
function continueConversation(reference: Partial<ConversationReference>, logic: (revocableContext: TurnContext) => Promise<void>): Promise<void>
パラメーター
- reference
-
Partial<ConversationReference>
続行する会話への参照。
- logic
-
(revocableContext: TurnContext) => Promise<void>
アダプター ミドルウェアの実行後に呼び出す非同期メソッド。
戻り値
Promise<void>
注釈
これは、多くの場合、プロアクティブ通知と呼ばれ、ボットは受信メッセージを待たずにメッセージを会話またはユーザーにプロアクティブに送信できます。 たとえば、ボットは、このメソッドを使用して通知やクーポンをユーザーに送信できます。
continueConversationAsync(ClaimsIdentity, Partial<ConversationReference>, (context: TurnContext) => Promise<void>)
ユーザーとの会話を非同期的に再開します。時間が経った後に再開される可能性があります。
function continueConversationAsync(claimsIdentity: ClaimsIdentity, reference: Partial<ConversationReference>, logic: (context: TurnContext) => Promise<void>): Promise<void>
パラメーター
- claimsIdentity
-
ClaimsIdentity
会話の ClaimsIdentity。
- reference
-
Partial<ConversationReference>
継続する会話に 部分的な
- logic
-
(context: TurnContext) => Promise<void>
アダプター ミドルウェアの実行後に呼び出す非同期メソッド。
戻り値
Promise<void>
非同期操作を表す Promise
continueConversationAsync(ClaimsIdentity, Partial<ConversationReference>, string, (context: TurnContext) => Promise<void>)
ユーザーとの会話を非同期的に再開します。時間が経った後に再開される可能性があります。
function continueConversationAsync(claimsIdentity: ClaimsIdentity, reference: Partial<ConversationReference>, audience: string, logic: (context: TurnContext) => Promise<void>): Promise<void>
パラメーター
- claimsIdentity
-
ClaimsIdentity
会話の ClaimsIdentity。
- reference
-
Partial<ConversationReference>
継続する会話に 部分的な
- audience
-
string
プロアクティブ メッセージの受信者を示す値。
- logic
-
(context: TurnContext) => Promise<void>
アダプター ミドルウェアの実行後に呼び出す非同期メソッド。
戻り値
Promise<void>
非同期操作を表す Promise
continueConversationAsync(string, Partial<ConversationReference>, (context: TurnContext) => Promise<void>)
ユーザーとの会話を非同期的に再開します。時間が経った後に再開される可能性があります。
function continueConversationAsync(botAppId: string, reference: Partial<ConversationReference>, logic: (context: TurnContext) => Promise<void>): Promise<void>
パラメーター
- botAppId
-
string
ボットのアプリケーション ID。 このパラメーターは、単一テナントのアダプター (コンソール、テストなど) では無視されますが、マルチテナント対応の BotFrameworkAdapter にとって重要です。
- reference
-
Partial<ConversationReference>
継続する会話に 部分的な
- logic
-
(context: TurnContext) => Promise<void>
アダプター ミドルウェアの実行後に呼び出す非同期メソッド。
戻り値
Promise<void>
非同期操作を表す Promise
createConversationAsync(string, string, string, string, ConversationParameters, (context: TurnContext) => Promise<void>)
指定したチャネルに会話を作成します。
function createConversationAsync(_botAppId: string, _channelId: string, _serviceUrl: string, _audience: string, _conversationParameters: ConversationParameters, _logic: (context: TurnContext) => Promise<void>): Promise<void>
パラメーター
- _botAppId
-
string
ボットのアプリケーション ID。
- _channelId
-
string
チャネルの ID。
- _serviceUrl
-
string
チャネルの ID。
- _audience
-
string
コネクタの対象ユーザー。
- _conversationParameters
-
ConversationParameters
会話の作成に使用する会話情報
- _logic
-
(context: TurnContext) => Promise<void>
結果のボット ターンを呼び出すメソッド。
戻り値
Promise<void>
非同期操作を表す Promise
注釈
会話を開始するには、ボットがそのアカウント情報と、そのチャネルのユーザーのアカウント情報を知っている必要があります。 ほとんどの_channelsは、直接メッセージ (グループ以外) の会話の開始のみをサポートします。
アダプターは、チャネルで新しい会話を作成し、そのミドルウェア パイプラインを介して conversationUpdate
アクティビティをロジック メソッドに送信しようとします。
指定したユーザーとの会話が確立されている場合、アクティビティの会話の ID には新しい会話の ID が含まれます。
deleteActivity(TurnContext, Partial<ConversationReference>)
既存のアクティビティを非同期的に削除します。
このインターフェイスはフレームワークをサポートしており、コードに対して直接呼び出されるものではありません。
TurnContext.deleteActivity
function deleteActivity(context: TurnContext, reference: Partial<ConversationReference>): Promise<void>
パラメーター
- context
- TurnContext
ターンのコンテキスト オブジェクト。
- reference
-
Partial<ConversationReference>
削除するアクティビティの会話参照情報。
戻り値
Promise<void>
注釈
すべてのチャネルでこの操作がサポートされているわけではありません。 そうでないチャネルの場合、この呼び出しで例外がスローされる可能性があります。
sendActivities(TurnContext, Partial<Activity>[])
送信アクティビティのセットをチャネル サーバーに非同期的に送信します。
このメソッドはフレームワークをサポートしており、コードに対して直接呼び出すものではありません。
ターン コンテキストの sendActivity
function sendActivities(context: TurnContext, activities: Partial<Activity>[]): Promise<ResourceResponse[]>
パラメーター
- context
- TurnContext
ターンのコンテキスト オブジェクト。
- activities
-
Partial<Activity>[]
送信するアクティビティ。
戻り値
Promise<ResourceResponse[]>
ResourceResponse の配列
注釈
アクティビティは、受信した順序で順番に送信されます。 送信されたアクティビティごとに応答オブジェクトが返されます。
message
アクティビティの場合、これには配信されたメッセージの ID が含まれます。
updateActivity(TurnContext, Partial<Activity>)
以前のアクティビティを更新されたバージョンに非同期的に置き換えます。 このインターフェイスはフレームワークをサポートしており、コードに対して直接呼び出されるものではありません。 TurnContext.updateActivity を使用して、ボット コードからアクティビティを更新します。
function updateActivity(context: TurnContext, activity: Partial<Activity>): Promise<ResourceResponse | void>
パラメーター
- context
- TurnContext
ターンのコンテキスト オブジェクト。
- activity
-
Partial<Activity>
置き換えるアクティビティの更新バージョン。
戻り値
Promise<ResourceResponse | void>
注釈
すべてのチャネルでこの操作がサポートされているわけではありません。 そうでないチャネルの場合、この呼び出しで例外がスローされる可能性があります。
use((context: TurnContext, next: () => Promise<void>) => Promise<void> | Middleware[])
アダプターのパイプラインにミドルウェアを追加します。
function use(middlewares: (context: TurnContext, next: () => Promise<void>) => Promise<void> | Middleware[]): this
パラメーター
- middlewares
-
(context: TurnContext, next: () => Promise<void>) => Promise<void> | Middleware[]
追加するミドルウェアまたはミドルウェア ハンドラー。
戻り値
this
更新されたアダプター オブジェクト。
注釈
ミドルウェアは初期化時にアダプターに追加されます。 各ターンで、アダプターはミドルウェアを追加した順序で呼び出します。