OAuthPrompt Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vytvoří novou výzvu, která uživatele vyzve k přihlášení pomocí služby Jednotné přihlašování (SSO) služby Bot Frameworks.
public class OAuthPrompt : Microsoft.Bot.Builder.Dialogs.Dialog
type OAuthPrompt = class
inherit Dialog
Public Class OAuthPrompt
Inherits Dialog
- Dědičnost
Poznámky
Výzva se pokusí načíst aktuální token uživatele, a pokud uživatel není přihlášený, pošle mu OAuthCard obsahující tlačítko, které může stisknout a přihlásit se. V závislosti na kanálu bude uživatel odeslán prostřednictvím jednoho ze dvou možných toků přihlašování:
– Tok automatického přihlašování, kdy jakmile se uživatel přihlásí a služba jednotného přihlašování předá robotovi přístupový token uživatele pomocí události nebo aktivity vyvolání. – Tok "kouzelného kódu", kdy jakmile se uživatel přihlásí, služba jednotného přihlašování zobrazí výzvu k odeslání robota šestimístného kódu potvrzujícího jeho identitu. Tento kód se odešle jako standardní aktivita zprávy.
OAuthPrompt automaticky podporuje oba toky a jediné, na co je potřeba dávat pozor, je neblokovat aktivity "event" a "invoke", na které může výzva čekat.
**Poznámka**: Měli byste se vyhnout uchovávání přístupového tokenu u robotů v jiném stavu. Služba jednotného přihlašování služby Bot Frameworks bezpečně uloží token vaším jménem. Pokud ho uložíte ve stavu robota, může vypršet platnost nebo se může odvolat mezi jednotlivými tahy.Při volání výzvy z vodopádového kroku byste měli použít token v kroku, který následuje za výzvou, a pak nechat token na konci funkce mimo rozsah.
### Využití výzvy
Při použití s robotem DialogSet můžete jednoduše přidat novou instanci výzvy jako pojmenované dialogové okno pomocí Add(Dialog)příkazu . Výzvu pak můžete spustit z vodopádového kroku pomocí nebo BeginDialogAsync(String, Object, CancellationToken)PromptAsync(String, PromptOptions, CancellationToken). Uživatel bude vyzván k přihlášení podle potřeby a jeho přístupový token se volajícím předá jako argument v dalším vodopádovém kroku.
Konstruktory
OAuthPrompt(String, OAuthPromptSettings, PromptValidator<TokenResponse>) |
Inicializuje novou instanci OAuthPrompt třídy . |
Vlastnosti
Id |
Získá nebo nastaví ID pro dialogové okno. (Zděděno od Dialog) |
Source |
Získá informace cref="SourceRange"/>. (Zděděno od Dialog) |
TelemetryClient |
Získá nebo nastaví k IBotTelemetryClient použití pro protokolování. (Zděděno od Dialog) |
Metody
BeginDialogAsync(DialogContext, Object, CancellationToken) |
Volá se, když je dialogové okno výzvy vloženo do zásobníku dialogů a je aktivováno. |
ContinueDialogAsync(DialogContext, CancellationToken) |
Volá se, když je dialogové okno výzvy aktivní a uživatel odpověděl novou aktivitou. |
EndDialogAsync(ITurnContext, DialogInstance, DialogReason, CancellationToken) |
Volá se, když dialogové okno končí. (Zděděno od Dialog) |
GetUserTokenAsync(ITurnContext, CancellationToken) |
Pokusí se získat token uživatele. |
GetVersion() |
Získá jedinečný řetězec, který představuje verzi tohoto dialogového okna. Pokud se verze změní mezi se změní, dialogový systém vygeneruje DialogChanged událost. (Zděděno od Dialog) |
OnComputeId() |
Vytvoří ID výpočetních prostředků pro dialogové okno. (Zděděno od Dialog) |
OnDialogEventAsync(DialogContext, DialogEvent, CancellationToken) |
Volána při vyvolání události pomocí |
OnPostBubbleEventAsync(DialogContext, DialogEvent, CancellationToken) |
Volána poté, co byla událost označena všemi rodiči a nebyla zpracována. (Zděděno od Dialog) |
OnPreBubbleEventAsync(DialogContext, DialogEvent, CancellationToken) |
Volá se před bublinovou bublinou události do nadřazeného objektu. (Zděděno od Dialog) |
RecognizeTokenAsync(OAuthPromptSettings, DialogContext, CancellationToken) |
Sdílená implementace funkce RecognizeTokenAsync. To je určené pro interní použití ke konsolidaci implementace OAuthPrompt a OAuthInput. Logika aplikace by měla používat tyto třídy dialogů. |
RegisterSourceLocation(String, Int32) |
Zaregistruje cref="SourceRange"/> v zadaném umístění. (Zděděno od Dialog) |
RepromptDialogAsync(ITurnContext, DialogInstance, CancellationToken) |
Volá se, když má dialogové okno znovu vyzvat uživatele k zadání vstupu. (Zděděno od Dialog) |
ResumeDialogAsync(DialogContext, DialogReason, Object, CancellationToken) |
Volána, když podřízené dialogové okno dokončilo toto otočení a vrátilo ovládání do tohoto dialogového okna. (Zděděno od Dialog) |
SendOAuthCardAsync(OAuthPromptSettings, ITurnContext, IMessageActivity, CancellationToken) |
Sdílená implementace funkce SendOAuthCardAsync. To je určené pro interní použití ke konsolidaci implementace OAuthPrompt a OAuthInput. Logika aplikace by měla používat tyto třídy dialogů. |
SetCallerInfoInDialogState(IDictionary<String,Object>, ITurnContext) |
Sdílená implementace funkce SetCallerInfoInDialogState. To je určené pro interní použití ke konsolidaci implementace OAuthPrompt a OAuthInput. Logika aplikace by měla používat tyto třídy dialogů. |
SignOutUserAsync(ITurnContext, CancellationToken) |
Odhlásí uživatele. |
Metody rozšíření
RunAsync(Dialog, ITurnContext, IStatePropertyAccessor<DialogState>, CancellationToken) |
Vytvoří zásobník dialogů a spustí dialogové okno, které ho nasdílí do zásobníku. |