다음을 통해 공유


GetTokenDialog 클래스

정의

구성된 OAuth 연결에 대한 사용자 토큰을 다시 시도하는 대화 상자 이 대화 상자는 먼저 Azure Bot Service 사용자 토큰을 다시 시도합니다. Azure Bot Service 아직 토큰이 없는 경우 GetTokenDialog는 사용자에게 OAuthCard를 보냅니다. 그런 다음 GetTokenDialog는 사용자가 돌아올 때까지 기다리거나 사용자가 유효성 검사 코드를 보낼 때까지 기다립니다. 대화 상자는 사용자 토큰에 대해 전송되는 모든 응답을 교환하려고 시도합니다. 성공하면 대화 상자가 토큰을 반환하고, 그렇지 않으면 지정된 횟수를 다시 시도합니다.

[System.Serializable]
public class GetTokenDialog : Microsoft.Bot.Builder.Dialogs.IDialog<Microsoft.Bot.Builder.Dialogs.GetTokenResponse>
[<System.Serializable>]
type GetTokenDialog = class
    interface IDialog<GetTokenResponse>
Public Class GetTokenDialog
Implements IDialog(Of GetTokenResponse)
상속
GetTokenDialog
특성
구현

생성자

GetTokenDialog(String, String, String, Int32, String)

구성된 OAuth 연결에 대한 사용자 토큰을 다시 시도하는 대화 상자 이 대화 상자는 먼저 Azure Bot Service 사용자 토큰을 다시 시도합니다. Azure Bot Service 아직 토큰이 없는 경우 GetTokenDialog는 사용자에게 OAuthCard를 보냅니다. 그런 다음 GetTokenDialog는 사용자가 돌아올 때까지 기다리거나 사용자가 유효성 검사 코드를 보낼 때까지 기다립니다. 대화 상자는 사용자 토큰에 대해 전송되는 모든 응답을 교환하려고 시도합니다. 성공하면 대화 상자가 토큰을 반환하고, 그렇지 않으면 지정된 횟수를 다시 시도합니다.

메서드

StartAsync(IDialogContext)

구성된 OAuth 연결에 대한 사용자 토큰을 다시 시도하는 대화 상자 이 대화 상자는 먼저 Azure Bot Service 사용자 토큰을 다시 시도합니다. Azure Bot Service 아직 토큰이 없는 경우 GetTokenDialog는 사용자에게 OAuthCard를 보냅니다. 그런 다음 GetTokenDialog는 사용자가 돌아올 때까지 기다리거나 사용자가 유효성 검사 코드를 보낼 때까지 기다립니다. 대화 상자는 사용자 토큰에 대해 전송되는 모든 응답을 교환하려고 시도합니다. 성공하면 대화 상자가 토큰을 반환하고, 그렇지 않으면 지정된 횟수를 다시 시도합니다.

확장 메서드

Catch<T>(IDialog<T>, Func<IDialog<T>,Exception,IDialog<T>>)

선행 IDialog<TResult> 작업이 완료되면 예외를 catch하고 처리합니다.

Catch<T,E>(IDialog<T>, Func<IDialog<T>,E,IDialog<T>>)

선행 IDialog<TResult> 작업이 완료되면 형식 E의 예외를 catch하고 처리합니다.

ContinueWith<T,R>(IDialog<T>, Chain.Continuation<T,R>)

선행 IDialog<TResult> 작업이 완료되면 연속 작업을 실행하여 다음 IDialog<TResult>을 생성합니다.

DefaultIfException<T>(IDialog<T>)

선행 IDialog<TResult> 작업이 완료되면 예외 전파를 중지합니다.

DefaultIfException<T,E>(IDialog<T>)

선행 IDialog<TResult> 작업이 완료되면 예외의 전파를 중지합니다 E.

Do<T>(IDialog<T>, Func<IBotContext,IAwaitable<T>,Task>)

가 완료된 후 부작용을 IDialog<TResult> 실행합니다.

Loop<T>(IDialog<T>)

를 영원히 반복합니다 IDialog<TResult> .

PostEvent<T,E>(IDialog<T>, E)

선행 IDialog<TResult> 작업이 완료되면 항목을 이벤트 큐에 게시합니다.

PostToUser<T>(IDialog<T>)

의 결과를 사용자에게 게시합니다 IDialog<TResult>.

Select<T,R>(IDialog<T>, Func<T,R>)

선행 작업이 완료되면 결과를 새 IDialog<TResult>로 프로젝트 IDialog<TResult> 합니다.

SelectMany<T,C,R>(IDialog<T>, Func<T,IDialog<C>>, Func<T,C,R>)

선행 IDialog<TResult> 작업이 완료되면 다음 IDialog<TResult>를 실행하고 프로젝션을 사용하여 결과를 결합합니다.

Switch<T,R>(IDialog<T>, ICase<T,R>[])

선행 IDialog<TResult> 작업이 완료되면 각각 ICase<T,R> 을 살펴보고 선행 대화 상자에서 반환된 값이 충족하는 첫 번째 ICase<T,R> 의 "를 실행ContextualSelector<T,R>합니다.

Then<T,R>(IDialog<T>, Func<IBotContext,IAwaitable<T>,Task<R>>)

가 완료된 후 IDialog<TResult> 작업을 실행합니다.

Void<T>(IDialog<T>, IDialogStack)

voided IDialog<TResult>를 호출하고 결과를 무시한 다음 원래 대화 대기를 다시 시작합니다.

Void<T,R>(IDialog<T>)

voided IDialog<TResult>를 호출하고 결과를 무시한 다음 원래 대화 대기를 다시 시작합니다.

WaitToBot<T>(IDialog<T>)

선행 작업이 완료된 후 메시지를 봇에 체인에 게시합니다.

Where<T>(IDialog<T>, Func<T,Boolean>)

선행 IDialog<TResult> 작업이 완료되면 조건자를 평가하고 계속할지 여부를 결정합니다.

While<T>(IDialog<T>, Func<T,IDialog<Boolean>>, Func<T,IDialog<T>>)

IDialog<TResult> while 루프를 나타내는 을 만듭니다.

WithScorable<T,Item,Score>(IDialog<T>, IScorable<Item,Score>)

점수 매기기를 사용하여 대화 상자를 데코레이트하여 점수 매기기 가능이 대화 스택에 참여할 수 있도록 합니다.

적용 대상