Exemple #1
0
        public MensajeCorreoResponse enviarCorreo(MensajeCorreoRequest mensajeCorreo)
        {
            MensajeCorreoResponse respuesta = new MensajeCorreoResponse();

            System.Net.Mail.MailMessage msg = new System.Net.Mail.MailMessage();
            msg.To.Add(mensajeCorreo.destinatario);
            msg.From            = new MailAddress(mensajeCorreo.emisor, "", System.Text.Encoding.UTF8);
            msg.Subject         = mensajeCorreo.asunto;
            msg.SubjectEncoding = System.Text.Encoding.UTF8;
            msg.Body            = mensajeCorreo.mensaje;
            msg.BodyEncoding    = System.Text.Encoding.UTF8;
            msg.IsBodyHtml      = false;

            //Aquí es donde se hace lo especial
            SmtpClient client = new SmtpClient();

            client.Credentials = new System.Net.NetworkCredential(mensajeCorreo.emisor, mensajeCorreo.clave);
            client.Port        = 587;
            client.Host        = "smtp.gmail.com";
            client.EnableSsl   = true; //Esto es para que vaya a través de SSL que es obligatorio con GMail
            try
            {
                client.Send(msg);
                respuesta.estado = true;
                return(respuesta);
            }
            catch (Exception ex)
            {
                respuesta.estado = false;
                return(respuesta);
            }
        }
Exemple #2
0
        public void EnviarCorreo()
        {
            JavaScriptSerializer js = new JavaScriptSerializer();
            MensajeCorreoRequest solicitudCorreo = new MensajeCorreoRequest()
            {
                emisor       = "*****@*****.**",
                clave        = "",///AQUI DEBEN PONER LA CONTRASEÑA DEL CORREO EMISOR
                destinatario = "*****@*****.**",
                asunto       = "correo test rest",
                mensaje      = "Ojala funacione"
            };

            string jsonSolicitud = js.Serialize(solicitudCorreo);

            byte[]         ByteCorreo = Encoding.UTF8.GetBytes(jsonSolicitud);
            HttpWebRequest request    = WebRequest.Create("http://localhost:49764/Mensajeria.svc/MensajeCorreo") as HttpWebRequest;

            request.Method        = "POST";
            request.ContentLength = ByteCorreo.Length;
            request.ContentType   = "application/json";
            var rqt = request.GetRequestStream();

            rqt.Write(ByteCorreo, 0, ByteCorreo.Length);
            HttpWebResponse       rsp             = (HttpWebResponse)request.GetResponse();
            StreamReader          reader          = new StreamReader(rsp.GetResponseStream());
            string                tramaJson       = reader.ReadToEnd();
            MensajeCorreoResponse respuestaCorreo = js.Deserialize <MensajeCorreoResponse>(tramaJson);

            Assert.AreEqual(true, respuestaCorreo.estado);
        }
Exemple #3
0
        public static String Grabar(SolicitudServWS.Solicitud solicitud, ApoderadoServWS.Apoderado apoderado)
        {
            try
            {
                SolicitudServiceClient solicitudService = new SolicitudServiceClient();
                //Solicitud solicitud = new Solicitud()
                //{
                //    NroDniAlumno = txtDNI.Value,
                //    NroDniApoderado = txtDNIApoderado.Value,
                //    Certificado = txtCertificado.Value,
                //    IdNivel = int.Parse(txtIdNivel.Value),
                //    Tipo = txtTipo.Value,
                //    Estado = txtEstado.Value,
                //    Observaciones = txtObservaciones.Value,
                //    FechaSolicitud = DateTime.ParseExact(txtSolicitud.Value, "dd/MM/yyyy", null),
                //    FechaCita = DateTime.Now,
                //    FechaRespuesta = DateTime.Now,
                //    IdPreMatricula = int.Parse(txtIdPreMatricula.Value)
                //};

                Solicitud solicitudModificado = solicitudService.Modificar(solicitud);
                string    ls_serviciocorreo   = WebConfigurationManager.AppSettings["servicioCorreo"];

                if (ls_serviciocorreo == null)
                {
                    ls_serviciocorreo = "";
                }

                if (solicitud.Estado == "Citado" && ls_serviciocorreo != "" && apoderado.Correo != "")
                {
                    //Correo desde el servicio
                    JavaScriptSerializer js = new JavaScriptSerializer();
                    MensajeCorreoRequest solicitudCorreo = new MensajeCorreoRequest()
                    {
                        emisor       = "*****@*****.**",
                        clave        = "sitece$2019",
                        destinatario = apoderado.Correo,
                        asunto       = "Citación del Colegio Maristas",
                        mensaje      = "Sr(a) " + apoderado.Nombres + ", Ud está citado al colegio el día " + solicitud.FechaCita.ToString("dd/MM/yyyy")
                    };

                    string         jsonSolicitud = js.Serialize(solicitudCorreo);
                    byte[]         ByteCorreo    = Encoding.UTF8.GetBytes(jsonSolicitud);
                    HttpWebRequest request       = WebRequest.Create(ls_serviciocorreo) as HttpWebRequest;
                    request.Method        = "POST";
                    request.ContentLength = ByteCorreo.Length;
                    request.ContentType   = "application/json";
                    var rqt = request.GetRequestStream();

                    rqt.Write(ByteCorreo, 0, ByteCorreo.Length);
                    HttpWebResponse       rsp             = (HttpWebResponse)request.GetResponse();
                    StreamReader          reader          = new StreamReader(rsp.GetResponseStream());
                    string                tramaJson       = reader.ReadToEnd();
                    MensajeCorreoResponse respuestaCorreo = js.Deserialize <MensajeCorreoResponse>(tramaJson);

                    //Correo electrónico Cola
                    var ironMq = IronSharp.IronMQ.Client.New(new IronClientConfig {
                        ProjectId = WebConfigurationManager.AppSettings["IronProjectId"], Token = WebConfigurationManager.AppSettings["IronToken"], Host = "mq-aws-eu-west-1-1.iron.io", Scheme = "http", Port = 80
                    });

                    MensajeCorreoRequest cor = new MensajeCorreoRequest()
                    {
                        emisor       = "*****@*****.**",
                        clave        = "sitece$2019",
                        destinatario = apoderado.Correo,
                        asunto       = "Citación del Colegio Maristas",
                        mensaje      = "Sr(a) " + apoderado.Nombres + ", Ud está citado al colegio el día " + solicitud.FechaCita.ToString("dd/MM/yyyy")
                    };
                    QueueClient queue     = ironMq.Queue("mensajeCorreo");
                    string      messageId = queue.Post(cor);

                    //SMS Cola
                    if (apoderado.NroCelular != "")
                    {
                        MensajeTextoRequest men = new MensajeTextoRequest()
                        {
                            nroCelular = apoderado.NroCelular,
                            mensaje    = "Sr(a) " + apoderado.Nombres + ", Ud está citado al colegio el día " + solicitud.FechaCita.ToString("dd/MM/yyyy")
                        };
                        QueueClient queue2     = ironMq.Queue("mensajeTexto");
                        string      messageId2 = queue2.Post(men);
                    }
                }
                return("OK");
            }
            catch (FaultException <SolicitudServWS.ManejadorException> error)
            {
                throw new Exception("ERROR: " + error.Message + ", " + error.Detail.Descripcion);
            }
        }