スクリプトのお勉強 技術

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デバッグというやつです。。

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

終わりに

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

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

執筆者:

関連記事

PythonでAESを使用して暗号/復号する

1.つづき Pythonで、PKCS#12の公開鍵で暗号、秘密鍵で復号するプログラムの続きです。 今回はAESで暗号化/復号を行い、通信しながらRSA暗号/復号,AES暗号/復号を組み合わせたいと思い …

gradleのcommandLineでリダイレクト

gradleというビルドツールがあります。なぜかRPMを作成するのに使ってます。Ansibleも使ってるんですがね。。 それはともかく、ここの通りなのですが、例えばls -lRの出力を、プロジェクトデ …

(小ネタ) Reflex (Python) にてタブ形式のlinkを設定する

小ネタですが書いておきます。 Reflex とは、は割愛 前回に書いたので割愛します。 使い始めてみた 感想は後日、ということで 本題、タブ形式のlinkメニュー たいていのUIコンポーネントにはタブ …

小ネタ: Python のdataclass でNone or “”を使わないJSONデータを定義する

PythonをREST APIのクライアントとして作成する際、dataclassesを使用しようと思いました。型が見た瞬間分かるし、しっかりしているからです。 でも、そのREST API は&#822 …

CentOS7 + Django2.2 + uwsgi + nginx 連携方法

Djangoとnginx連携方法 以前はApache経由で連携しましたが、今回はnginxと連携する方法を記述します。 環境 設定した環境は以下です。 OS: CentOS7Python3.6.8 ( …

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