Taal

OAuthPrompt Klas

Definitie

Maakt een nieuwe prompt aan die de gebruiker vraagt in te loggen met de Bot Frameworks Single Sign On (SSO)-service.

public class OAuthPrompt : Microsoft.Bot.Builder.Dialogs.Dialog
type OAuthPrompt = class
    inherit Dialog
Public Class OAuthPrompt
Inherits Dialog
Overname
OAuthPrompt

Opmerkingen

De prompt probeert het huidige token van de gebruiker op te halen en als de gebruiker niet is ingelogd, stuurt het een 'OAuthCard' met een knop die ze kunnen indrukken om in te loggen. Afhankelijk van het kanaal wordt de gebruiker via een van de twee mogelijke aanmeldingsstromen gestuurd:

- De automatische aanmeldingsstroom waarbij, zodra de gebruiker inlogt en de SSO-dienst de bot doorstuurt, de gebruikerstoegangstoken via een 'gebeurtenis'- of 'aanroep'-activiteit. - De "magische code"-flow waarbij de gebruiker na het inloggen door de SSO-dienst wordt gevraagd om de bot een zescijferige code te sturen ter bevestiging van zijn identiteit. Deze code wordt verzonden als een standaard 'bericht'-activiteit.

Beide flows worden automatisch ondersteund door de 'OAuthPrompt' en het enige waar je op moet letten is dat je de 'event'- en 'invoke'-activiteiten waar de prompt mogelijk op wacht niet blokkeert.

**Opmerking**: Je moet voorkomen dat je de toegangstoken in de andere staat van je bot laat behouden. De Bot Frameworks SSO-service slaat het token veilig namens u op. Als je het in de staat van je bot opslaat, kan het verlopen of worden ingetrokken tussen beurten.

Wanneer je de prompt aanroept vanuit een waterfall-stap, moet je het token binnen de volgende stap gebruiken en het token aan het einde van je functie buiten scope laten gaan.

### Prompt Gebruik

Wanneer je het met je bots gebruikt, DialogSet kun je eenvoudig een nieuwe instantie van de prompt toevoegen als een benoemde dialoog met Add(Dialog)behulp van . Vervolgens kunt u de prompt starten vanuit een watervalstap met behulp van BeginDialogAsync(String, Object, CancellationToken) of PromptAsync(String, PromptOptions, CancellationToken). De gebruiker wordt gevraagd om zich indien nodig in te loggen en hun toegangstoken wordt als argument doorgegeven aan de volgende waterfallstap van de aanroeper.

Constructors

Name Description
OAuthPrompt(String, OAuthPromptSettings, PromptValidator<TokenResponse>)

Initialiseert een nieuw exemplaar van de OAuthPrompt klasse.

Eigenschappen

Name Description
Id

Krijgt of stelt ID in voor de dialoog.

(Overgenomen van Dialog)
Source

Krijgt de informatie van de cref="SourceRange"/>.

(Overgenomen van Dialog)
TelemetryClient

Krijgt of stelt de in om te IBotTelemetryClient gebruiken voor logs.

(Overgenomen van Dialog)

Methoden

Name Description
BeginDialogAsync(DialogContext, Object, CancellationToken)

Wordt aangeroepen wanneer een promptdialoogvenster naar de dialoogvensterstack wordt gepusht en wordt geactiveerd.

ContinueDialogAsync(DialogContext, CancellationToken)

Wordt aangeroepen wanneer een promptdialoogvenster het actieve dialoogvenster is en de gebruiker heeft gereageerd met een nieuwe activiteit.

EndDialogAsync(ITurnContext, DialogInstance, DialogReason, CancellationToken)

Aangeroepen wanneer het dialoogvenster eindigt.

(Overgenomen van Dialog)
GetUserTokenAsync(ITurnContext, CancellationToken)

Pogingen om het token van de gebruiker te krijgen.

GetVersion()

Krijgt een unieke string die de versie van deze dialoog vertegenwoordigt. Als de versie tussen beurten verandert, zal het dialoogsysteem een DialogChanged-gebeurtenis uitzenden.

(Overgenomen van Dialog)
OnComputeId()

Bouwt de compute-ID voor de dialoog.

(Overgenomen van Dialog)
OnDialogEventAsync(DialogContext, DialogEvent, CancellationToken)

Wordt aangeroepen wanneer een gebeurtenis is opgeroepen, met behulp van DialogContext.emitEvent(), door ofwel de huidige dialoog of een dialoog die de huidige dialoog is gestart.

(Overgenomen van Dialog)
OnPostBubbleEventAsync(DialogContext, DialogEvent, CancellationToken)

Gebeld nadat een gebeurtenis aan alle ouders was doorgegeven en niet werd afgehandeld.

(Overgenomen van Dialog)
OnPreBubbleEventAsync(DialogContext, DialogEvent, CancellationToken)

Wordt aangeroepen voordat een gebeurtenis naar zijn ouder wordt gebubbeld.

(Overgenomen van Dialog)
RecognizeTokenAsync(OAuthPromptSettings, DialogContext, CancellationToken)

Gedeelde implementatie van de functie RecognizeTokenAsync. Dit is bedoeld voor intern gebruik, om de implementatie van de OAuthPrompt en OAuthInput te consolideren. De applicatielogica zou die dialoogklassen moeten gebruiken.

RegisterSourceLocation(String, Int32)

Registreert een cref="SourceRange"/> op de opgegeven locatie.

(Overgenomen van Dialog)
RepromptDialogAsync(ITurnContext, DialogInstance, CancellationToken)

Wordt aangeroepen wanneer het dialoogvenster de gebruiker opnieuw om invoer moet vragen.

(Overgenomen van Dialog)
ResumeDialogAsync(DialogContext, DialogReason, Object, CancellationToken)

Aangeroepen wanneer een kinddialoog deze beurt voltooide, waardoor de controle naar dit dialoog werd teruggegeven.

(Overgenomen van Dialog)
SendOAuthCardAsync(OAuthPromptSettings, ITurnContext, IMessageActivity, CancellationToken)

Gedeelde implementatie van de SendOAuthCardAsync-functie. Dit is bedoeld voor intern gebruik, om de implementatie van de OAuthPrompt en OAuthInput te consolideren. De applicatielogica zou die dialoogklassen moeten gebruiken.

SetCallerInfoInDialogState(IDictionary<String,Object>, ITurnContext)

Gedeelde implementatie van de SetCallerInfoInDialogState-functie. Dit is bedoeld voor intern gebruik, om de implementatie van de OAuthPrompt en OAuthInput te consolideren. De applicatielogica zou die dialoogklassen moeten gebruiken.

SignOutUserAsync(ITurnContext, CancellationToken)

Meldt de gebruiker uit.

Extensiemethoden

Name Description
RunAsync(Dialog, ITurnContext, IStatePropertyAccessor<DialogState>, CancellationToken)

Hiermee maakt u een dialoogvensterstack en start u een dialoogvenster, waarbij u het naar de stack pusht.

Van toepassing op