private void Init() { result.Succeed = true; result.Message = string.Format("{1}:第{0}组发送中...", index, DateTime.Now.ToString()); OnSend(result); client.Connect(server, port, SslSecurityMode.Implicit); client.Authenticate(userName, passWord); }
private void LoginSmtp() { Smtp.Authenticated += (sender, args) => OnAuthenticated(args.Message); var secureSocketOptions = SecureSocketOptions.Auto; switch (Account.IncomingEncryptionType) { case EncryptionType.StartTLS: secureSocketOptions = SecureSocketOptions.StartTlsWhenAvailable; break; case EncryptionType.SSL: secureSocketOptions = SecureSocketOptions.SslOnConnect; break; case EncryptionType.None: secureSocketOptions = SecureSocketOptions.None; break; } Log.Debug("Smtp.Connect({0}:{1}, {2})", Account.Server, Account.Port, Enum.GetName(typeof(SecureSocketOptions), secureSocketOptions)); Smtp.Connect(Account.SmtpServer, Account.SmtpPort, Account.OutcomingEncryptionType == EncryptionType.StartTLS || Account.OutcomingEncryptionType == EncryptionType.SSL ? SecureSocketOptions.Auto : SecureSocketOptions.None, CancelToken); if (!Account.SmtpAuth) { return; } if (string.IsNullOrEmpty(Account.RefreshToken)) { Smtp.AuthenticationMechanisms.Remove("XOAUTH2"); Smtp.Authenticate(Account.SmtpAccount, Account.SmtpPassword, CancelToken); } else { Smtp.Authenticate(Account.SmtpAccount, GetOauthAccessToken(Account.RefreshToken), CancelToken); } }