0

私は最近、Exchange Web サービスを使用して特定のメールボックスをリッスンし、そのメールボックスが新しいメッセージを受信すると、アプリケーションがまったく異なるユーザー セットに電子メールを送信する Windows サービスを作成しました。定期的に実行できるように、サブスクリプション サービスを通じてこれを行いました。

Lotus Domino/Notes との統合を除いて、このアプリケーションを再作成したいと考えています。私はいくつかの調査を行い、Lotus C API (おそらく)、Lotus Domino Designer (私が望むものとは思えない) および LotusScript (おそらく) を認識しています。

私の質問:

  1. これは Lotus Domino/Notes でも​​可能ですか?
  2. 上記のうち、さらに調査する必要があるのはどれですか? ない場合、何を使用するのが良いですか?

ありがとう

編集:

メッセージを受信すると、アプリケーションは受信した電子メールを解析して本文と受信者を抽出し、REST サービスを実行している別のサーバーに POST メッセージを送信することを忘れていました。

上記の機能が、最初に Exchange で単にルールを設定しなかった理由です。

4

4 に答える 4

3

特定のメールボックスをリッスンし、そのメールボックスが新しいメッセージを受信すると、アプリケーションはまったく異なる一連のユーザーに電子メールを送信します。

これを行うにはいくつかの方法があります。

1. メールファイル内のメールルール。

http://publib.boulder.ibm.com/infocenter/domhelp/v8r0/topic/com.ibm.notes.help.doc/DOC/H_USING_RULES_TO_FILTER_NEW_MESSAGES_STEPS.html

2. 「新着メールが届いたとき」に反応するエージェントをメールファイルに作成し、コーディングします (Java / LotusScript / SimpleAgent)。

http://publib.boulder.ibm.com/infocenter/domhelp/v8r0/topic/com.ibm.designer.domino.main.doc/H_WRITING_SCRIPTS_AND_FORMULAS_FOR_AGENTS.html

3. サーバーのメール ルール (これはまだ試したことがないので、ServerAdmin に問い合わせた方がよいでしょう)。

http://publib.boulder.ibm.com/infocenter/domhelp/v8r0/topic/com.ibm.help.domino.admin.doc/DOC/H_FILTERING_OUT_UNWANTED_EMAIL_OVER.html

メールボックスを監視する別のアプリケーションを用意するのは少しばかげているように思えますが、そのアプリケーションが Domino の外部で何か他のことを行う必要がある場合を除きます。

于 2012-05-02T16:36:32.010 に答える
2

Domino の LotusScript または Java エージェントを使用して、Web サービスを利用し、POST 要求 ( LotusScript/WindowsまたはJava ) を発行できます。

編集:

メールボックスを Exchange に残しておきたい/残しておく必要があると思います。そうでない場合は、他の提案のいずれかを使用してください。それらはすべて問題ありません。ただし、Exchange に残す必要がある場合は、C API よりもエージェント (LotusScript または Java) を作成して維持する方が簡単です。

于 2012-05-02T17:42:51.110 に答える
1

メールファイルが Notes/Domino 自体にあると最も簡単です。そうであれば、他のユーザーへのメッセージを生成するメール ファイルで新しいメールを受信したときに実行されるエージェントをセットアップするだけです。Notes 環境だけでそれを行うのは簡単なことではありません。

于 2012-05-02T20:27:48.147 に答える
0

他の回答に対する Q&A に基づいて、Notes C API を使用する必要があると思います。特に、API の Extension Manager 機能を使用する必要があります。これは、答えの1つで「インターセプト」という言葉を使用したことに部分的に基づいています。本当にそうするには、ドミノ サーバーのルーター メールボックス ファイルにイベントをフックする必要があります。しかし、実際には、これには 2 つの理由があります。

  • これは、メッセージが配信される前に傍受するために、ほとんどのコンプライアンスおよびセキュリティ製品が行う傾向があることです。

  • フックするルーター メールボックス ファイルの数は、ユーザーのメール ファイルの数より常に少なくなります。そのため、配信前にメッセージをキャッチするという技術的要件がない場合でも、多くのユーザー メールボックスの多くのエージェントに作業を分散させるか、または多くのユーザーに自分で配信をフックするよりも、集中化することをお勧めします。メールボックス。

このような場合の通常の手法には、イベントをフックしてメッセージを "保留" 状態にし、サーバー タスクとして実行されている別のコードに信号を送る小さなフットプリント DLL が含まれます。そうすれば、コードが必要な処理をすべて実行するまで、ルーターはメッセージの配信を処理しようとしません (REST サービスへの投稿時に応答を待たなければならない場合は、数サイクルかかる場合があります)。サーバー タスクも C API を使用して記述されています。(Java は、サーバー タスクの潜在的なオプションでもあります。IBM には Java で記述されたサーバー タスクがありますが、このためのインターフェイスが文書化され、3rd でサポートされているかどうかを明確に尋ねると、私は常に IBM 社員から空白の凝視を受けてきました。パーティー利用!

さて、ここで別の考えです。Exchange Web サービスを使用する Windows サービスが既にあり、その中に本当に必要なすべてのロジックが含まれています。なぜそのロジックを複製するのですか?Domino は独自の Web サービスの展開をサポートしているため、おそらくこれを行う正しい方法は、拡張機能マネージャーを使用してメッセージを「保留」にすることですが、サーバー タスクが処理を行う代わりに、Domino Web サービスを作成して渡すことになります。 Exchange と通信するために既に使用しているインターフェイスを厳密に模倣して、データを Windows サービスに戻します。私は Exchange Web サービスに詳しくなく、それを使用して Windows サービスを「リッスン」させる方法も知らないため、Domino の Web サービスの概念でこれが本当に実行可能かどうかはわかりません。多分あなたは「投票」しなければならないかもしれません 聞くのではなく。とにかく、それはただの考えです。

于 2012-05-02T23:19:25.533 に答える