gmail 経由でメール送信できない


Python などのプログラムで、メール送信すると、認証エラーになります。
これは、gmail のセキュリティが強化されたためです。
プログラム側で対応するのが、正当な対処だと思いますが。
暫定的に、gmail 側のセキュリティを弱くします。

「安全性の低いアプリ」にて、「安全性の低いアプリのアクセス」を「オンにする」にします。
20160905_gmail_auth

参考
安全性の低いアプリがアカウントにアクセスするのを許可する
クライアントでユーザー名とパスワードが受け入れられない


Python gmail 経由でメール送信する


Python にて gmail サーバー経由でメール送信するプログラム

import smtplib
from email.mime.text import MIMEText

def sendmail(from_addr, to_addr, subject, body):
	GMAIL_HOST = "smtp.gmail.com"
	GMAIL_PORT = 465
	GMAIL_USER = "ユーザ名"
	GMAIL_PASS = "パスワード"
	msg = MIMEText(body)
	msg['Subject'] = subject
	msg['From'] = from_addr
	msg['To'] = to_addr
	smtp = smtplib.SMTP_SSL(GMAIL_HOST, GMAIL_PORT)
	smtp.login(GMAIL_USER, GMAIL_PASS)
	smtp.sendmail(from_addr, [to_addr], msg.as_string())
	smtp.close()

# main
SUBJECT = "タイトル"
BODY = "本文"
FROM = "送信元メールアドレス"
TO = "送信先メールアドレス"
sendmail(FROM, TO, SUBJECT, BODY)

参考
Gmailで簡単にメール送信


Python メール送信


Python でメール送信するプログラム

import smtplib
from email.mime.text import MIMEText

def sendmail(from_addr, to_addr, subject, body):
	msg = MIMEText(body)
	msg['Subject'] = subject
	msg['From'] = from_addr
	msg['To'] = to_addr
	smtp = smtplib.SMTP()
	smtp.connect()
	smtp.sendmail(from_addr, [to_addr], msg.as_string())
	smtp.close()

# main
SUBJECT = "タイトル"
BODY = "本文"
FROM = "送信元メールアドレス"
TO = "送信先メールアドレス"
sendmail(FROM, TO, SUBJECT, BODY)

ネットにある例だと、connect() がなかったが、必要みたいです。

参考
メール送信 – Python入門から応用までの学習サイト


Debian メール送信


Debian の STMPサーバーは exim4 です。
デフォルト設定では、メール送信は自サーバー内だけです。

外部にメール送信するように、設定変更します。

# dpkg-reconfigure exim4-config

20160905_exim4_config
「local delivery only; not on a network」になっているので、
「internet site; mail is sent and received directly using SMTP」に変更する。

確認

$ echo "本文" | mail -s "タイトル" hoge@example.com

参考
電子メールを使用するためのシステム設定
debianのexim4でメールを外部に送信できるようにする
exim4の設定方法


ビットマップ・フォント まとめ


マトリックス LED で表示するときに使えるビットマップ・フォントです。
日本語の漢字を綺麗に表示するためには、12×12 くらい必要です。

12×12 および 10×10
PixelMplus (JIS第1・第2水準の漢字)

8×8
美咲フォント (JIS第1・第2水準の漢字)

6×6
6×6フォント (平仮名、片仮名)

5×5
5×5フォント (英数字)

4×4
4×4フォント (英数字)


さくら IoT のケース


さくらの IoT Platform は、さくらインターネットが提供するIoTプラットフォームサービスです。
さくら IoT の通信ボードには、外付けのアンテナをつけますが、小型同軸コネクタを使っており、そのうちに壊れるのは思うくらいヤワな感じです。
そこで、さくらの通信ボードとアンテンを固定し、Arduino と一体にしたケースを、作成しました。
素材はアクリル板で、レーザー加工機を加工しました。
加工データは Github で公開しました。

20160901_sakura_iot_case_board
20160901_sakura_iot_case_front