Raspberryからメールを返信する(その1)


ここで、Raspberryでメールを受信する方法を紹介しました。
そこで、今回からはRaspberryでメールを返信する方法を紹介します。
イメージを以下に示します。



@スマホや携帯から自宅宛にメールを送ります。
A自宅のRaspberryがメールを受信します。
Bメールのタイトルに応じて次のようなコマンドを実行し、その結果をRaspberryに取り込みます。
Raspberry本体の情報を取り込む
センサーからデータを取り込む
WEBカメラで写真を撮る
Cコマンドの実行結果をメールで返信します。
Dスマホや携帯でメールを受け取ります。

CDは msmtp と mutt というパッケージを使用します。
必要なパッケージをインストールします。
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install msmtp
$ sudo apt-get install mutt

次に .msmptrc (1文字目はドットです)を作成してください。

【プロバイダーのメールアカウントを使う場合】
account default
host XXXXX.XX.XX
port 25
user hoge@XXXXX.XX.XX
password hogehoge
from hoge@XXXXX.XX.XX
tls off
tls_starttls off
tls_certcheck off
auth on
logfile ./.msmtp.log

host
  プロバイダが指定したSMTPサーバのアドレス
user
  プロバイダが指定したSMTPアカウント(普通はPOPアカウントと同じ)
pass
  プロバイダが指定したSMTPパスワード(普通はPOPアカウントのパスワード)

※プロバイダーによってはメールの送信にSSLを利用する場合があります。
※プロバイダーからの指定に従ってください。
※なお、SSLには複数の手順があるようです。
※ODNではどうやってもメールが送れませんでした。
※どうしてもうまくメールが送れないときはgmailのアカウントを取りましょう(無料です)

【yahooのメールアドレスを使う場合】
こ のページで紹介されているまんまです。
account default
host smtp.mail.yahoo.co.jp
#port 587 → 注意
user hoge
password hogehoge
from hoge@yahoo.co.jp
tls on
tls_starttls off
tls_certcheck off
auth on
logfile ./.msmtp.log

【gmailのメールアドレスを使う場合】
このページで 紹介されているまんまです。
account default
host smtp.gmail.com
port 587
user hoge@gmail.com
password hogehoge
from hoge@gmail.com
tls on
tls_starttls on
tls_certcheck off
auth on
logfile ./.msmtp.log

.msmtprc を作ったら以下を実行してください。(ここではまりました)
$ chmod 0600 $HOME/.msmtprc

msmtp のテスト方法は以下の通りです。
$ msmtp 送信先のメールアドレス < /etc/hosts

無事にメールが届いたら次に .muttrc (1文字目はドットです)を作成してください。
set sendmail="/usr/bin/msmtp"

mutt のテスト方法は以下の通りです。
$ mutt -s お知らせ 送信先のメールアドレス < /etc/hostse

次回はRaspberry君からメールの自動返信を行います。

続く...