Exemple #1
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad ();
            // Perform any additional setup after loading the view, typically from a nib.

            conversationTable.WeakDelegate = this;
            conversationTable.WeakDataSource = this;

            account = MailAccount.LoadMailAccount ();

            if (account == null)
            {
                account = new MailAccount ();
                account.Address.Name = "Hans Meier 1";
                account.Address.Address = "*****@*****.**";
                account.ImapAddress = "imap.gmail.com";
                account.ImapPort = 993;
                account.Password = "******";
                account.SmtpAddress = "smtp.gmail.com";
                account.SmtpPort = 587;

                account.Save ();
            }

            // Set the "Me" account
            ContactDatabase.AddContact ("Ich", account.Address.Name, account.Address.Address);

            loader = new MessageLoader (account);
            loader.OnMessageReceived += (Message msg) => { HandleMessage(msg); };

            loader.Start();
            Console.WriteLine("Loader.IsActive: " + loader.IsActive);

            this.Title = account.Address.Address;
        }
Exemple #2
0
		public MessageLoader (MailAccount setAccountToCheck)
		{
			Account = setAccountToCheck;
			IsActive = false;
		}
Exemple #3
-1
		public async Task SendMessage(MailAccount fromAccount, string messageText, params string[] receipients)
		{
			MimeKit.MimeMessage message = new MimeKit.MimeMessage();
			message.From.Add(fromAccount.Address);
			for (int i = 0; i < receipients.Length; i++)
			{
				message.To.Add (new MailboxAddress(receipients [i], receipients [i]));
			}

			message.Subject = string.Format("[OpenFlow {0}]", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss zz"));
			message.Body = new MimeKit.TextPart("plain") {
				Text = messageText
			};

			SmtpClient client = new SmtpClient();
			await client.ConnectAsync(fromAccount.SmtpAddress, fromAccount.SmtpPort, SecureSocketOptions.StartTls);
			try
			{
				client.AuthenticationMechanisms.Remove ("XOAUTH2");
				await client.AuthenticateAsync(fromAccount.Address.Address, fromAccount.Password);
				await client.SendAsync(message);
			}
			finally
			{
				await client.DisconnectAsync(true);	
			}
		}