3

次のコードを使用してパッケージを使用してRからメールを送信しようとしてsendmailRいますが、残念ながら失敗します:

## Set mail contents
from <- sprintf('<sendmailR@%s>', Sys.info()[4])
to <- '<slackline@gmail.com>'
subject <- 'Feeding Plots'
body <- list('Latest feeding graph', mime_part(feeding.plot,
                                               name = "feeding"))
## Set control parameters
control <- sendmail_options(verboseShow = TRUE, 
                            smtpServer ="smtp.gmail.com", 
                            smtpPort = 587, 
                            smtpSTARTTLS = '',
                            blocking = FALSE)
sendmail(from,
         to,
         subject,
         msg = body,
         control = control,
         headers)
<< 220 mx.google.com ESMTP xt1sm884721wjb.17 - gsmtp
>> HELO  kimura
<< 250 mx.google.com at your service
>> MAIL FROM:  <sendmailR@kimura>
<< 530 5.7.0 Must issue a STARTTLS command first. xt1sm884721wjb.17 - gsmtp
Error in wait_for(code) : 
  SMTP Error: 5.7.0 Must issue a STARTTLS command first. xt1sm884721wjb.17 - gsmtp

sendmailR のマニュアルSTARTTLSには、追加の引数を渡すことができることは示されていますが、構成方法については言及されていません。そのため、他のスレッド ( hereおよびheresmtpSTARTLS = '' ) で言及されている内容に基づいてオプションを含めました。私は引数をいじってみましたが、喜びはありませんでした。smtpSTARTTLSTRUE

ドキュメントまたはソリューションへのポインタは大歓迎です。

ありがとう

4

2 に答える 2

3

私が理解している限りでsendmailRは、SMTP サーバーへのログインはサポートされていないため、gmail は基本的に使用できません。適切なネットワーク内にいて、私が推測するネットワーク内でのみ到達可能なサーバー(つまり、認証を使用しないサーバー)をセットアップする場合にのみ、パッケージを使用できます。

代替手段はmailパッケージです(独自のアドレスは使用できません)。

sendmailR ドキュメントからの参照は次のとおりです。

SMTP AUTH は現在サポートされていません。

于 2014-01-29T11:28:33.260 に答える