SimpleDialog class
Permite la creación de diálogos personalizados basados en un cierre simple. Esto es útil para los casos en los que desea un flujo de conversación dinámico o tiene una situación que simplemente no se asigna muy bien al uso de una cascada. Las cosas que se deben tener en cuenta:
- El cierre de los diálogos se puede llamar en dos contextos diferentes para los que es posible que necesite probar. Se llamará según lo esperado cuando el usuario envíe un mensaje al cuadro de diálogo, pero si llama a otro mensaje o diálogo desde el cierre, se llamará una segunda vez con los resultados del mensaje o cuadro de diálogo. Normalmente, puede probar para este segundo caso comprobando si existe una propiedad
args.resumed. Es importante evitar entrar en un bucle infinito que puede ser fácil de hacer. - A diferencia de una cascada, el diálogo no finalizará automáticamente. Seguirá siendo el cuadro de diálogo activo hasta que llame a session.endDialog().
- Extends
Constructores
| Simple |
Crea un cuadro de diálogo personalizado basado en un cierre simple. |
Métodos
| begin<T>(Call |
Se llama cuando se inicia una nueva sesión de diálogo. |
| dialog |
Un cuadro de diálogo secundario ha finalizado y el actual se está reanudando. |
| reply |
Procesa los mensajes recibidos del usuario. Lo llama el sistema de diálogos. |
Detalles del constructor
SimpleDialog((session: CallSession, args?: any | IDialogResult<any>) => void)
Crea un cuadro de diálogo personalizado basado en un cierre simple.
new SimpleDialog(handler: (session: CallSession, args?: any | IDialogResult<any>) => void)
Parámetros
- handler
-
(session: CallSession, args?: any | IDialogResult<any>) => void
Cierre de función para el cuadro de diálogo.
Detalles del método
begin<T>(CallSession, T)
Se llama cuando se inicia una nueva sesión de diálogo.
function begin<T>(session: CallSession, args?: T)
Parámetros
- session
- CallSession
Objeto session para la conversación actual.
- args
-
T
(Opcional) argumentos pasados al cuadro de diálogo por su elemento primario.
dialogResumed<T>(CallSession, IDialogResult<T>)
Un cuadro de diálogo secundario ha finalizado y el actual se está reanudando.
function dialogResumed<T>(session: CallSession, result: IDialogResult<T>)
Parámetros
- session
- CallSession
Objeto session para la conversación actual.
- result
Resultado devuelto por el cuadro de diálogo secundario.
replyReceived(CallSession)
Procesa los mensajes recibidos del usuario. Lo llama el sistema de diálogos.
function replyReceived(session: CallSession)
Parámetros
- session
- CallSession
Objeto session para la conversación actual.