Ejemplo n.º 1
0
        public static async Task ErrorResultado(long id, TipoPlataforma plataforma)
        {
            string respuesta = "No hay resultados por aquí...";

            MensajeSalida mensaje = SelectorPlataforma.CrearMensajeSalida(respuesta, id, plataforma);

            await BandejaSalida.EnviarMensaje(mensaje);
        }
Ejemplo n.º 2
0
        public static async Task ErrorApi(long id, TipoPlataforma plataforma)
        {
            string respuesta = "Oh no!, Se cayó Mercado Libre!";

            MensajeSalida mensaje = SelectorPlataforma.CrearMensajeSalida(respuesta, id, plataforma);

            await BandejaSalida.EnviarMensaje(mensaje);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Método que pide una aclacración al usuario. Delega la responsabilidad de leer el archivo
        /// </summary>
        /// <param name="id">Identificador de la conversación</param>
        /// <param name="plataforma">Plataforma por la cual se debe enviar el mensaje</param>
        /// <returns></returns>
        public static async Task PedirAclaracion(long id, TipoPlataforma plataforma)
        {
            string respuesta = "Ups, no te entendí, ¿puedes volver a responder?";

            try
            {
                respuesta = LeerArchivo.Leer("NoEntendi");
            }
            catch (DirectoryNotFoundException)
            {
                Console.WriteLine("No se encontro archivo");
            }
            catch (FileNotFoundException)
            {
                Console.WriteLine("No se encontro archivo");
            }
            MensajeSalida mensaje = SelectorPlataforma.CrearMensajeSalida(respuesta, id, plataforma);

            await BandejaSalida.EnviarReaccion(mensaje);

            await BandejaSalida.EnviarMensaje(mensaje);
        }
Ejemplo n.º 4
0
 /// <summary>
 /// Método asincrónico que se encarga de enviar reacciones (aplicando polimorfismo, varía según el tipo de MensajeSalida que se pasa por parámetro)
 /// </summary>
 /// <param name="mensaje"></param>
 /// <returns></returns>
 public static async Task EnviarReaccion(MensajeSalida mensaje)
 {
     await mensaje.EnviarReaccion();
 }
Ejemplo n.º 5
0
 /// <summary>
 /// Método asincrónico que se encarga de enviar mensajes de texto
 /// </summary>
 /// <param name="mensaje">Objeto Mensaje a enviar</param>
 /// <returns></returns>
 public static async Task EnviarMensaje(MensajeSalida mensaje)
 {
     await mensaje.EnviarTexto();
 }
Ejemplo n.º 6
0
        public static async Task EnviaRegalo(string regalo, long id, TipoPlataforma plataforma)
        {
            MensajeSalida mensaje = SelectorPlataforma.CrearMensajeSalida(regalo, id, plataforma);

            await BandejaSalida.EnviarMensaje(mensaje);
        }
Ejemplo n.º 7
0
 /// <summary>
 /// Por polimorfismo, no se conoce de antemano qué implementación del método se va a ejecutar,
 /// ya que las clases que heredan de MensajeSalida tienen distintas implementaciones de EnviarReaccion
 /// </summary>
 /// <param name="mensaje">Mensaje a enviar</param>
 /// <returns></returns>
 public static async Task Reaccion(MensajeSalida mensaje)
 {
     await BandejaSalida.EnviarReaccion(mensaje);
 }
Ejemplo n.º 8
0
        /// <summary>
        /// Método que genera la respuesta hacia el usuario. Se utiliza Delegación para la creación de la instancia
        /// de MensajeSalida, y para el envío mediante la plataforma
        /// </summary>
        /// <param name="contenido">Contenido del mensaje</param>
        /// <param name="id">Identificador de la conversación</param>
        /// <param name="plataforma">Plataforma por la que se debe enviar el mensaje</param>
        /// <returns></returns>

        public static async Task GenerarRespuesta(string contenido, long id, TipoPlataforma plataforma)
        {
            MensajeSalida mensaje = SelectorPlataforma.CrearMensajeSalida(contenido, id, plataforma);

            await BandejaSalida.EnviarMensaje(mensaje);
        }