OAuthPrompt 클래스
- java.
lang. Object - com.
microsoft. bot. dialogs. Dialog - com.
microsoft. bot. dialogs. prompts. OAuthPrompt
- com.
- com.
public class OAuthPrompt
extends Dialog
Bot Frameworks SSO(Single Sign On) 서비스를 사용하여 로그인하도록 사용자에게 요청하는 새 프롬프트를 만듭니다. 프롬프트가 사용자에게 현재 토큰을 검색하려고 시도하고 사용자가 로그인하지 않은 경우 로그인하기 위해 누를 수 있는 단추가 포함된 'OAuthCard'를 보냅니다. 채널에 따라 사용자는 두 개의 가능한 로그인 흐름 중 하나를 통해 전송됩니다. - 사용자가 로그인하고 SSO 서비스가 'event' 또는 'invoke' 활동을 사용하여 봇 사용자 액세스 토큰을 전달하는 자동 로그인 흐름입니다. 사용자가 로그인하면 SSOservice에서 봇에 ID를 확인하는 6자리 코드를 보내라는 메시지가 표시되는 "매직 코드" 흐름입니다. 이 코드는 표준 '메시지' 활동으로 전송됩니다. 두 흐름 모두 'OAuthPrompt'에서 자동으로 지원되며, 주의해야 할 유일한 방법은 프롬프트가 대기할 수 있는 '이벤트' 및 '호출' 활동을 차단하지 않는다는 것입니다. **참고**: 봇의 다른 상태로 액세스 토큰을 유지하지 않아야 합니다. Bot FrameworksSSO 서비스는 사용자 대신 토큰을 안전하게 저장합니다. 봇에 저장하는 경우 stateit가 만료되거나 턴 사이에 해지될 수 있습니다. 폭포 단계 내에서 프롬프트를 호출할 때 프롬프트를 단계별 실행 내에서 토큰을 사용한 다음, 함수가 끝날 때 토큰이 범위를 벗어나도록 해야 합니다.
생성자 요약
| 생성자 | Description |
|---|---|
| OAuthPrompt(String dialogId, OAuthPromptSettings settings) |
OAuthPrompt 클래스의 새 인스턴스를 초기화합니다. |
| OAuthPrompt(String dialogId, OAuthPromptSettings settings, PromptValidator<TokenResponse> validator) |
OAuthPrompt 클래스의 새 인스턴스를 초기화합니다. |
메서드 요약
| 한정자 및 형식 | 메서드 및 설명 |
|---|---|
|
java.util.concurrent.CompletableFuture<Dialog |
beginDialog(DialogContext dc, Object options)
프롬프트 대화 상자가 대화 스택으로 푸시되고 활성화될 때 호출됩니다. |
|
java.util.concurrent.CompletableFuture<Dialog |
continueDialog(DialogContext dc)
프롬프트 대화 상자가 활성 대화이고 사용자가 새 활동으로 회신할 때 호출됩니다. |
|
java.util.concurrent.CompletableFuture<Token |
getUserToken(TurnContext turnContext)
사용자의 토큰을 가져오려고 시도합니다. |
|
static
java.util.concurrent.CompletableFuture<Prompt |
recognizeToken(OAuthPromptSettings settings, DialogContext dc)
Recognize |
| static java.util.concurrent.CompletableFuture<java.lang.Void> |
sendOAuthCard(OAuthPromptSettings settings, TurnContext turnContext, Activity prompt)
Send |
| static void |
setCallerInfoInDialogState(Map<String,Object> state, TurnContext context)
Set |
| java.util.concurrent.CompletableFuture<java.lang.Void> |
signOutUser(TurnContext turnContext)
사용자를 로그아웃합니다. |
다음에서 상속된 메서드 Dialog
다음에서 상속된 메서드 java.lang.Object
생성자 세부 정보
OAuthPrompt
public OAuthPrompt(String dialogId, OAuthPromptSettings settings)
OAuthPrompt 클래스의 새 인스턴스를 초기화합니다.
매개 변수:
The value of <xref uid="" data-throw-if-not-resolved="false" data-raw-source="dialogId"></xref> must be unique within the
<xref uid="com.microsoft.bot.dialogs.DialogSet" data-throw-if-not-resolved="false" data-raw-source="DialogSet"></xref> or <xref uid="com.microsoft.bot.dialogs.ComponentDialog" data-throw-if-not-resolved="false" data-raw-source="ComponentDialog"></xref> to which the
prompt is added.
OAuthPrompt
public OAuthPrompt(String dialogId, OAuthPromptSettings settings, PromptValidator
OAuthPrompt 클래스의 새 인스턴스를 초기화합니다.
매개 변수:
The value of <xref uid="" data-throw-if-not-resolved="false" data-raw-source="dialogId"></xref> must be unique within the
<xref uid="com.microsoft.bot.dialogs.DialogSet" data-throw-if-not-resolved="false" data-raw-source="DialogSet"></xref> or <xref uid="com.microsoft.bot.dialogs.ComponentDialog" data-throw-if-not-resolved="false" data-raw-source="ComponentDialog"></xref> to which the
prompt is added.
메서드 세부 정보
beginDialog
public CompletableFuture
프롬프트 대화 상자가 대화 스택으로 푸시되고 활성화될 때 호출됩니다.
재정의:
OAuthPrompt.beginDialog(DialogContext dc, Object options)매개 변수:
반환:
continueDialog
public CompletableFuture
프롬프트 대화 상자가 활성 대화이고 사용자가 새 활동으로 회신할 때 호출됩니다.
재정의:
OAuthPrompt.continueDialog(DialogContext dc)매개 변수:
반환:
getUserToken
public CompletableFuture
사용자의 토큰을 가져오려고 시도합니다.
매개 변수:
반환:
If the task is successful and user already has a token or the user
successfully signs in, the result contains the user's token.
recognizeToken
public static CompletableFuture
RecognizeToken 함수의 공유 구현입니다. 이는 OAuthPrompt 및 OAuthInput의 구현을 통합하기 위해 내부 용도로 사용됩니다. 애플리케이션 논리는 이러한 대화 상자 클래스를 사용해야 합니다.
매개 변수:
반환:
sendOAuthCard
public static CompletableFuture
SendOAuthCard 함수의 공유 구현입니다. 이는 OAuthPrompt 및 OAuthInput의 구현을 통합하기 위해 내부 용도로 사용됩니다. 애플리케이션 논리는 이러한 대화 상자 클래스를 사용해야 합니다.
매개 변수:
반환:
setCallerInfoInDialogState
public static void setCallerInfoInDialogState(Map
SetCallerInfoInDialogState 함수의 공유 구현입니다. 이는 OAuthPrompt 및 OAuthInput의 구현을 통합하기 위해 내부 용도로 사용됩니다. 애플리케이션 논리는 이러한 대화 상자 클래스를 사용해야 합니다.
매개 변수:
signOutUser
public CompletableFuture
사용자를 로그아웃합니다.
매개 변수:
반환: