4

私は Mule を初めて使用し、imap を介して GMail アカウントから送信された電子メールをプルし、それらを処理して作成したカスタム CRM に保存する php スクリプトにプッシュする Mule 構成を作成しようとしています。手始めに、受信トレイのメールをテキストファイルにダンプしようとしているだけで、そこから作業する予定です。

新しいメッセージがメールボックスで受信されると、Mule は新しいメッセージを取得して自動的に処理する必要があります。

これまでのところ、Mule の設定は次のようになっています。

<imaps:connector name="IMAP" mailboxFolder="INBOX" validateConnections="false" doc:name="IMAP" />
<flow name="flows1Flow1" doc:name="flows1Flow1">
    <imaps:inbound-endpoint host="imap.gmail.com" port="993" user="[[username]]%40gmail.com" password="[[password]]" connector-ref="IMAP" doc:name="IMAP"/>
   <file:outbound-endpoint path="D:\mailflow" outputPattern="msg_#[function:date].txt" doc:name="File"/>
</flow>

プログラムが実行され、次のポイントに到達します。

    INFO  2012-01-12 13:51:06,606 [main] org.mule.DefaultMuleContext: 
    **********************************************************************
    * Application: mailflow                                     *
    * OS encoding: Cp1252, Mule encoding: UTF-8                          *
    *                                                                    *
    * Agents Running:                                                    *
    *   JMX Agent                                                        *
    **********************************************************************
    INFO  2012-01-12 13:51:06,606 [main] org.mule.module.launcher.DeploymentService: 
    ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    + Started app 'mailflow'                          +
    ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

そして、何もせずに無期限にそこに座っているのですか?!

IMAPS を使用しているため、TLS クライアントと TLS キー ストアを imaps コネクタに追加する必要があることを示唆するドキュメントがあります。これらが何であるか、またはそれらをどのように使用するかはわかりませんが、ドキュメントは非常に専門的で理解しにくいものです。アプリはどの時点でもクラッシュしないため、そもそもそれが問題なのかどうかもわかりません。

GMail で imap フローの作成に成功した人はいますか? 助けてください?!

4

5 に答える 5

1

次のようにコネクタを作成するだけです。

<imaps:connector name="IMAP">
   <imaps:tls-client/>
   <imaps:tls-trust-store/>
</imaps:connector>

そして、それはうまくいくはずです。また、「@gmail」は不要なので、ユーザーの定義から削除します。

さよなら!

ドイツ人

于 2012-01-13T21:51:19.533 に答える
1

* を入力するだけで、エラーは表示されず、正常に動作します。

    <imaps:tls-client path="*" storePassword="*"/>
    <imaps:tls-trust-store path="*" storePassword="*"/>
于 2014-08-21T05:28:35.353 に答える
0

imap:connectorimap:inbound-endpointをに変更する必要がimaps:connectorありimaps:inbound-endpointます。

それは私にとってはうまくいっています。私は同じものを発行しましたが、この小さな変更で修正されました。

于 2013-12-06T10:32:14.657 に答える
0

削除されていない未読のメッセージのみがメッセージとしてディスパッチされます (RetrieveMessageReceiver.java:148 および 149)。

if (!messages[i].getFlags().contains(Flags.Flag.DELETED)
     && !messages[i].getFlags().contains(Flags.Flag.SEEN))

フォルダが大きい場合、未読メッセージを処理するまでに時間がかかります (場合によっては数時間)。

于 2014-03-21T09:30:04.480 に答える