スパムフィルタの対象アカウントNo.00576
ながは さん 04/06/29 11:57
 
ながはです。
ダヴィンチ様、スパムフィルタのマクロを便利に使わせて頂いており、
ありがとうございます。

早速ですが、現在の仕様ですと存在するすべてのフォルダを個々に検索
してホワイトリスト方式でスパムを抽出しているわけですが、対象とな
るアカウントを制限する方法はございますでしょうか?

現在鶴亀メールのバイパス機能を使って、いくつかのメールを一つのア
カウントに集約しており、アカウントはあるがメールが全く存在しない
バイパス元アカウントも複数存在しております。これはスパムフィルタ
を働かせなくてもよいアカウントとなります。

これらの働かせなくてもよいアカウントをスキップするように変更を加
えるのは可能でしょうか?

仕様として変更するのが困難ということであれば、マクロ中のどの部分
をどのように変更すればよいかということを教えて頂ければ・・・と思
います。(やってみようとしてファイルを開いてみましたが、全くわか
りませんでした)

宜しく御願いします。

[ ]
RE:00576 スパムフィルタの対象アカウントNo.00577
davinci さん 04/06/29 17:04
 

2004/06/29(火) 16:09:30

こんにちは、ながはさん

ダヴィンチ@ユーザーです。

ご無沙汰しております。
「スパムフィルタ」ご愛用いただき嬉しく存じます。
確か昨年の9月頃にもお問い合わせを頂きました。
メールは残こしておりますので。
それ以来のお問い合わせですね。

ご要望の趣旨は・・・

●「受信」フォルダにメールが存在しないアカウントは、
  スパムメールの処理対象外にしたい。

・・・という事でしょうか?

ご質問→受信フォルダに「メール」が一件もなければ、直ぐに処理は
終わるので、何も支障はないと思っておりましたが、そうではない?

ご確認1)→あらかじめ処理対象となる「アカウント」はわかっていますか?
それとも処理対象外となる「アカウント」はわかっていますか?
ながはさんだけが使われるのでしょうか?それとも多数の人(100人以上)?

ご確認2)→上記の条件によっては、対応方法が異なります。

早速検討致しました。
以下のようにマクロspamfilter.macを修正すれば、実現出来ます。
但し、マクロの文法をご理解頂いている事を前提にさせて頂きました。

1)処理対象外「アカウント」を指定する場合

// マルチアカウント処理
    ##ii = 0;
    while ( 1 ) {
        $$accnt = dllfuncstr( "Account", ##ii );

        if ( $$accnt == "" ) {
            break;
        }

        if ( $$accnt == "対象外アカウント名1" ) {
            ##ii = ##ii + 1;
            continue;
        }
        if ( $$accnt == "対象外アカウント名2" ) {
            ##ii = ##ii + 1;
            continue;
        }
        call SpamFilter $$parentspam, $$Spam, $$accnt;
        ##ii = ##ii + 1;
    }
   
    ※)上記のように”対象外アカウント名”のif文を追記すれば良いです。

2)処理対象「アカウント」を指定する場合

// マルチアカウント処理
    ##ii = 0;
    while ( 1 ) {
        $$accnt = dllfuncstr( "Account", ##ii );

        if ( $$accnt == "" ) {
            break;
        }

        if ( $$accnt == "対象アカウント名1" ) {
            call SpamFilter $$parentspam, $$Spam, $$accnt;
        }
        if ( $$accnt == "対象アカウント名2" ) {
            call SpamFilter $$parentspam, $$Spam, $$accnt;
        }

        ##ii = ##ii + 1;
    }

    ※)上記のように”対象アカウント名”のif文を追記すれば良いです。
    元々のcall SpamFilter $$parentspam, $$Spam, $$accnt;は削除します。

/*
** タイトル:『turukame.5:00576| スパムフィルタの対象アカウント』
** 発信日:2004年06月29日(火) 11:57:36
** 発信者:ながはさん
*/
>ながはです。
>ダヴィンチ様、スパムフィルタのマクロを便利に使わせて頂いており、
>ありがとうございます。
>
>早速ですが、現在の仕様ですと存在するすべてのフォルダを個々に検索
>してホワイトリスト方式でスパムを抽出しているわけですが、対象とな
>るアカウントを制限する方法はございますでしょうか?
>
>現在鶴亀メールのバイパス機能を使って、いくつかのメールを一つのア
>カウントに集約しており、アカウントはあるがメールが全く存在しない
>バイパス元アカウントも複数存在しております。これはスパムフィルタ
>を働かせなくてもよいアカウントとなります。
>
>これらの働かせなくてもよいアカウントをスキップするように変更を加
>えるのは可能でしょうか?
>
>仕様として変更するのが困難ということであれば、マクロ中のどの部分
>をどのように変更すればよいかということを教えて頂ければ・・・と思
>います。(やってみようとしてファイルを開いてみましたが、全くわか
>りませんでした)
>
>宜しく御願いします。

--
メーラー: TuruKame 3.60 (WinNT,500)
OS: Windows2000 SP4
※このコメントはサイトー企画とは無関係です。
※私の個人的な見解です。

[ ]
RE:00577 スパムフィルタの対象アカウントNo.00578
ながは さん 04/06/30 13:04
 
ながはです。
早速の回答ありがとうございます。

