2016年1月20日水曜日

Becky! で Cygwin 版 bsfilter を使用する

有限会社リムアーツ社製のメールクライアント Becky! Internet Mail は、歴史ある使い勝手の良いソフトウェアなのだが、残念ながら spam (迷惑メール)対策機能が標準搭載されていない。

そこで、 spam フィルタリングツールと併用する。 今回は spam フィルタリングツールとして Cygwin 版の bsfilter を使用する。

必要なもの

BkBsfilWrapper プラグインのインストール

Becky! から bsfilter を使用する場合、 BkBsfilWrapper プラグインのインストールが必要となる。 このプラグインは <http://www.koutou-software.net/junk/use-bsfilter-becky-plugin.html> から入手することができる。

2016年1月20日現在の最新版は、2015年8月28日にリリースされた ver.0.0.0.51 。

今回はインストーラが同梱されていないほうの zip ファイル(BkBsfilWrapper.zip)を入手し、 zip ファイルに含まれるプラグイン(BkBsfilWrapper.dll)を Becky! のデータフォルダ以下の Plugins フォルダ以下にコピーする形でインストールした。

例えば、 Becky! のデータフォルダを C:\home\fudan10u\.becky\ としているわたしの場合、プラグインは C:\home\fudan10u\.becky\Plugins\ 以下にコピーする。

bsfilter へシンボリックリンクを張る

BkBsfilWrapper では、 bsfilter が C:\home\fudan10u\.becky\Plugins\BkBsfilWrapper\ 以下にあることが想定されているようなので、念のため、 Cygwin 側で

$ ln -s /usr/bin/bsfilter /cygdrive/c/home/fudan10u/.becky/Plugins/BkBsfilWrapper/bsfilter

を実行して、シンボリックリンクを張っておく。 Windows のコマンドプロンプトから mklink コマンドを使用することでもシンボリックリンクを張ることができると思うが、そちらの方法は試したことがないので割愛。

BkBsfilWrapper の設定

BkBsfilWrapper の設定で [bsfilter スクリプトを利用する(E)] ようにした上で、 [ruby.exe のパス:] に Cygwin の ruby までのフルパス E:\Cygwin\bin\ruby.exe を指定しておく。

他の設定については、基本的にはデフォルトのまま。

変更したのは、

  • コンテキストメニューの表示位置を最下部から最上部に変更
  • spam 判定されたものは既読扱いにするようにした

ことくらい。 それ以外はデフォルトのまま使用している。

使い方

インストール直後の状態では、ほとんどマトモに判定されないはずなので、ある程度、学習させる必要がある。

学習対象のメールを選択し、右クリックで表示されるコンテキストメニューの [bsfilter (BkBsfilWrapper)] 以下から、実行したい bsfilter のコマンドを選択・実行する。

[--add-spam + --update]
選択したメールを spam として学習し、確率データベースを更新する。
[--add-clean + --update]
選択したメールを clean として学習し、確率データベースを更新する。
[--sub-spam + --update]
選択したメールを spam ではないとして学習し、確率データベースを更新する。
[--sub-clean + --update]
選択したメールを clean ではないとして学習し、確率データベースを更新する。

ある程度、学習させたら、あとはメールを受信するだけ。 最初に学習させた量によって異なるが、最初のうちは誤判定が続出するはず。 誤検出したものがあれば、その都度、正しい区分を学習させていく。

詳細な BkBsfilWrapper の使い方は、 BkBsfilWrapper.zip に同梱されている NOTE.txt を。

0 件のコメント:

コメントを投稿