Exemple #1
0
        public void Authenticate()
        {
            try
            {
                if (!Client.IsConnected)
                {
                    Console.WriteLine("(Re-)connecting...");
                    Client.Connect(SERVER_URL, PORT);
                    Console.WriteLine("Connected.");
                }
            }
            catch (Exception)
            {
                Console.WriteLine("The application could not connect to the mail server. Check your internet connection.");
                Environment.Exit(2);
            }

            try
            {
                if (!Client.IsAuthenticated)
                {
                    Console.WriteLine("(Re-)authenticating...");
                    Client.Authenticate(Username, Password);
                    Console.WriteLine("Authenticated.");
                }
            }
            catch (Exception)
            {
                Console.WriteLine("The application could not be authenticated. Check if you have set the correct credentials.");
                Environment.Exit(3);
            }
        }
        public MailService()
        {
            var mail_host     = ConfigurationManager.AppSettings["mail_host"];
            var mail_port     = int.Parse(ConfigurationManager.AppSettings["mail_port"]);
            var mail_usessl   = bool.Parse(ConfigurationManager.AppSettings["mail_usessl"]);
            var mail_user     = ConfigurationManager.AppSettings["mail_user"];
            var mail_password = ConfigurationManager.AppSettings["mail_password"];

            _clientImap = new ImapClient(new ProtocolLogger("maillog.txt"));
            _clientImap.ServerCertificateValidationCallback = (s, c, h, e) => true;
            _clientImap.Connect(mail_host, mail_port, mail_usessl);
            _clientImap.AuthenticationMechanisms.Remove("XOAUTH2");
            _clientImap.Authenticate(mail_user, mail_password);
        }