Пример #1
0
    public void Execute(EmailMessage message)
    {
        try
        {
            System.Text.Encoding.RegisterProvider(System.Text.CodePagesEncodingProvider.Instance);
            var msg = new AE.Net.Mail.MailMessage
            {
                Subject = message.Subject,
                Body    = message.Body,
                From    = new MailAddress(_emailSettings.FromEmail)
            };
            msg.To.Add(new MailAddress(message.ReceiverEmail));
            msg.ReplyTo.Add(msg.From); // Bounces without this!!
            var msgStr = new StringWriter();
            msg.Save(msgStr);

            // Context is a separate bit of code that provides OAuth context;
            // your construction of GmailService will be different from mine.
            _logger.LogDebug(msgStr.ToString());
            var result = _gmail.Users.Messages.Send(new Message
            {
                Raw = Base64UrlEncode(msgStr.ToString())
            }, "me").Execute();
        }
        catch (Exception ex)
        {
            _logger.LogDebug(ex.StackTrace);
        }
    }
Пример #2
0
        public static void SendGmail(string to, string subject, string body)
        {
            AuthorizeGmail();

            AE.Net.Mail.MailMessage message = new AE.Net.Mail.MailMessage();
            message.Subject = subject;
            message.Body    = body;
            message.To.Add(new MailAddress(to));
            message.From = new MailAddress(GetUserEmailAddress());

            StringWriter msgStr = new StringWriter();

            message.Save(msgStr);

            UsersResource.MessagesResource             messageResource = gmailService.Users.Messages;
            UsersResource.MessagesResource.SendRequest sendRequest     = messageResource.Send(new Google.Apis.Gmail.v1.Data.Message {
                Raw = Base64UrlEncode(msgStr.ToString())
            }, "me");
            sendRequest.Execute();
        }
Пример #3
0
    //Metodo para enviar mensajes
    public static void SendMessage(string userId, string destinatario, string mensaje, string asunto, GmailService s)
    {
        //Crear mensaje
        var msg = new AE.Net.Mail.MailMessage
        {
            Subject = asunto,
            Body    = mensaje,
            From    = new MailAddress(Usuario.GetProfile(s, userId).EmailAddress)
        };

        msg.To.Add(new MailAddress(destinatario));
        msg.ReplyTo.Add(msg.From);
        var msgStr = new StringWriter();

        msg.Save(msgStr);
        //Enviarlo
        var result = s.Users.Messages.Send(new Message
        {
            Raw = Base64UrlEncode(msgStr.ToString())
        }, "me").Execute();
    }
Пример #4
0
    public void SendIt()
    {
        var msg = new AE.Net.Mail.MailMessage {
            Subject = "Your Subject",
            Body    = "Hello, World, from Gmail API!",
            From    = new MailAddress("[you]@gmail.com")
        };

        msg.To.Add(new MailAddress("*****@*****.**"));
        msg.ReplyTo.Add(msg.From); // Bounces without this!!
        var msgStr = new StringWriter();

        msg.Save(msgStr);

        var gmail  = new GmailService(MyOwnGoogleOAuthInitializer);
        var result = gmail.Users.Messages.Send(new Message {
            Raw = Base64UrlEncode(msgStr.ToString())
        }, "me").Execute();

        Console.WriteLine("Message ID {0} sent.", result.Id);
    }
Пример #5
0
        public void AppendMail(MailMessage email, string mailbox = null)
        {
            IdlePause();

            string flags = String.Empty;
            var    body  = new StringBuilder();

            using (var txt = new System.IO.StringWriter(body))
                email.Save(txt);

            string size = body.Length.ToString();

            if (email.RawFlags.Length > 0)
            {
                flags = " (" + string.Join(" ", email.Flags) + ")";
            }

            if (mailbox == null)
            {
                CheckMailboxSelected();
            }
            mailbox = mailbox ?? _SelectedMailbox;

            var    tag      = GetTag();
            string command  = tag + "APPEND " + (mailbox ?? _SelectedMailbox).QuoteString() + flags + " {" + size + "}";
            string response = SendCommandGetResponse(command);

            if (response.StartsWith("+"))
            {
                SendCommand(body.ToString());
                var safety = 10;
                do
                {
                    response = GetResponse();
                    safety--;
                } while (safety > 0 && response.StartsWith("*"));
            }
            IdleResume();
        }
Пример #6
0
        public virtual void AppendMail(MailMessage email, string mailbox = null)
        {
            IdlePause();

            mailbox = ModifiedUtf7Encoding.Encode(mailbox);
            string flags = String.Empty;
            var body = new StringBuilder();
            using (var txt = new System.IO.StringWriter(body))
                email.Save(txt);

            string size = body.Length.ToString();
            if (email.RawFlags.Length > 0) {
                flags = " (" + string.Join(" ", email.Flags) + ")";
            }

            if (mailbox == null)
                CheckMailboxSelected();
            mailbox = mailbox ?? _SelectedMailbox;

            string command = GetTag() + "APPEND " + (mailbox ?? _SelectedMailbox).QuoteString() + flags + " {" + size + "}";
            string response = SendCommandGetResponse(command);
            if (response.StartsWith("+")) {
                response = SendCommandGetResponse(body.ToString());
            }
            IdleResume();
        }
Пример #7
0
        private MailMessage Reparse(MailMessage msg)
        {
            var sb = new StringBuilder();
            using (var w = new StringWriter(sb))
            {
                msg.Save(w);
            }
            // System.Diagnostics.Debug.WriteLine(sb.ToString());

            var parsedMessage = GetMessage(sb.ToString());
            return parsedMessage;
        }
Пример #8
0
 public virtual void AppendMail(MailMessage email, string mailbox = null)
 {
     var body = new StringBuilder();
     using (var txt = new System.IO.StringWriter(body))
         email.Save(txt);
     AppendMail(body.ToString(), email.RawFlags.Length > 0 ? email.Flags : (Flags?)null, mailbox);
 }