スクリプトのお勉強 技術

SPAMチェック for OCN の開発

投稿日:2021年3月7日 更新日:

前回、Thunderbirdプラグインの概要を書いたので、今回は開発したプラグインについて書きます。

SPAMチェック for OCNとは

以下の機能を持ったThunderbirdのアドオン(プラグイン)を開発しました。

  • メールのヘッダを見て、「迷惑メール」マークを付与するプラグインです。
    • メールのヘッダ(X-CON-SPAM-CHECK)に100%となっている場合だけ「迷惑メール」マークがつきます。
    • よってメールプロバイダが、OCN以外は意味がありません。
    • ただし、Authentication-Results: spf=passとdkim=passになっていたら、「迷惑メール」マークを設定しません。
    • 送信ドメイン認証(SPF)で成功しているということは偽装していないからです。
  • メールを選択したらヘッダチェックを行い、上記条件に合致すれば「迷惑メール」マークを自動的に付与します。
  • オプションで以下の機能があります。
    • 新規「受信」したメールのチェックを行います。(デフォルトOFF)
    • フォルダ選択時に、フォルダ全体にメールチェックを行う(デフォルトOFF)

OCN専用ではありますが、私は、OCNとは何の関係もありません。OCNに尋ねても回答は返ってきませんのでそのつもりで。

ソース

ソースは

に置いてあります。

Thunderbird アドオンの詳細ページ

Thunderbird アドオンの詳細ページは以下です。

https://addons.thunderbird.net/ja/thunderbird/addon/spam-check-for-ocn/

苦労した点

苦労したのはWebExtensions版を開発する最初です。概念がよく分かってませんでした。でもやろうとして1日程度で把握できたので、比較的簡単だと思います。

後はAPIとかが使い方が分からないので、console.logを大量に挟んで、
どうなってるか確認しながら実装してます。いわゆるprintfデバッグというやつです。。

それ以外は、意外とスムーズに開発できました。

終わりに

とりあえず公開まで(強引に)たどり着きました。
単なる趣味で、頭を使わないプログラミングの方が進むのはなんだかな。。

-スクリプトのお勉強, 技術

執筆者:

関連記事

Python3/ある日付から日付までの月/日/時間ごとの時刻を算出する

小ネタです。 要するに、時刻A と 時刻B を指定したときの、各時間間隔での時刻取得したかったです。 当初はdateutilを使う方法でなく、自前で実装しようと思ったのですが、面倒なことに気づきました …

PythonでPKCS#12を使用して暗号/復号する

1. はじめに 仕事でVPN関係のシステム開発をすることになりました。まずは暗号機能の基本を思い出すため、Pythonで、PKCS#12の公開鍵で暗号、秘密鍵で復号するプログラムを作ってみようと思いま …

Python3 – VCR.py でネットワーク系テストを簡単に作成する

1. 始めに python3で実装すると、モックテストをしたくなります。モックを使って、比較的簡単にテストできるからです。 問題はネットワーク系テスト モックテストで問題になるのは、外部に依存するテス …

リモート実家帰りしてみる

このご時世、実家には直接帰れないけど、1月には一応実家帰り的な感じでリモート実家帰りをしようかと思いました。 リモートは大変。。 一応実家には自分で設置したインターネットや無線LANがあるので、Zoo …

言語別ログイン機能パスワード保存処理方針

ちょっと前に、ログイン機能を作成した際、パスワードを暗号化するか、という議論を目にしたことがありました。 昔だと、「パスワードを暗号化しない」方で実装していましたが、最近はセキュリティが当たり前になっ …

    google オプトアウト Click here to opt-out.