件名に「Unprovisioned」というテキストが見つかった場合にメールを転送する簡単な procmail レシピの作成に着手しました。
:0:
* ^Subject:.*Unprovisioned.*
! me@test.com
残念ながら、メール サーバーから届くメール メッセージの件名フィールドは、MIME エンコードされた単語の構文でした。
形式は次のとおりです: "=?charset?encoding?encoded text?=".
Subject: =?UTF-8?B?QURWSVNPUlk6IEJNRFMgMTg0NSwgTkVXIFlPUksgLSBVbnByb3Zpc2lvbmVkIENvbm4gQQ==?=
=?UTF-8?B?bGVydA==?=
上記の件名は utf-8 charset、テキストが 2 行に折りたたまれた base64 エンコーディングです。procmail フィルタを適用できるように、これを解析して文字列形式に変換するメカニズム/スクリプト/ユーティリティがあるかどうか疑問に思っていました。もちろん、これを解析して必要な検証を実行するための perl スクリプトを作成することはできますが、可能であれば回避するようにしています。