Я хочу использовать пакет {mailR}
для отправки уведомлений по электронной почте с помощью проверки подлинности. Этот пакет защищен {rJava}
и использует возможности Java.
Я зарегистрировал учетную запись Outlook.com.
Здесь код:
library(mailR)
email <- send.mail(
from="(account-name)@outlook.com",
to="(my-account)@outlook.com",
subject="Test message from server",
body="Hello, this is a test message.",
smtp=list(host.name="smtp-mail.outlook.com",port=25,
user.name="(account-name)@outlook.com",passwd="(account-password)",
ssl = TRUE),
authenticate=TRUE,
send=TRUE
)
Я прочитал http://windows.microsoft.com/en-us/windows/outlook/send-receive-from-app и пробовал все возможные имена хостов (smtp.live.com, smtp.outlook.com, smtp-mail. outlook.com) и портов (25, 587), но все это приводит к следующей ошибке:
Error in.jcall("RJavaTools", "Ljava/lang/Object;", "invokeMethod", cl,: org.apache.commons.mail.EmailException: Sending the email to the following server failed: smtp-mail.outlook.com:465
В чем проблема? Есть ли решение для отправки электронной почты с проверкой подлинности в R?
Попробуйте приведенный ниже код (был протестирован другими пользователями Outlook):
send.mail(from = from,
to = to,
subject = subject,
body = msg,
authenticate = TRUE,
smtp = list(host.name = "smtp.office365.com", port = 587,
user.name = "[email protected]", passwd = "xxx", tls = TRUE))