BotFrameworkAdapter class
警告
この API は非推奨になりました。
Use CloudAdapter
instead.
- Extends
-
BotAdapter
コンストラクター
Bot |
BotFrameworkAdapter クラスの新しいインスタンスを作成します。 |
プロパティ
is |
ストリーミング コンテキストで使用され、ボットがアクティビティを送信するためにストリーミング接続がまだ開いているかどうかを確認します。 |
Token |
継承されたプロパティ
Bot |
|
Connector |
|
OAuth |
|
on |
メソッド
継承されたメソッド
continue |
ユーザーとの会話を非同期的に再開します。時間が経った後に再開される可能性があります。 |
continue |
ユーザーとの会話を非同期的に再開します。時間が経った後に再開される可能性があります。 |
continue |
ユーザーとの会話を非同期的に再開します。時間が経った後に再開される可能性があります。 |
create |
指定したチャネルに会話を作成します。 |
use((context: Turn |
アダプターのパイプラインにミドルウェアを追加します。 |
コンストラクターの詳細
BotFrameworkAdapter(Partial<BotFrameworkAdapterSettings>)
BotFrameworkAdapter クラスの新しいインスタンスを作成します。
new BotFrameworkAdapter(settings?: Partial<BotFrameworkAdapterSettings>)
パラメーター
- settings
-
Partial<BotFrameworkAdapterSettings>
随意。 このアダプター インスタンスに使用する設定。
注釈
settings
パラメーター channelService または openIdMetadata 値 含まれていない場合、コンストラクターはプロセスの環境変数でこれらの値をチェックします。 これらの値は、ボットが Azure にプロビジョニングされている場合に設定できます。その場合は、ボットがグローバル クラウドまたは国内クラウドで適切に動作するために必要です。
BotFrameworkAdapterSettings クラスは、使用可能なアダプター設定を定義します。
プロパティの詳細
isStreamingConnectionOpen
ストリーミング コンテキストで使用され、ボットがアクティビティを送信するためにストリーミング接続がまだ開いているかどうかを確認します。
boolean isStreamingConnectionOpen
プロパティ値
boolean
ストリーミング接続が開いている場合は True、それ以外の場合は false。
TokenApiClientCredentialsKey
TokenApiClientCredentialsKey: symbol
プロパティ値
symbol
継承されたプロパティの詳細
BotIdentityKey
BotIdentityKey: symbol
プロパティ値
symbol
BotAdapter.BotIdentityKey から継承された
ConnectorClientKey
ConnectorClientKey: symbol
プロパティ値
symbol
BotAdapter.ConnectorClientKey から継承された
OAuthScopeKey
OAuthScopeKey: symbol
プロパティ値
symbol
BotAdapter.OAuthScopeKey から継承された
onTurnError
onTurnError: (context: TurnContext, error: Error) => Promise<void>
プロパティ値
(context: TurnContext, error: Error) => Promise<void>
BotAdapter.onTurnError から継承された
メソッドの詳細
continueConversation(Partial<ConversationReference>, (context: TurnContext) => Promise<void>)
ユーザーとの会話を非同期的に再開します。時間が経った後に再開される可能性があります。
function continueConversation(reference: Partial<ConversationReference>, logic: (context: TurnContext) => Promise<void>): Promise<void>
パラメーター
- reference
-
Partial<ConversationReference>
続行する会話への参照。
- logic
-
(context: TurnContext) => Promise<void>
アダプター ミドルウェアの実行後に呼び出す非同期メソッド。
戻り値
Promise<void>
注釈
これは、多くの場合、プロアクティブ通知と呼ばれ、ボットは受信メッセージを待たずにメッセージを会話またはユーザーにプロアクティブに送信できます。 たとえば、ボットは、このメソッドを使用して通知やクーポンをユーザーに送信できます。
プロアクティブ メッセージを送信するには:
- 受信アクティビティから ConversationReference のコピーを保存します。 たとえば、会話参照をデータベースに格納できます。
- このメソッドを呼び出して、後で会話を再開します。 保存された参照を使用して会話にアクセスします。
- 成功すると、アダプターは TurnContext オブジェクトを生成し、
logic
関数ハンドラーを呼び出します。 プロアクティブ メッセージを送信するには、logic
関数を使用します。
会話内の受信アクティビティから参照をコピーするには、TurnContext.getConversationReference メソッドを使用します。
このメソッドは、processActivity メソッドに似ています。
アダプターは、TurnContext を作成し、そのミドルウェアを介してルーティングしてから、logic
ハンドラーを呼び出します。 作成されたアクティビティの 型は 'event' の で、名 'continueConversation' になります。
例えば:
server.post('/api/notifyUser', async (req, res) => {
// Lookup previously saved conversation reference.
const reference = await findReference(req.body.refId);
// Proactively notify the user.
if (reference) {
await adapter.continueConversation(reference, async (context) => {
await context.sendActivity(req.body.message);
});
res.send(200);
} else {
res.send(404);
}
});
continueConversation(Partial<ConversationReference>, string, (context: TurnContext) => Promise<void>)
ユーザーとの会話を非同期的に再開します。時間が経った後に再開される可能性があります。
function continueConversation(reference: Partial<ConversationReference>, oAuthScope: string, logic: (context: TurnContext) => Promise<void>): Promise<void>
パラメーター
- reference
-
Partial<ConversationReference>
(xref:botframework-schema。続ける会話の ConversationReference)。
- oAuthScope
-
string
メッセージ交換を続行するために呼び出す、送信されたアクティビティまたは関数の目的の受信者。
- logic
-
(context: TurnContext) => Promise<void>
随意。 アダプター ミドルウェアの実行後に呼び出す非同期メソッド。
戻り値
Promise<void>
createConnectorClient(string)
コネクタ クライアントを作成します。
function createConnectorClient(serviceUrl: string): ConnectorClient
パラメーター
- serviceUrl
-
string
クライアントのサービス URL。
戻り値
ConnectorClient
ConnectorClient インスタンス。
注釈
単体テスト用のモック コネクタ クライアントを作成するには、派生クラスでこれをオーバーライドします。
createConnectorClientWithIdentity(string, ClaimsIdentity)
ClaimsIdentity を使用して ConnectorClient を作成します。
function createConnectorClientWithIdentity(serviceUrl: string, identity: ClaimsIdentity): Promise<ConnectorClient>
パラメーター
- serviceUrl
-
string
クライアントのサービス URL。
- identity
-
ClaimsIdentity
ClaimsIdentity
戻り値
Promise<ConnectorClient>
注釈
ClaimsIdentity に Skills 要求の要求が含まれている場合は、Skills で使用する ConnectorClient を作成します。 ClaimsIdentity またはインスタンスの資格情報プロパティから適切な対象ユーザーを派生させます。
createConnectorClientWithIdentity(string, ClaimsIdentity, string)
ClaimsIdentity と明示的な対象ユーザーを含む ConnectorClient を作成します。
function createConnectorClientWithIdentity(serviceUrl: string, identity: ClaimsIdentity, audience: string): Promise<ConnectorClient>
パラメーター
- serviceUrl
-
string
クライアントのサービス URL。
- identity
-
ClaimsIdentity
ClaimsIdentity
- audience
-
string
ConnectorClient のメッセージの受信者。 通常、Bot Framework チャネル サービスまたは別のボットの AppId。
戻り値
Promise<ConnectorClient>
注釈
トリミングされた対象ユーザーが長さ 0 以外の文字列でない場合、対象ユーザーは ClaimsIdentity またはインスタンスの資格情報プロパティから派生します。
createConversation(Partial<ConversationReference>, (context: TurnContext) => Promise<void>)
チャネル上のユーザーとの会話を非同期で作成して開始します。
function createConversation(reference: Partial<ConversationReference>, logic: (context: TurnContext) => Promise<void>): Promise<void>
パラメーター
- reference
-
Partial<ConversationReference>
作成する会話の参照。
- logic
-
(context: TurnContext) => Promise<void>
アダプター ミドルウェアの実行後に呼び出す非同期メソッド。
戻り値
Promise<void>
非同期操作を表す Promise
createConversation(Partial<ConversationReference>, Partial<ConversationParameters>, (context: TurnContext) => Promise<void>)
チャネル上のユーザーとの会話を非同期で作成して開始します。
function createConversation(reference: Partial<ConversationReference>, parameters: Partial<ConversationParameters>, logic: (context: TurnContext) => Promise<void>): Promise<void>
パラメーター
- reference
-
Partial<ConversationReference>
作成する会話の参照。
- parameters
-
Partial<ConversationParameters>
会話の作成時に使用されるパラメーター
- logic
-
(context: TurnContext) => Promise<void>
アダプター ミドルウェアの実行後に呼び出す非同期メソッド。
戻り値
Promise<void>
非同期操作を表す Promise
deleteActivity(TurnContext, Partial<ConversationReference>)
既存のアクティビティを非同期的に削除します。 このインターフェイスはフレームワークをサポートしており、コードに対して直接呼び出されるものではありません。 TurnContext.deleteActivity 使用して、ボット コードからアクティビティを削除します。
function deleteActivity(context: TurnContext, reference: Partial<ConversationReference>): Promise<void>
パラメーター
- context
-
TurnContext
ターンのコンテキスト オブジェクト。
- reference
-
Partial<ConversationReference>
削除するアクティビティの会話参照情報。
戻り値
Promise<void>
注釈
すべてのチャネルでこの操作がサポートされているわけではありません。 そうでないチャネルの場合、この呼び出しで例外がスローされる可能性があります。
deleteConversationMember(TurnContext, string)
現在の会話からメンバーを非同期的に削除します。
function deleteConversationMember(context: TurnContext, memberId: string): Promise<void>
パラメーター
- context
-
TurnContext
ターンのコンテキスト オブジェクト。
- memberId
-
string
会話から削除するメンバーの ID。
戻り値
Promise<void>
注釈
会話からメンバーの ID 情報を削除します。
すべてのチャネルでこの操作がサポートされているわけではありません。 そうでないチャネルの場合、この呼び出しで例外がスローされる可能性があります。
emulateOAuthCards(TurnContext | string, boolean)
チャネルのエミュレートされた OAuth カードを非同期的に送信します。 このメソッドはフレームワークをサポートしており、コードに対して直接呼び出すものではありません。
function emulateOAuthCards(contextOrServiceUrl: TurnContext | string, emulate: boolean): Promise<void>
パラメーター
- contextOrServiceUrl
-
TurnContext | string
エミュレーターの URL。
- emulate
-
boolean
エミュレートされた OAuth カードをエミュレーターに送信する true
。カードを送信しないように false
します。
戻り値
Promise<void>
注釈
Bot Framework Emulator でボットをテストする場合、このメソッドは OAuth カードの相互作用をエミュレートできます。
exchangeToken(TurnContext, string, string, TokenExchangeRequest, CoreAppCredentials)
シングル サインオンなどのトークン交換操作を非同期的に実行します。
function exchangeToken(context: TurnContext, connectionName: string, userId: string, tokenExchangeRequest: TokenExchangeRequest, appCredentials?: CoreAppCredentials): Promise<TokenResponse>
パラメーター
- context
-
TurnContext
ユーザーとの会話の現在のターンのコンテキスト。
- connectionName
-
string
使用する認証接続の名前。
- userId
-
string
トークンに関連付けられるユーザー ID。
- tokenExchangeRequest
-
TokenExchangeRequest
交換要求の詳細。交換するトークンまたは交換する URI。
- appCredentials
-
CoreAppCredentials
随意。 OAuth の CoreAppCredentials。
戻り値
Promise<TokenResponse>
getAadTokens(TurnContext, string, string[])
トークン サーバーからユーザーを非同期的にサインアウトします。
function getAadTokens(context: TurnContext, connectionName: string, resourceUrls: string[]): Promise<[key: string]: TokenResponse>
パラメーター
- context
-
TurnContext
ターンのコンテキスト オブジェクト。
- connectionName
-
string
使用する認証接続の名前。
- resourceUrls
-
string[]
トークンを取得するリソース URL の一覧。
戻り値
Promise<[key: string]: TokenResponse>
リソース URL による TokenResponse オブジェクトのマップ。
getAadTokens(TurnContext, string, string[], CoreAppCredentials)
function getAadTokens(context: TurnContext, connectionName: string, resourceUrls: string[], oAuthAppCredentials?: CoreAppCredentials): Promise<[key: string]: TokenResponse>
パラメーター
- context
-
TurnContext
- connectionName
-
string
- resourceUrls
-
string[]
- oAuthAppCredentials
-
CoreAppCredentials
戻り値
Promise<[key: string]: TokenResponse>
getActivityMembers(TurnContext, string)
特定のアクティビティのメンバーを非同期的に一覧表示します。
function getActivityMembers(context: TurnContext, activityId?: string): Promise<ChannelAccount[]>
パラメーター
- context
-
TurnContext
ターンのコンテキスト オブジェクト。
- activityId
-
string
随意。 メンバーを取得するアクティビティの ID。 指定しない場合は、現在のアクティビティ ID が使用されます。
戻り値
Promise<ChannelAccount[]>
特定のアクティビティに関係 ユーザーの ChannelAccount オブジェクトの配列。
注釈
特定のアクティビティに関係 ユーザーの ChannelAccount オブジェクトの配列を返します。
これは、会話のすべてのメンバーではなく、アクティビティに直接関係するユーザーのみを返すという点で、getConversationMembers とは異なります。
getConversationMembers(TurnContext)
現在の会話のメンバーを非同期的に一覧表示します。
function getConversationMembers(context: TurnContext): Promise<ChannelAccount[]>
パラメーター
- context
-
TurnContext
ターンのコンテキスト オブジェクト。
戻り値
Promise<ChannelAccount[]>
会話に現在関係しているすべてのユーザーの ChannelAccount オブジェクトの配列。
注釈
会話に現在関係しているすべてのユーザー ChannelAccount オブジェクトの配列を返します。
これは、特定のアクティビティ 直接関係するメンバーだけでなく、会話のすべてのメンバーを返すという点で、getActivityMembers とは異なります。
getConversations(TurnContext | string, string)
指定されたチャネルの場合、このボットが参加している会話のページを非同期的に取得します。
function getConversations(contextOrServiceUrl: TurnContext | string, continuationToken?: string): Promise<ConversationsResult>
パラメーター
- contextOrServiceUrl
-
TurnContext | string
クエリを実行するチャネル サーバーの URL、またはチャネル上の会話から TurnContext オブジェクト。
- continuationToken
-
string
随意。 結果の前のページからの継続トークン。
このパラメーターを省略するか、undefined
を使用して結果の最初のページを取得します。
戻り値
Promise<ConversationsResult>
結果のページと継続トークンを含む ConversationsResult オブジェクト。
注釈
戻り値の conversations プロパティには、ConversationMembers オブジェクトのページ 含まれています。 各オブジェクトの ID は、ボットがこのチャネルに参加している会話の ID です。 このメソッドは、ボットのサービス URL と資格情報のみが必要であり、会話のコンテキスト外から呼び出すことができます。
チャネルバッチの結果はページになります。 結果の continuationToken プロパティが空でない場合は、取得するページが他にもあります。 返されたトークンを使用して、結果の次のページを取得します。
contextOrServiceUrl
パラメーターが TurnContextの場合、チャネル サーバーの URL は contextOrServiceUrl
から取得されます。アクティビティをします。serviceUrlをします。
getSignInLink(TurnContext, string, AppCredentials, string, string)
SigninCardの一部として送信できるサインイン リンクをトークン サーバーから非同期的に取得します。
function getSignInLink(context: TurnContext, connectionName: string, oAuthAppCredentials?: AppCredentials, userId?: string, finalRedirect?: string): Promise<string>
パラメーター
- context
-
TurnContext
ターンのコンテキスト オブジェクト。
- connectionName
-
string
使用する認証接続の名前。
- oAuthAppCredentials
-
AppCredentials
OAuth の AppCredentials。
- userId
-
string
トークンに関連付けられるユーザー ID。
- finalRedirect
-
string
OAuth フローがリダイレクトする最後の URL。
戻り値
Promise<string>
getSignInLink(TurnContext, string, CoreAppCredentials, string, string)
function getSignInLink(context: TurnContext, connectionName: string, oAuthAppCredentials?: CoreAppCredentials, userId?: string, finalRedirect?: string): Promise<string>
パラメーター
- context
-
TurnContext
- connectionName
-
string
- oAuthAppCredentials
-
CoreAppCredentials
- userId
-
string
- finalRedirect
-
string
戻り値
Promise<string>
getSignInResource(TurnContext, string, string, string, CoreAppCredentials)
サインインのためにユーザーに送信される生のサインイン リソースを非同期的に取得します。
function getSignInResource(context: TurnContext, connectionName: string, userId?: string, finalRedirect?: string, appCredentials?: CoreAppCredentials): Promise<SignInUrlResponse>
パラメーター
- context
-
TurnContext
ターンのコンテキスト オブジェクト。
- connectionName
-
string
使用する認証接続の名前。
- userId
-
string
トークンに関連付けられるユーザー ID。
- finalRedirect
-
string
OAuth フローがリダイレクトする最後の URL。
- appCredentials
-
CoreAppCredentials
随意。 OAuth の CoreAppCredentials。
戻り値
Promise<SignInUrlResponse>
getTokenStatus(TurnContext, string, string)
特定のユーザーに対して構成された各接続のトークンの状態を非同期的に取得します。
function getTokenStatus(context: TurnContext, userId?: string, includeFilter?: string): Promise<TokenStatus[]>
パラメーター
- context
-
TurnContext
ターンのコンテキスト オブジェクト。
- userId
-
string
随意。 存在する場合は、トークンの状態を取得するユーザーの ID。 それ以外の場合は、現在のアクティビティを送信したユーザーの ID が使用されます。
- includeFilter
-
string
随意。 含める接続のコンマ区切りの一覧。 存在する場合、includeFilter
パラメーターは、このメソッドが返すトークンを制限します。
戻り値
Promise<TokenStatus[]>
取得した TokenStatus オブジェクト。
getTokenStatus(TurnContext, string, string, CoreAppCredentials)
function getTokenStatus(context: TurnContext, userId?: string, includeFilter?: string, oAuthAppCredentials?: CoreAppCredentials): Promise<TokenStatus[]>
パラメーター
- context
-
TurnContext
- userId
-
string
- includeFilter
-
string
- oAuthAppCredentials
-
CoreAppCredentials
戻り値
Promise<TokenStatus[]>
getUserToken(TurnContext, string, string)
ログイン フロー内のユーザーのトークンの取得を非同期的に試行します。
function getUserToken(context: TurnContext, connectionName: string, magicCode?: string): Promise<TokenResponse>
パラメーター
- context
-
TurnContext
ターンのコンテキスト オブジェクト。
- connectionName
-
string
使用する認証接続の名前。
- magicCode
-
string
随意。 ユーザーが入力した検証コード。
戻り値
Promise<TokenResponse>
ユーザー トークンを含む TokenResponse オブジェクト。
getUserToken(TurnContext, string, string, CoreAppCredentials)
function getUserToken(context: TurnContext, connectionName: string, magicCode?: string, oAuthAppCredentials?: CoreAppCredentials): Promise<TokenResponse>
パラメーター
- context
-
TurnContext
- connectionName
-
string
- magicCode
-
string
- oAuthAppCredentials
-
CoreAppCredentials
戻り値
Promise<TokenResponse>
process(Request, INodeSocket, INodeBuffer, (context: TurnContext) => Promise<void>)
各ストリーミング要求にロジック関数を適用して、Web ソケット接続を処理します。
function process(req: Request, socket: INodeSocket, head: INodeBuffer, logic: (context: TurnContext) => Promise<void>): Promise<void>
パラメーター
- socket
-
INodeSocket
対応する INodeSocket
- head
-
INodeBuffer
対応する INodeBuffer
- logic
-
(context: TurnContext) => Promise<void>
適用するロジック関数
戻り値
Promise<void>
非同期操作を表す Promise。
process(Request, Response, (context: TurnContext) => Promise<void>)
ロジック関数を適用して Web 要求を処理します。
function process(req: Request, res: Response, logic: (context: TurnContext) => Promise<void>): Promise<void>
パラメーター
- logic
-
(context: TurnContext) => Promise<void>
適用するロジック関数
戻り値
Promise<void>
非同期操作を表す Promise。
processActivity(WebRequest, WebResponse, (context: TurnContext) => Promise<any>)
ターン コンテキストを非同期に作成し、受信アクティビティのミドルウェア パイプラインを実行します。
function processActivity(req: WebRequest, res: WebResponse, logic: (context: TurnContext) => Promise<any>): Promise<void>
パラメーター
- req
- WebRequest
Express または Restify スタイル要求オブジェクト。
- res
- WebResponse
Express または Restify スタイルの応答オブジェクト。
- logic
-
(context: TurnContext) => Promise<any>
ミドルウェア パイプラインの末尾で呼び出す関数。
戻り値
Promise<void>
注釈
これは、ボットが受信メッセージを受信し、会話のターンを定義する主な方法です。 このメソッドは次のとおりです。
- 受信要求を解析して認証します。
- アクティビティは、受信要求の本文から読み取られます。 アクティビティを解析できない場合は、エラーが返されます。
- 送信者の ID は、ボットの
appId
とappPassword
を使用して、エミュレーターまたは有効な Microsoft サーバーとして認証されます。 送信者の ID が検証されていない場合、要求は拒否されます。
- 受信したアクティビティの TurnContext オブジェクトを作成します。
- アダプターのミドルウェア パイプラインを介してターン コンテキストを送信します。
- ターン コンテキストを
logic
関数に送信します。- ボットは、現時点で追加のルーティングまたは処理を実行できます。
Promise を返す (または
async
ハンドラーを指定する) と、アダプターは非同期操作の完了を待機します。 -
logic
関数が完了すると、ミドルウェアによって設定された promise チェーンが解決されます。
- ボットは、現時点で追加のルーティングまたは処理を実行できます。
Promise を返す (または
先端
ボットのコンソール出力にエラー TypeError: Cannot perform 'set' on a proxy that has been revoked
が表示された場合、await
キーワードを使用せずに非同期関数が使用されたことが原因である可能性があります。 すべての非同期関数で await が使用されていることを確認します。
ミドルウェアは、ターン ショートサーキットを できます。 この場合、後続のミドルウェアと logic
関数は呼び出されません。ただし、この時点より前のすべてのミドルウェアは、引き続き完了まで実行されます。
ミドルウェア パイプラインの詳細については、ボットの のしくみとミドルウェア 記事 を参照してください。
アダプターの メソッドを使用して、アダプターにミドルウェアを追加します。
例えば:
server.post('/api/messages', (req, res) => {
// Route received request to adapter for processing
adapter.processActivity(req, res, async (context) => {
// Process any messages received
if (context.activity.type === ActivityTypes.Message) {
await context.sendActivity(`Hello World`);
}
});
});
processActivityDirect(Activity, (context: TurnContext) => Promise<any>)
ターン コンテキストを非同期に作成し、受信アクティビティのミドルウェア パイプラインを実行します。
function processActivityDirect(activity: Activity, logic: (context: TurnContext) => Promise<any>): Promise<void>
パラメーター
- activity
-
Activity
処理するアクティビティ。
- logic
-
(context: TurnContext) => Promise<any>
ミドルウェア パイプラインの末尾で呼び出す関数。
戻り値
Promise<void>
注釈
これは、ボットが受信メッセージを受信し、会話のターンを定義する主な方法です。 このメソッドは次のとおりです。
- 受信したアクティビティの TurnContext オブジェクトを作成します。
- アダプターのミドルウェア パイプラインを介してターン コンテキストを送信します。
- ターン コンテキストを
logic
関数に送信します。- ボットは、現時点で追加のルーティングまたは処理を実行できます。
Promise を返す (または
async
ハンドラーを指定する) と、アダプターは非同期操作の完了を待機します。 -
logic
関数が完了すると、ミドルウェアによって設定された promise チェーンが解決されます。
- ボットは、現時点で追加のルーティングまたは処理を実行できます。
Promise を返す (または
ミドルウェアは、ターン ショートサーキットを できます。 この場合、後続のミドルウェアと logic
関数は呼び出されません。ただし、この時点より前のすべてのミドルウェアは、引き続き完了まで実行されます。
ミドルウェア パイプラインの詳細については、ボットの のしくみとミドルウェア 記事 を参照してください。
アダプターの メソッドを使用して、アダプターにミドルウェアを追加します。
processRequest(IReceiveRequest)
要求の有効性を確認し、適切な仮想エンドポイントのマッピングを試み、必要に応じて応答を生成して返します。
function processRequest(request: IReceiveRequest): Promise<StreamingResponse>
パラメーター
- request
-
IReceiveRequest
接続されたチャネルからの ReceiveRequest。
戻り値
Promise<StreamingResponse>
要求を発生させたクライアントに送信される BotAdapter によって作成された応答。
sendActivities(TurnContext, Partial<Activity>[])
送信アクティビティのセットをチャネル サーバーに非同期的に送信します。 このメソッドはフレームワークをサポートしており、コードに対して直接呼び出すものではありません。 ターン コンテキストの sendActivity を使用するか、ボット コードから sendActivities メソッド します。
function sendActivities(context: TurnContext, activities: Partial<Activity>[]): Promise<ResourceResponse[]>
パラメーター
- context
-
TurnContext
ターンのコンテキスト オブジェクト。
- activities
-
Partial<Activity>[]
送信するアクティビティ。
戻り値
Promise<ResourceResponse[]>
ResourceResponse の配列
注釈
アクティビティは、受信した順序で順番に送信されます。 送信されたアクティビティごとに応答オブジェクトが返されます。
message
アクティビティの場合、これには配信されたメッセージの ID が含まれます。
signOutUser(TurnContext, string, string)
トークン サーバーからユーザーを非同期的にサインアウトします。
function signOutUser(context: TurnContext, connectionName?: string, userId?: string): Promise<void>
パラメーター
- context
-
TurnContext
ターンのコンテキスト オブジェクト。
- connectionName
-
string
使用する認証接続の名前。
- userId
-
string
サインアウトするユーザーの ID。
戻り値
Promise<void>
signOutUser(TurnContext, string, string, CoreAppCredentials)
function signOutUser(context: TurnContext, connectionName?: string, userId?: string, oAuthAppCredentials?: CoreAppCredentials): Promise<void>
パラメーター
- context
-
TurnContext
- connectionName
-
string
- userId
-
string
- oAuthAppCredentials
-
CoreAppCredentials
戻り値
Promise<void>
updateActivity(TurnContext, Partial<Activity>)
以前のアクティビティを更新されたバージョンに非同期的に置き換えます。 このインターフェイスはフレームワークをサポートしており、コードに対して直接呼び出されるものではありません。 TurnContext.updateActivity を使用して、ボット コードからアクティビティを更新します。
function updateActivity(context: TurnContext, activity: Partial<Activity>): Promise<ResourceResponse | void>
パラメーター
- context
-
TurnContext
ターンのコンテキスト オブジェクト。
- activity
-
Partial<Activity>
置き換えるアクティビティの更新バージョン。
戻り値
Promise<ResourceResponse | void>
操作の ResourceResponse を表す Promise
。
注釈
すべてのチャネルでこの操作がサポートされているわけではありません。 そうでないチャネルの場合、この呼び出しで例外がスローされる可能性があります。
useNamedPipe((context: TurnContext) => Promise<any>, string, number, () => void)
ハンドラーを名前付きパイプ サーバーに接続し、受信要求のリッスンを開始します。
function useNamedPipe(logic: (context: TurnContext) => Promise<any>, pipeName?: string, retryCount?: number, onListen?: () => void): Promise<void>
パラメーター
- logic
-
(context: TurnContext) => Promise<any>
受信要求を処理するロジック。
- pipeName
-
string
サーバーの作成時に使用する名前付きパイプの名前。
- retryCount
-
number
受信パイプと送信パイプのバインドを試行する回数
- onListen
-
() => void
受信と送信の両方のパイプでサーバーがリッスンしているときに 1 回発生するオプションのコールバック
戻り値
Promise<void>
useWebSocket(WebRequest, INodeSocket, INodeBuffer, (context: TurnContext) => Promise<any>)
最初の要求を処理して、ストリーミング サーバー経由で有効期間の長い接続を確立します。
function useWebSocket(req: WebRequest, socket: INodeSocket, head: INodeBuffer, logic: (context: TurnContext) => Promise<any>): Promise<void>
パラメーター
- req
- WebRequest
接続要求。
- socket
-
INodeSocket
ボット (サーバー) とチャネル/呼び出し元 (クライアント) の間の生のソケット接続。
- head
-
INodeBuffer
アップグレードされたストリームの最初のパケット。
- logic
-
(context: TurnContext) => Promise<any>
WebSocket 接続の有効期間中に受信ストリーミング要求を処理するロジック。
戻り値
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>
継続する会話に 部分的な ConversationReference。
- logic
-
(context: TurnContext) => Promise<void>
アダプター ミドルウェアの実行後に呼び出す非同期メソッド。
戻り値
Promise<void>
非同期操作を表す Promise
BotAdapter.continueConversationAsync から継承された
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>
継続する会話に 部分的な ConversationReference。
- audience
-
string
プロアクティブ メッセージの受信者を示す値。
- logic
-
(context: TurnContext) => Promise<void>
アダプター ミドルウェアの実行後に呼び出す非同期メソッド。
戻り値
Promise<void>
非同期操作を表す Promise
BotAdapter.continueConversationAsync から継承された
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>
継続する会話に 部分的な ConversationReference。
- logic
-
(context: TurnContext) => Promise<void>
アダプター ミドルウェアの実行後に呼び出す非同期メソッド。
戻り値
Promise<void>
非同期操作を表す Promise
BotAdapter.continueConversationAsync から継承された
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 が含まれます。
BotAdapter.createConversationAsync から継承された
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
更新されたアダプター オブジェクト。
注釈
ミドルウェアは初期化時にアダプターに追加されます。 各ターンで、アダプターはミドルウェアを追加した順序で呼び出します。
botAdapter.use から継承