如何通过Outlook从R发送邮件?
有人告诉我使用sendmailR
软件包,但我不知道如何指定certain control settings(例如端口,用户名和密码)。我也被重定向到this post,但没有帮助。
我切换到mailR
软件包。我可以从其他服务器(例如smtp.gmail.com
)发送邮件,但是我不知道Outlook服务器的详细信息。使用mailR
通过Outlook发送邮件需要什么协议,服务器和端口详细信息?
答案 0 :(得分:1)
这花了我一段时间才能弄清楚。试试这个:
send.mail(from = "username@custom.org",
to = c("recipient1@custom.org", "recipient2@custom.org"),
subject = "Title",
body = "Hello from R.",
authenticate = TRUE,
smtp = list(host.name = "smtp.office365.com",
port = 587,
user.name = "username@custom.org",
passwd = "Pa55w0rd",
tls = TRUE))
一个常见的误解是端口是25或447。我相信端口25只能在authenticate = FALSE
时使用。
许多消息来源声称正确的服务器是smtp-mail.outlook.com
。如果代码不起作用,也许您可以尝试这样做。此外,请勿使用ssl = TRUE
。它必须是tls = TRUE
。
对Rahul Premraj对this archived 2014 question的回答大声疾呼。
答案 1 :(得分:1)
或者您可以使用DescTools::SendOutlookMail()
library(DescTools)
SendOutlookMail(to = c("me@microsoft.com", "you@rstudio.com"),
subject = "Some Info",
body = "Hi all\r Find the files attached\r Regards, Dude",
attachment = c("C:/temp/fileA.txt",
"C:/temp/fileB.txt"))