Langue

OAuthPrompt Classe

Définition

Crée une invite qui demande à l’utilisateur de se connecter à l’aide du service Bot Frameworks Single Sign On (SSO).

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

Remarques

L’invite tentera de récupérer le jeton actuel de l’utilisateur et, si l’utilisateur n’est pas connecté, elle lui enverra une « OAuthCard » contenant un bouton qu’il pourra appuyer pour se connecter. Selon le canal, l’utilisateur est envoyé via l’un des deux flux de connexion possibles :

- Le flux de connexion automatique où, une fois l’utilisateur connecté et que le service SSO transmet le bot, l’utilisateur accède au jeton d’accès à l’aide d’une activité « événement » ou « invoque ». - Le flux de « code magique » où, une fois connecté, l’utilisateur est invité par le service SSO à envoyer au bot un code à six chiffres confirmant son identité. Ce code sera envoyé sous forme d’activité standard de « message ».

Les deux flux sont automatiquement pris en charge par l'« OAuthPrompt » et la seule chose dont il faut faire attention est de ne pas bloquer l'« événement » et « invoquer » les activités que l’invite pourrait attendre.

**Note** : Vous devez éviter de faire persister le jeton d’accès auprès de l’autre état de vos bots. Le service Bot Frameworks SSO stocke en toute sécurité le jeton en votre nom. Si vous stockez-le dans l’état de vos bots, il peut expirer ou être révoqué entre les tours.

Lorsque vous appelez l’invite à partir d’une étape en cascade, vous devez utiliser le jeton à l’étape suivante, puis laisser le jeton sortir de l’étendue à la fin de votre fonction.

### Utilisation de prompt

Lorsqu’il est utilisé avec vos bots DialogSet , vous pouvez simplement ajouter une nouvelle instance de l’invite comme une boîte de dialogue nommée en utilisant Add(Dialog). Vous pouvez ensuite démarrer l’invite à partir d’une étape en cascade en utilisant BeginDialogAsync(String, Object, CancellationToken) ou PromptAsync(String, PromptOptions, CancellationToken). L’utilisateur sera invité à se connecter si nécessaire et son jeton d’accès sera transmis comme argument à l’étape suivante de la cascade de l’appelant.

Constructeurs

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

Initialise une nouvelle instance de la classe OAuthPrompt.

Propriétés

Nom Description
Id

Obtient ou définit l’ID pour le dialogue.

(Hérité de Dialog)
Source

Obtient les informations du cref="SourceRange"/>.

(Hérité de Dialog)
TelemetryClient

Obtient ou met en place les IBotTelemetryClient outils pour l’exploitation forestière.

(Hérité de Dialog)

Méthodes

Nom Description
BeginDialogAsync(DialogContext, Object, CancellationToken)

Appelé lorsqu’une boîte de dialogue d’invite est envoyée (push) sur la pile de dialogues et est activée.

ContinueDialogAsync(DialogContext, CancellationToken)

Appelé lorsqu’une boîte de dialogue d’invite est la boîte de dialogue active et que l’utilisateur a répondu avec une nouvelle activité.

EndDialogAsync(ITurnContext, DialogInstance, DialogReason, CancellationToken)

Appelé lorsque la boîte de dialogue se termine.

(Hérité de Dialog)
GetUserTokenAsync(ITurnContext, CancellationToken)

Tente d’obtenir le jeton de l’utilisateur.

GetVersion()

Obtient une chaîne unique qui représente la version de ce dialogue. Si la version change entre les tours, le système de dialogue émet un événement DialogChanged.

(Hérité de Dialog)
OnComputeId()

Construit l’identifiant de calcul pour le dialogue.

(Hérité de Dialog)
OnDialogEventAsync(DialogContext, DialogEvent, CancellationToken)

Appelé lorsqu’un événement a été déclenché, à l’aide de DialogContext.emitEvent(), par la boîte de dialogue active ou par une boîte de dialogue que la boîte de dialogue active a démarré.

(Hérité de Dialog)
OnPostBubbleEventAsync(DialogContext, DialogEvent, CancellationToken)

Appelé après un événement a été bullené à tous les parents et n’a pas été géré.

(Hérité de Dialog)
OnPreBubbleEventAsync(DialogContext, DialogEvent, CancellationToken)

Appelé avant qu’un événement ne soit mis en bulle à son parent.

(Hérité de Dialog)
RecognizeTokenAsync(OAuthPromptSettings, DialogContext, CancellationToken)

Implémentation partagée de la fonction RecognizeTokenAsync. Cela est destiné à une utilisation interne, afin de consolider l’implémentation de OAuthPrompt et OAuthInput. La logique d’application doit utiliser ces classes de dialogue.

RegisterSourceLocation(String, Int32)

Enregistre un cref="SourceRange"/> à l’emplacement fourni.

(Hérité de Dialog)
RepromptDialogAsync(ITurnContext, DialogInstance, CancellationToken)

Appelé lorsque la boîte de dialogue doit inviter à nouveau l’utilisateur à entrer.

(Hérité de Dialog)
ResumeDialogAsync(DialogContext, DialogReason, Object, CancellationToken)

Appelé lorsqu’un dialogue enfant a terminé ce tour, renvoyant le contrôle à ce dialogue.

(Hérité de Dialog)
SendOAuthCardAsync(OAuthPromptSettings, ITurnContext, IMessageActivity, CancellationToken)

Implémentation partagée de la fonction SendOAuthCardAsync. Cela est destiné à une utilisation interne, afin de consolider l’implémentation de OAuthPrompt et OAuthInput. La logique d’application doit utiliser ces classes de dialogue.

SetCallerInfoInDialogState(IDictionary<String,Object>, ITurnContext)

Implémentation partagée de la fonction SetCallerInfoInDialogState. Cela est destiné à une utilisation interne, afin de consolider l’implémentation de OAuthPrompt et OAuthInput. La logique d’application doit utiliser ces classes de dialogue.

SignOutUserAsync(ITurnContext, CancellationToken)

Déconnecte l’utilisateur.

Méthodes d’extension

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

Crée une pile de dialogues et démarre une boîte de dialogue, en l’appuyant sur la pile.

S’applique à