>●「受信」フォルダにメールが存在しないアカウントは、
>  スパムメールの処理対象外にしたい。

曖昧な表現ですみませんでした。具体的には
・処理対象アカウントは固定で事前にわかっている(3アカウント)
・使用者は当方のみ
という前提で、処理対象アカウントのみをスパムメール処理するのが
希望動作です。

>早速検討致しました。

素早い対応ありがとうございました。

>但し、マクロの文法をご理解頂いている事を前提にさせて頂きました。

理解してないんですが・・・頂いた下記マクロを元々あった内容と
置換して走らせてみたのですが、希望動作になりませんでした。

>1)処理対象外「アカウント」を指定する場合
>
>// マルチアカウント処理
>    ##ii = 0;
>    while ( 1 ) {
>        $$accnt = dllfuncstr( "Account", ##ii );
>
>        if ( $$accnt == "" ) {
>            break;
>        }
>
>        if ( $$accnt == "対象外アカウント名1" ) {
>            ##ii = ##ii + 1;
>            continue;
>        }
>        if ( $$accnt == "対象外アカウント名2" ) {
>            ##ii = ##ii + 1;
>            continue;
>        }
>        call SpamFilter $$parentspam, $$Spam, $$accnt;
>        ##ii = ##ii + 1;
>    }

これを実行すると、以前の通り上から順にすべてのアカウントに
フォーカスが移動しますが、スパムの移動がなされません。
当方は、
 // マルチアカウント処理
の行から
 EXIT_MAIN:
の行の手前一行までを、上記の内容に置換したのですが、(当然引用マ
ークは含まれず)どこか、間違っているところがあるのでしょうか?

以上

[ ]
RE:00578 スパムフィルタの対象アカウントNo.00579
davinci さん 04/07/01 00:16
 

2004/06/30(水) 23:57:40

こんにちは、ながはさん

ダヴィンチ@ユーザーです。

/*
** タイトル:『turukame.5:00578| RE 00577 スパムフィルタの対象アカウント』
** 発信日:2004年06月30日(水) 13:04:38
** 発信者:ながはさん
*/
>曖昧な表現ですみませんでした。具体的には
>・処理対象アカウントは固定で事前にわかっている(3アカウント)
>・使用者は当方のみ
>という前提で、処理対象アカウントのみをスパムメール処理するのが
>希望動作です。

ということであれば、以下の罫線に挟まれたソースを反映して頂くのが
良いです。
もちろん、「対象アカウント名○」に該当する所には、実際の
3つのアカウント名を記述して下さい。お間違いのないようにお気を付け
下さい。

2)処理対象「アカウント」を指定する場合
────
// マルチアカウント処理
    ##ii = 0;
    while ( 1 ) {
        $$accnt = dllfuncstr( "Account", ##ii );

        if ( $$accnt == "" ) {
            break;
        }

        if ( $$accnt == "対象アカウント名1" ) {
            call SpamFilter $$parentspam, $$Spam, $$accnt;
        }
        if ( $$accnt == "対象アカウント名2" ) {
            call SpamFilter $$parentspam, $$Spam, $$accnt;
        }
        if ( $$accnt == "対象アカウント名3" ) {
            call SpamFilter $$parentspam, $$Spam, $$accnt;
        }

        ##ii = ##ii + 1;
    }
   
EXIT_MAIN:
────

※)上記のように”対象アカウント名”のif文を追記すれば良いです。
元々のcall SpamFilter $$parentspam, $$Spam, $$accnt;は削除します。

もしそれでもうまく行かないようでしたら、下記のHPから私宛に
該当する3つのアカウント名をメールでご連絡下さい。
対応した【ながはバージョン】spamfilter_for_nagaha.macを送付させて
頂きます。(もちろん無料です。ってあえて言うほど大した事ではありません)

http://members.jcom.home.ne.jp/akira.oinoue/soft/SpamFilter/SpamFilter.htm

また除外アカウントや対象アカウントの指定が
もっと簡単に出来るように標準機能としての組み込みも検討中です。

その時は別途ご案内させて頂きます。

--
メーラー: TuruKame 3.62 (WinNT,500)
OS: Windows2000 SP4
※このコメントはサイトー企画とは無関係です。
※私の個人的な見解です。

[ ]
RE:00579 スパムフィルタの対象アカウントNo.00580
ながは さん 04/07/01 03:39
 
こんにちは、ダヴィンチさん。
ながはです。

>ということであれば、以下の罫線に挟まれたソースを反映して頂くのが
>良いです。

ということで、指示通り修正したところばっちりでした。
ホントにどうもありがとうございました。



[ ]
RE:00580 スパムフィルタの対象アカウントNo.00581
davinci さん 04/07/01 22:30
 

2004/07/01(木) 22:29:32

こんにちは、ながはさん

ダヴィンチ@ユーザーです。
良かったです。

/*
** タイトル:『turukame.5:00580| RE 00579 スパムフィルタの対象アカウン
ト』
** 発信日:2004年07月01日(木) 03:39:40
** 発信者:ながはさん
*/
>ということで、指示通り修正したところばっちりでした。
>ホントにどうもありがとうございました。

--
メーラー: TuruKame 3.62 (WinNT,500)
OS: Windows2000 SP4
※このコメントはサイトー企画とは無関係です。
※私の個人的な見解です。


[ ]