前回は、Sieve言語を用いてemailに添付されたPDFドキュメントをKindleへ流し込むことに成功しました。
今回は、Evernoteの所定のノートブックに自動保存したり、おまけとしてTrelloのカードを自動で作成する方法を試します。
Evernoteへ流し込む
emailでEvernoteへノートを追加するには、Evernote転送用メールアドレスに転送すれば良いのでした。
詳しくは、以前の記事をどうぞ。
tsh.hatenablog.jp
それでは、Sieve言語でその記述をしていきます。
ここでは、Evernote上の「テスト」ノートブック上に送るようにSubject: を変更してから送り込んでみます。
#test2-1
require ["copy", "fileinto", "imap4flags", "editheader", "variables"];
if header :matches "Subject" "*"
{
set "subject" "${1}";
}
if header :contains "From" "example.jp"
{
setflag "\\Seen";
fileinto :copy "Trash";
deleteheader "Subject";
addheader :last "Subject" "${subject} @テスト";
redirect "example_to_evernote@m.evernote.com";
}
日本語 Subject: の動作確認
さて、ここで問題になってくるのがSubject:が「日本語」の場合の扱いです。この手のツールでは英語はきちんと処理できても日本語だと動きが怪しいものもあるので、動作確認してみましょう。
テスト用のemailを作成します。件名は日本語にしておきます。
このメールをSieve処理後、受信したメールのソースを確認してみます。
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101
Thunderbird/68.11.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 8bit
Subject: =?utf-8?b?5Lu25ZCN44GM5pel5pys6Kqe44Gu5aC05ZCI44Gu5YuV5L2c44OG44K544OIIEA=?=
=?utf-8?b?44OG44K544OI?=
日本語のSubject:の場合の動作テスト
関係してそうな部分を一部抜粋してみました。
Sieveで処理された日本語Subject:は、UTF-8で処理され、きちんとエンコーディングされているようです。
これで安心して日本語のSubject:やノートブック名を使えますね。
ノートブックを指定してEvernoteへ送り込む
それでは、実際にEvernoteへ送り込んでみましょう。
このようなemailを作成し、先程設定したアカウントに送信してみると、
無事、Evernoteの指定ノートブックにノートが作成されました。
添付ファイルもきちんと保存されていることも確認して下さい。
Trelloでカード作成
ここまでの設定で、
ができるようになりました。
ここまで自動でできれば、「PDFを読むタスク」も生成しておきたいところですよね。
ここでは、タスクリスト代わりに使っているTrelloに自動でカードを生成することを考えてみましょう。
メールでボードへ送信するための設定
まずは、Treeloの「メールでホードへ送信するための設定」を確認しておきます。
Subject:にはアサインしたいユーザーを追加しておき、今までの例のようにSieveを記述しておきます。
#test2-2
require ["copy", "fileinto", "imap4flags", "editheader", "variables"];
if header :matches "Subject" "*"
{
set "subject" "${1}";
}
if header :contains "From" "example.jp"
{
setflag "\\Seen";
fileinto :copy "Trash";
deleteheader "Subject";
addheader :last "Subject" "${subject} @exampleuser";
redirect "example+randomhash@boards.trello.com";
}
今までと、ほぼ同様の設定でできました。PDFを添付したemailを送信してみると、
このように、Trelloのボードにカードが追加されていて、ユーザーがアサインされていれば成功です。
まとめ
今回は、まずSuject:が日本語の場合の動作確認を行い、その後EvernoteにPDFファイルを送ることや、Trelloでカードを作成することをやってみました。
次回は、今までのまとめと、もう少し便利になるようにコードを改造していきます。お楽しみに。
前回までの記事はこちらです。