tshのblog

tshのblog

Kindle OASISにPDFドキュメントを流し込む(その4)

前回は、Sieve言語を用いてemailに添付されたPDFドキュメントをKindleへ流し込むことに成功しました。

 

 

 

tsh.hatenablog.jp

 

今回は、Evernoteの所定のノートブックに自動保存したり、おまけとしてTrelloのカードを自動で作成する方法を試します。

Dovecot: Pop3/Imap Servers for Enterprises and Isps

Dovecot: Pop3/Imap Servers for Enterprises and Isps

  • 作者:Heinlein, Peer
  • 発売日: 2016/07/29
  • メディア: ペーパーバック
 

 

 

 

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";
} 

 

evernote.com

日本語 Subject: の動作確認

さて、ここで問題になってくるのがSubject:が「日本語」の場合の扱いです。この手のツールでは英語はきちんと処理できても日本語だと動きが怪しいものもあるので、動作確認してみましょう。

 

テスト用のemailを作成します。件名は日本語にしておきます。

f:id:t_sh:20200804113008p:plain

日本語Subject:動作テスト

 

このメールを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へ送り込んでみましょう。

f:id:t_sh:20200804115400p:plain

ノートブックを指定してEvernoteへ送り込むテスト用のemailを作成

 

このようなemailを作成し、先程設定したアカウントに送信してみると、

f:id:t_sh:20200804115928p:plain

Evernote上の指定したノートブックに送り込まれた

無事、Evernoteの指定ノートブックにノートが作成されました。

添付ファイルもきちんと保存されていることも確認して下さい。

 

Trelloでカード作成

ここまでの設定で、

  1.  KindleへPDFファイルをKindle形式に変換して送り込むこと
  2.  Evernoteの所定のノートブックへPDFファイルを送り込むこと

ができるようになりました。

ここまで自動でできれば、「PDFを読むタスク」も生成しておきたいところですよね。

ここでは、タスクリスト代わりに使っているTrelloに自動でカードを生成することを考えてみましょう。

trello.com 

メールでボードへ送信するための設定

まずは、Treeloの「メールでホードへ送信するための設定」を確認しておきます。 

f:id:t_sh:20200804153709p:plain

Trello:このボードのメールアドレス

 

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を送信してみると、

f:id:t_sh:20200804162529p:plain

TrelloのTestボードINBOXリストにカードを追加

このように、Trelloのボードにカードが追加されていて、ユーザーがアサインされていれば成功です。


まとめ

今回は、まずSuject:が日本語の場合の動作確認を行い、その後EvernoteにPDFファイルを送ることや、Trelloでカードを作成することをやってみました。

次回は、今までのまとめと、もう少し便利になるようにコードを改造していきます。お楽しみに。

evernote.com

trello.com

 

前回までの記事はこちらです。

tsh.hatenablog.jp

tsh.hatenablog.jp

tsh.hatenablog.jp