はじめに
行き帰りのぶちぶち電波が途切れる地下鉄でイライラしながら TL をスクロールしまくって遡るのが面倒だったので作ってみました。
API 1.1 時代を見据えて、リストのツイートを取得する API を使わずに Streaming API 経由でデータを取得しているので、 API 消費を気にせず使うことができます(リストのメンバ取得の API 回数は減りますが...)。
ダウンロードと実行
- ダウンロード: hecomi/node-tw2email · GitHub
詳細は上記の README に書いてあります。
前回のエントリ()では、MongoDB にホームタイムラインを保存することをしましたので、これを利用しています。
解説
処理の流れとしては、
- ホームタイムラインを Streaming API 経由で逐次 DB へ保存
- node-cron で以下の処理を定期的に実行
- リストのメンバの ID を取得
- DB からその ID に該当するつぶやきをとってくる
- template.html をひな形にして ejs を利用して HTML メールの body を作成
- node-mail で gmail 経由で指定したアドレスへメール送信
という感じになっています。
おわりに
TL 面倒いから追わない、みたいなことはなくなった気がしますが、HTML メールでは JavaScript が動かずファボれないので正直うんこ感あります。。