Exemplo n.º 1
0
        public static void GuardarFrasePalabra(int IdAprender, List <string> Palabras, string Frase, string Respuesta)
        {
            try
            {
                var aprendido = false;

                //Controlo si completo la frase.
                if (Frase != "")
                {
                    var brf   = new Rules.Frase();
                    var frase = new Models.Frase
                    {
                        Descripcion = Frase,
                        Respuesta   = Respuesta,
                        Activo      = true
                    };

                    //Si completa la frase la inserto en la base.
                    brf.Insertar(frase);
                    aprendido = true;
                }

                //Entro si seleccionó mas de una palabra.
                if (Palabras.Count > 2)
                {
                    var brp     = new Rules.Palabra();
                    var palabra = new Models.Palabra
                    {
                        Palabra1  = (Palabras.Count >= 1 ? Palabras[0] : ""),
                        Palabra2  = (Palabras.Count >= 2 ? Palabras[1] : ""),
                        Palabra3  = (Palabras.Count >= 3 ? Palabras[2] : ""),
                        Respuesta = Respuesta
                    };

                    //Inserto la entidad en la base.
                    brp.Insertar(palabra);
                    aprendido = true;
                }

                //Solo la marco como aprendida si seleccionó agluna frase o palabra para guardar.
                if (aprendido)
                {
                    var bra      = new Rules.Aprender();
                    var aprender = bra.ObtenerPorId(IdAprender);
                    aprender.Aprendido = true;

                    //Inserto ambas entidades.
                    bra.Modificar(aprender);
                }
            }
            catch (Exception ex)
            {
                throw (ex);
            }
        }
Exemplo n.º 2
0
        public string Responder(string mensaje)
        {
            var frase     = new Rules.Frase();
            var palabra   = new Rules.Palabra();
            var respuesta = "";

            //Enviamos el mensaje recibido para ser procesado.
            var frases = frase.AnalizarFrase(mensaje);

            //Busco la respuesta a la frase, si es que la encuentra.
            respuesta = frase.BuscarFrase(IdCliente, frases);

            //Si no encontró respuesta, continuo buscando por palabras
            if (respuesta == "")
            {
                respuesta = palabra.ConsultarmatrixEngine(IdCliente, mensaje);
            }

            //Si no encontré la respuesta,
            if (respuesta == "")
            {
                var br       = new Rules.Aprender();
                var aprender = new Models.Aprender {
                    IdCliente = IdCliente,
                    Frase     = mensaje,
                    Aprendido = false
                };

                //Respuesta por defecto.
                respuesta = "No entendí, por favor podrías repetirlo?";

                //Inserto la entidad para poder lugeo configurarlo.
                br.Insertar(aprender);
            }

            return(respuesta);
        }