OAuthPrompt Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Skapar en ny uppmaning som ber användaren att logga in med hjälp av Bot Frameworks-tjänsten för enkel inloggning (SSO).
public class OAuthPrompt : Microsoft.Bot.Builder.Dialogs.Dialog
type OAuthPrompt = class
inherit Dialog
Public Class OAuthPrompt
Inherits Dialog
- Arv
Kommentarer
Uppmaningen försöker hämta användarnas aktuella token och om användaren inte är inloggad skickar den ett OAuthCard som innehåller en knapp som de kan trycka på för att logga in. Beroende på kanalen skickas användaren via ett av två möjliga inloggningsflöden:
– Det automatiska inloggningsflödet där när användaren loggar in och SSO-tjänsten vidarebefordrar roboten till användarens åtkomsttoken med antingen en "händelse" eller "anropa"-aktivitet. – Flödet "magisk kod" där när användaren loggar in uppmanas av SSO-tjänsten att skicka roboten en sexsiffrig kod som bekräftar deras identitet. Den här koden skickas som en standardaktivitet för meddelande.
Båda flödena stöds automatiskt av OAuthPrompt och det enda du behöver vara försiktig med är att du inte blockerar aktiviteterna "event" och "invoke" som prompten kan vänta på.
**Obs**: Du bör undvika att spara åtkomsttoken med dina robotars andra tillstånd. Bot Frameworks SSO-tjänsten lagrar token på ett säkert sätt för din räkning. Om du lagrar den i ditt robottillstånd kan den upphöra att gälla eller återkallas mellan turerna.När du anropar uppmaningen inifrån ett vattenfallssteg bör du använda token i steget som följer uppmaningen och sedan låta token gå utanför omfånget i slutet av funktionen.
### Fråga användning
När den används med robotens DialogSet kan du helt enkelt lägga till en ny instans av prompten som en namngiven dialogruta med hjälp av Add(Dialog). Du kan sedan starta uppmaningen från ett vattenfallssteg med antingen BeginDialogAsync(String, Object, CancellationToken) eller PromptAsync(String, PromptOptions, CancellationToken). Användaren uppmanas att logga in efter behov och deras åtkomsttoken skickas som ett argument till anroparna nästa vattenfallssteg.
Konstruktorer
OAuthPrompt(String, OAuthPromptSettings, PromptValidator<TokenResponse>) |
Initierar en ny instans av OAuthPrompt klassen. |
Egenskaper
Id |
Hämtar eller anger ID för dialogrutan. (Ärvd från Dialog) |
Source |
Hämtar information om cref="SourceRange"/>. (Ärvd från Dialog) |
TelemetryClient |
Hämtar eller anger den som IBotTelemetryClient ska användas för loggning. (Ärvd från Dialog) |
Metoder
BeginDialogAsync(DialogContext, Object, CancellationToken) |
Anropas när en dialogruta skickas till dialogstacken och aktiveras. |
ContinueDialogAsync(DialogContext, CancellationToken) |
Anropas när en promptdialogruta är den aktiva dialogrutan och användaren svarade med en ny aktivitet. |
EndDialogAsync(ITurnContext, DialogInstance, DialogReason, CancellationToken) |
Anropas när dialogrutan slutar. (Ärvd från Dialog) |
GetUserTokenAsync(ITurnContext, CancellationToken) |
Försöker hämta användarens token. |
GetVersion() |
Hämtar en unik sträng som representerar versionen av den här dialogrutan. Om versionen ändras mellan svängar genererar dialogsystemet en DialogChanged-händelse. (Ärvd från Dialog) |
OnComputeId() |
Skapar beräknings-ID:t för dialogrutan. (Ärvd från Dialog) |
OnDialogEventAsync(DialogContext, DialogEvent, CancellationToken) |
Anropas när en händelse har aktiverats med hjälp |
OnPostBubbleEventAsync(DialogContext, DialogEvent, CancellationToken) |
Anropades efter att en händelse bubblades till alla föräldrar och hanterades inte. (Ärvd från Dialog) |
OnPreBubbleEventAsync(DialogContext, DialogEvent, CancellationToken) |
Anropas innan en händelse bubblas till dess överordnade. (Ärvd från Dialog) |
RecognizeTokenAsync(OAuthPromptSettings, DialogContext, CancellationToken) |
Delad implementering av funktionen RecognizeTokenAsync. Detta är avsett för intern användning för att konsolidera implementeringen av OAuthPrompt och OAuthInput. Programlogik bör använda dessa dialogklasser. |
RegisterSourceLocation(String, Int32) |
Registrerar en cref="SourceRange"/> på den angivna platsen. (Ärvd från Dialog) |
RepromptDialogAsync(ITurnContext, DialogInstance, CancellationToken) |
Anropas när dialogrutan ska uppmana användaren att ange indata igen. (Ärvd från Dialog) |
ResumeDialogAsync(DialogContext, DialogReason, Object, CancellationToken) |
Anropas när en underordnad dialogruta har slutfört den här svängen och returnerar kontrollen till den här dialogrutan. (Ärvd från Dialog) |
SendOAuthCardAsync(OAuthPromptSettings, ITurnContext, IMessageActivity, CancellationToken) |
Delad implementering av funktionen SendOAuthCardAsync. Detta är avsett för intern användning för att konsolidera implementeringen av OAuthPrompt och OAuthInput. Programlogik bör använda dessa dialogklasser. |
SetCallerInfoInDialogState(IDictionary<String,Object>, ITurnContext) |
Delad implementering av funktionen SetCallerInfoInDialogState. Detta är avsett för intern användning för att konsolidera implementeringen av OAuthPrompt och OAuthInput. Programlogik bör använda dessa dialogklasser. |
SignOutUserAsync(ITurnContext, CancellationToken) |
Loggar ut användaren. |
Tilläggsmetoder
RunAsync(Dialog, ITurnContext, IStatePropertyAccessor<DialogState>, CancellationToken) |
Skapar en dialogstack och startar en dialogruta och push-överför den till stacken. |