OAuthPrompt Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Crea un nuevo mensaje que pide al usuario que inicie sesión con el servicio Bot Frameworks Single Sign On (SSO).
public class OAuthPrompt : Microsoft.Bot.Builder.Dialogs.Dialog
type OAuthPrompt = class
inherit Dialog
Public Class OAuthPrompt
Inherits Dialog
- Herencia
Comentarios
El símbolo del sistema intentará recuperar el token actual de los usuarios y, si el usuario no ha iniciado sesión, le enviará un "OAuthCard" que contiene un botón que puede presionar para iniciar sesión. Según el canal, el usuario se enviará a través de uno de los dos flujos de inicio de sesión posibles:
- El flujo de inicio de sesión automático en el que, una vez que el usuario inicia sesión y el servicio SSO reenvía el bot, el token de acceso de los usuarios mediante una actividad "event" o "invoke". - El flujo de "código mágico" en el que, una vez que el usuario inicia sesión, el servicio SSO le pedirá que envíe al bot un código de seis dígitos que confirme su identidad. Este código se enviará como una actividad "message" estándar.
Ambos flujos son compatibles automáticamente con "OAuthPrompt" y lo único que debe tener cuidado es que no bloquea las actividades "event" e "invoke" en las que el símbolo del sistema podría estar esperando.
**Nota**: Debe evitar conservar el token de acceso con los bots de otro estado. El servicio de inicio de sesión único de Bot Frameworks almacenará de forma segura el token en su nombre. Si lo almacena en el estado de los bots, podría expirar o revocarse entre turnos.Al llamar al símbolo del sistema desde un paso en cascada, debe usar el token en el paso siguiente al símbolo del sistema y, a continuación, dejar que el token salga del ámbito al final de la función.
### Uso de avisos
Cuando se usa con el DialogSet bot, simplemente puede agregar una nueva instancia del símbolo del sistema como un cuadro de diálogo con nombre mediante Add(Dialog). A continuación, puede iniciar el símbolo del sistema desde un paso en cascada mediante BeginDialogAsync(String, Object, CancellationToken) o PromptAsync(String, PromptOptions, CancellationToken). Se pedirá al usuario que inicie sesión según sea necesario y su token de acceso se pasará como argumento al siguiente paso en cascada de los llamadores.
Constructores
OAuthPrompt(String, OAuthPromptSettings, PromptValidator<TokenResponse>) |
Inicializa una nueva instancia de la clase OAuthPrompt. |
Propiedades
Id |
Obtiene o establece el identificador del cuadro de diálogo. (Heredado de Dialog) |
Source |
Obtiene la información de cref="SourceRange"/>. (Heredado de Dialog) |
TelemetryClient |
Obtiene o establece el objeto IBotTelemetryClient que se va a usar para el registro. (Heredado de Dialog) |
Métodos
BeginDialogAsync(DialogContext, Object, CancellationToken) |
Se llama cuando se inserta un cuadro de diálogo de solicitud en la pila de diálogos y se está activando. |
ContinueDialogAsync(DialogContext, CancellationToken) |
Se llama cuando un cuadro de diálogo de solicitud es el diálogo activo y el usuario respondió con una nueva actividad. |
EndDialogAsync(ITurnContext, DialogInstance, DialogReason, CancellationToken) |
Se llama cuando finaliza el diálogo. (Heredado de Dialog) |
GetUserTokenAsync(ITurnContext, CancellationToken) |
Intenta obtener el token del usuario. |
GetVersion() |
Obtiene una cadena única que representa la versión de este cuadro de diálogo. Si la versión cambia entre turnos, el sistema de diálogos emitirá un evento DialogChanged. (Heredado de Dialog) |
OnComputeId() |
Compila el identificador de proceso para el cuadro de diálogo. (Heredado de Dialog) |
OnDialogEventAsync(DialogContext, DialogEvent, CancellationToken) |
Se llama cuando se genera un evento, mediante |
OnPostBubbleEventAsync(DialogContext, DialogEvent, CancellationToken) |
Se llama después de que un evento se propagase a todos los padres y no se controló. (Heredado de Dialog) |
OnPreBubbleEventAsync(DialogContext, DialogEvent, CancellationToken) |
Se llama antes de que un evento se propaga a su elemento primario. (Heredado de Dialog) |
RecognizeTokenAsync(OAuthPromptSettings, DialogContext, CancellationToken) |
Implementación compartida de la función RecognizeTokenAsync. Esto está pensado para uso interno, para consolidar la implementación de OAuthPrompt y OAuthInput. La lógica de la aplicación debe usar esas clases de diálogo. |
RegisterSourceLocation(String, Int32) |
Registra un cref="SourceRange"/> en la ubicación proporcionada. (Heredado de Dialog) |
RepromptDialogAsync(ITurnContext, DialogInstance, CancellationToken) |
Se llama cuando el cuadro de diálogo debe volver a solicitar la entrada al usuario. (Heredado de Dialog) |
ResumeDialogAsync(DialogContext, DialogReason, Object, CancellationToken) |
Se llama cuando un cuadro de diálogo secundario ha completado este turno y devuelve el control a este diálogo. (Heredado de Dialog) |
SendOAuthCardAsync(OAuthPromptSettings, ITurnContext, IMessageActivity, CancellationToken) |
Implementación compartida de la función SendOAuthCardAsync. Esto está pensado para uso interno, para consolidar la implementación de OAuthPrompt y OAuthInput. La lógica de la aplicación debe usar esas clases de diálogo. |
SetCallerInfoInDialogState(IDictionary<String,Object>, ITurnContext) |
Implementación compartida de la función SetCallerInfoInDialogState. Esto está pensado para uso interno, para consolidar la implementación de OAuthPrompt y OAuthInput. La lógica de la aplicación debe usar esas clases de diálogo. |
SignOutUserAsync(ITurnContext, CancellationToken) |
Cierra la sesión del usuario. |
Métodos de extensión
RunAsync(Dialog, ITurnContext, IStatePropertyAccessor<DialogState>, CancellationToken) |
Crea una pila de diálogos e inicia un diálogo, insértalo en la pila. |