BotFrameworkAdapter 클래스
- java.
lang. Object - com.
microsoft. bot. builder. BotAdapter - com.
microsoft. bot. builder. BotFrameworkAdapter
- com.
- com.
구현
public class BotFrameworkAdapter
extends BotAdapter
implements AdapterIntegration, UserTokenProvider, ConnectorClientBuilder
서비스 엔드포인트에 봇을 연결할 수 있는 봇 어댑터입니다. 봇 어댑터는 인증 프로세스를 캡슐화하고 Bot Connector Service에서 활동을 보내고 받습니다. 봇이 작업을 받으면 어댑터는 컨텍스트 개체를 만들고, 봇의 애플리케이션 논리에 전달하고, 응답을 사용자의 채널로 다시 보냅니다.
use(Middleware middleware) 사용하여 어댑터\u2019미들웨어 컬렉션에 Middleware 개체를 추가합니다. 어댑터는 봇 미들웨어 파이프라인을 통해 들어오는 작업을 처리하고 봇\u2019논리로 전달한 다음 다시 내보낼 수 있습니다. 각 활동이 봇 내/외부로 흐르면 미들웨어의 각 조각은 봇 논리 실행 전후에 작업을 검사하거나 작업할 수 있습니다.
필드 요약
한정자 및 형식 | 필드 및 설명 |
---|---|
static final java.lang.String |
CONNECTOR_CLIENT_KEY
커넥터 |
static final java.lang.String |
INVOKE_RESPONSE_KEY
호출 |
static final java.lang.String |
TEAMSCONNECTOR_CLIENT_KEY
Teams |
생성자 요약
메서드 요약
다음에서 상속된 메서드 BotAdapter
다음에서 상속된 메서드 java.lang.Object
필드 세부 정보
CONNECTOR_CLIENT_KEY
public static final String CONNECTOR_CLIENT_KEY
ConnectorClient를 저장할 키입니다.
INVOKE_RESPONSE_KEY
public static final String INVOKE_RESPONSE_KEY
InvokeResponse를 저장할 키입니다.
TEAMSCONNECTOR_CLIENT_KEY
public static final String TEAMSCONNECTOR_CLIENT_KEY
TeamsConnectorClient를 저장하는 키입니다. 테스트 전용입니다.
생성자 세부 정보
BotFrameworkAdapter
public BotFrameworkAdapter(AppCredentials withCredentials, AuthenticationConfiguration withAuthConfig, ChannelProvider withChannelProvider, RetryStrategy withRetryStrategy, Middleware withMiddleware)
자격 증명 공급자를 사용하여 BotFrameworkAdapter 클래스의 새 인스턴스를 초기화합니다.
매개 변수:
BotFrameworkAdapter
public BotFrameworkAdapter(CredentialProvider withCredentialProvider)
자격 증명 공급자를 사용하여 BotFrameworkAdapter 클래스의 새 인스턴스를 초기화합니다.
매개 변수:
BotFrameworkAdapter
public BotFrameworkAdapter(CredentialProvider withCredentialProvider, AuthenticationConfiguration withAuthConfig, ChannelProvider withChannelProvider, RetryStrategy withRetryStrategy, Middleware withMiddleware)
자격 증명 공급자를 사용하여 BotFrameworkAdapter 클래스의 새 인스턴스를 초기화합니다.
매개 변수:
BotFrameworkAdapter
public BotFrameworkAdapter(CredentialProvider withCredentialProvider, ChannelProvider withChannelProvider, RetryStrategy withRetryStrategy, Middleware withMiddleware)
자격 증명 공급자를 사용하여 BotFrameworkAdapter 클래스의 새 인스턴스를 초기화합니다.
매개 변수:
메서드 세부 정보
addConnectorClientToCache
protected void addConnectorClientToCache(String serviceUrl, String appId, String scope, ConnectorClient client)
ConnectorClient를 캐시에 삽입합니다. 단위 테스트 전용입니다.
매개 변수:
buildAppCredentials
protected CompletableFuture
지정된 appId 및 범위에 대한 AppCredentials 개체를 만듭니다.
매개 변수:
반환:
continueConversation
public CompletableFuture
대화에 자동 관리 메시지를 보냅니다.
대화에 메시지를 사전에 보내려면 이 메서드를 호출합니다. 대부분의 채널에서는 봇이 사용자에게 활동을 보내기 전에 사용자가 봇과 대화를 시작해야 합니다.
재정의:
BotFrameworkAdapter.continueConversation(ClaimsIdentity claimsIdentity, ConversationReference reference, BotCallbackHandler callback)매개 변수:
반환:
continueConversation
public CompletableFuture
대화에 자동 관리 메시지를 보냅니다.
대화에 메시지를 사전에 보내려면 이 메서드를 호출합니다. 대부분의 채널에서는 봇이 사용자에게 활동을 보내기 전에 사용자가 봇과 대화를 시작해야 합니다.
재정의:
BotFrameworkAdapter.continueConversation(ClaimsIdentity claimsIdentity, ConversationReference reference, String audience, BotCallbackHandler callback)매개 변수:
반환:
continueConversation
public CompletableFuture
봇에서 대화로 자동 관리 메시지를 보냅니다.
대화에 메시지를 사전에 보내려면 이 메서드를 호출합니다. 대부분의 채널에서는 봇이 사용자에게 활동을 보내기 전에 사용자가 봇과 대화를 시작해야 합니다.
이 오버로드는 BotId를 전달하도록 요구하여 노드 구현과 다릅니다. .Net 코드를 사용하면 노드에서 지원하지 않는 단일 어댑터에서 여러 봇을 호스트할 수 있습니다.
processActivity(String authHeader, Activity activity, BotCallbackHandler callback) runPipeline(TurnContext context, BotCallbackHandler callback)
재정의:
BotFrameworkAdapter.continueConversation(String botAppId, ConversationReference reference, BotCallbackHandler callback)매개 변수:
반환:
createConnectorClient
public CompletableFuture
커넥터 클라이언트를 비동기식으로 만듭니다.
매개 변수:
반환:
createConversation
public CompletableFuture
지정된 채널에서 대화를 만듭니다. 대화를 시작하려면 봇이 해당 채널의 계정 정보와 사용자의 계정 정보를 알고 있어야 합니다. 대부분의 채널은 직접 메시지(비그룹) 대화 시작만 지원합니다.
어댑터는 채널에서 새 대화를 만든 다음 미들웨어 파이프라인을 통해 conversationUpdate
작업을 callback
메서드로 보냅니다.
지정된 사용자와 대화가 설정된 경우 활동 Activity#getConversation ID에 새 대화의 ID가 포함됩니다.
매개 변수:
반환:
createConversation
public CompletableFuture
지정된 채널에서 대화를 만듭니다. 대화를 시작하려면 봇이 해당 채널의 계정 정보와 사용자의 계정 정보를 알고 있어야 합니다. 대부분의 채널은 직접 메시지(비그룹) 대화 시작만 지원합니다.
어댑터는 채널에서 새 대화를 만든 다음 미들웨어 파이프라인을 통해 conversationUpdate
작업을 callback
메서드로 보냅니다.
지정된 사용자와 대화가 설정된 경우 활동 Activity#getConversation ID에 새 대화의 ID가 포함됩니다.
매개 변수:
반환:
createOAuthAPIClient
protected CompletableFuture
봇에 대한 OAuth 클라이언트를 만듭니다.
참고: 단위 테스트가 모의 OAuthClient를 제공하도록 재정의할 수 있도록 보호됩니다.
매개 변수:
반환:
deleteActivity
public CompletableFuture
대화에서 기존 활동을 삭제합니다.
재정의:
BotFrameworkAdapter.deleteActivity(TurnContext context, ConversationReference reference)매개 변수:
반환:
deleteConversationMember
public CompletableFuture
현재 대화에서 멤버를 삭제합니다.
매개 변수:
반환:
exchangeToken
public CompletableFuture
Single Sign-On과 같은 토큰 교환 작업을 수행합니다.
매개 변수:
반환:
exchangeToken
public CompletableFuture
Single Sign-On과 같은 토큰 교환 작업을 수행합니다.
매개 변수:
반환:
getAadTokens
public CompletableFuture
사용자 지정된 AppCredentials를 사용하여 구성된 연결에서 특정 리소스에 대한 Azure Active Directory 토큰을 검색합니다.
매개 변수:
반환:
getAadTokens
public CompletableFuture
구성된 연결에서 특정 리소스에 대한 Azure Active Directory 토큰을 검색합니다.
매개 변수:
반환:
getActivityMembers
public CompletableFuture> getActivityMembers(TurnContextImpl context)
지정된 활동의 멤버를 나열합니다.
매개 변수:
반환:
getActivityMembers
public CompletableFuture> getActivityMembers(TurnContextImpl context, String activityId)
지정된 활동의 멤버를 나열합니다.
매개 변수:
반환:
getConnectorClientCache
protected Map
ConnectorClient 캐시를 가져옵니다. 단위 테스트용입니다.
반환:
getConversationMembers
public CompletableFuture> getConversationMembers(TurnContextImpl context)
현재 대화의 멤버를 나열합니다.
매개 변수:
반환:
getConversations
public CompletableFuture
이 봇이 지정된 채널 서버에 참여한 대화를 나열합니다. 채널 서버는 페이지에 결과를 반환하고 각 페이지에는 서버에서 결과의 다음 페이지를 가져오는 데 사용할 수 있는 'continuationToken'이 포함됩니다. 이 오버로드는 표준 작업 처리 중에 호출될 수 있으며, 이 시점에서 현재 활동 처리 파이프라인의 일부인 봇의 서비스 URL 및 자격 증명이 사용됩니다.
매개 변수:
반환:
getConversations
public CompletableFuture
이 봇이 지정된 채널 서버에 참여한 대화를 나열합니다. 채널 서버는 페이지에 결과를 반환하고 각 페이지에는 서버에서 결과의 다음 페이지를 가져오는 데 사용할 수 있는 'continuationToken'이 포함됩니다. 이 오버로드는 표준 작업 처리 중에 호출될 수 있으며, 이 시점에서 현재 활동 처리 파이프라인의 일부인 봇의 서비스 URL 및 자격 증명이 사용됩니다.
매개 변수:
반환:
getConversations
public CompletableFuture
이 봇이 지정된 채널 서버에 참여한 대화를 나열합니다. 채널 서버는 페이지에 결과를 반환하고 각 페이지에는 서버에서 결과의 다음 페이지를 가져오는 데 사용할 수 있는 'continuationToken'이 포함됩니다.
매개 변수:
context.activity.serviceUrl
검색할 수 있습니다.
반환:
이 오버로드는 봇의 ServiceUrl 및 자격 증명만 필요하므로 대화 컨텍스트 외부에서 호출할 수 있습니다.
getConversations
public CompletableFuture
이 봇이 지정된 채널 서버에 참여한 대화를 나열합니다. 채널 서버는 페이지에 결과를 반환하고 각 페이지에는 서버에서 결과의 다음 페이지를 가져오는 데 사용할 수 있는 'continuationToken'이 포함됩니다. 이 오버로드는 봇의 ServiceUrl 및 자격 증명만 필요하므로 대화 컨텍스트 외부에서 호출할 수 있습니다.
매개 변수:
context.activity.serviceUrl
검색할 수 있습니다.
반환:
getCredentialsCache
protected Map
AppCredentials 캐시를 가져옵니다. 단위 테스트용입니다.
반환:
getOAuthSignInLink
public CompletableFuture
사용자 지정된 AppCredentials를 사용하여 연결 이름에 대한 로그인을 위해 사용자에게 보낼 원시 로그인 링크를 가져옵니다.
매개 변수:
반환:
If the task completes successfully, the result contains the raw
signin link.
getOAuthSignInLink
public CompletableFuture
봇의 AppCredentials를 사용하여 연결 이름에 대한 로그인을 위해 사용자에게 보낼 원시 로그인 링크를 가져옵니다.
매개 변수:
반환:
If the task completes successfully, the result contains the raw
signin link.
getOAuthSignInLink
public CompletableFuture
연결 이름에 대한 로그인을 위해 사용자에게 보낼 원시 로그인 링크를 가져옵니다.
매개 변수:
반환:
getOAuthSignInLink
public CompletableFuture
연결 이름에 대한 로그인을 위해 사용자에게 보낼 원시 로그인 링크를 가져옵니다.
매개 변수:
반환:
getOrCreateConnectorClient
protected CompletableFuture
캐시에서 또는 새로 만든 ConnectorClient를 반환합니다.
참고: 모의 ConnectorClient를 제공하기 위해 단위 테스트가 이를 재정의할 수 있도록 보호됩니다.
매개 변수:
반환:
getSignInResource
public CompletableFuture
연결 이름에 대한 로그인을 위해 사용자에게 보낼 원시 로그인 링크를 가져옵니다.
매개 변수:
반환:
If the task completes successfully, the result contains the raw
signin link.
getSignInResource
public CompletableFuture
연결 이름에 대한 로그인을 위해 사용자에게 보낼 원시 로그인 링크를 가져옵니다.
매개 변수:
반환:
If the task completes successfully, the result contains the raw
signin link.
getSignInResource
public CompletableFuture
연결 이름에 대한 로그인을 위해 사용자에게 보낼 원시 로그인 링크를 가져옵니다.
매개 변수:
반환:
If the task completes successfully, the result contains the raw
signin link.
getTokenStatus
public CompletableFuture> getTokenStatus(TurnContext context, AppCredentials oAuthAppCredentials, String userId, String includeFilter)
사용자 지정된 AppCredentials를 사용하여 지정된 사용자에 대해 구성된 각 연결의 토큰 상태를 검색합니다.
매개 변수:
반환:
getTokenStatus
public CompletableFuture> getTokenStatus(TurnContext context, String userId, String includeFilter)
지정된 사용자에 대해 구성된 각 연결의 토큰 상태를 검색합니다.
매개 변수:
반환:
getUserToken
public CompletableFuture
사용자 지정된 AppCredentials를 사용하여 로그인 흐름에 있는 사용자의 토큰을 검색하려고 시도합니다.
매개 변수:
반환:
getUserToken
public CompletableFuture
로그인 흐름에 있는 사용자의 토큰을 검색하려고 시도합니다.
매개 변수:
반환:
keyForAppCredentials
protected static String keyForAppCredentials(String appId, String scope)
앱 자격 증명 캐시에 액세스하기 위한 키를 생성합니다.
매개 변수:
반환:
keyForConnectorClient
protected static String keyForConnectorClient(String serviceUrl, String appId, String scope)
커넥터 클라이언트 캐시에 액세스하기 위한 키를 생성합니다.
매개 변수:
반환:
processActivity
public CompletableFuture
턴 컨텍스트를 만들고 들어오는 작업에 대한 미들웨어 파이프라인을 실행합니다.
매개 변수:
반환:
processActivity
public CompletableFuture
턴 컨텍스트를 만들고 들어오는 작업에 대한 미들웨어 파이프라인을 실행합니다.
매개 변수:
반환:
sendActivities
public CompletableFuture
대화에 활동을 보냅니다.
재정의:
BotFrameworkAdapter.sendActivities(TurnContext context, List<Activity> activities)매개 변수:
반환:
<xref uid="com.microsoft.bot.builder.TurnContext.onSendActivities(com.microsoft.bot.builder.SendActivitiesHandler)" data-throw-if-not-resolved="false" data-raw-source="TurnContext#onSendActivities(SendActivitiesHandler)"></xref>
signOutUser
public CompletableFuture
사용자 지정된 AppCredentials를 사용하여 토큰 서버로 사용자를 로그아웃합니다.
매개 변수:
반환:
signOutUser
public CompletableFuture
토큰 서버를 사용하여 사용자를 로그아웃합니다.
매개 변수:
반환:
updateActivity
public CompletableFuture
대화의 기존 활동을 바꿉니다.
재정의:
BotFrameworkAdapter.updateActivity(TurnContext context, Activity activity)매개 변수:
반환:
이를 호출하기 전에 대체 활동의 ID를 바꿀 활동의 ID로 설정합니다. onUpdateActivity(UpdateActivityHandler handler)
use
public BotFrameworkAdapter use(Middleware middleware)
어댑터의 파이프라인에 미들웨어를 추가합니다. 미들웨어는 초기화 시 어댑터에 추가됩니다. 각 턴에 대해 어댑터는 추가한 순서대로 미들웨어를 호출합니다.
재정의:
BotFrameworkAdapter.use(Middleware middleware)매개 변수:
반환: