2017-05-10 10 views
0

私は、件名の基準を満たす共有メールボックスから電子メールを受け取ろうとしています。Mule 3.8 POP3コネクターサブジェクトに基づくフィルタ

ここに私の流れがあります。 電子メールを取得し、添付ファイルをペイロードとして設定し、後で使用する元のファイル名のリソースフォルダ内のファイルにそのペイロードを保存する必要があります。

<flow name="Retrieve_Email_and_Save_to_Attachments"> 
    <pop3:inbound-endpoint host="00.00.00.00" user="xxx" password="xxx" connector-ref="POP3" responseTimeout="10000" doc:name="POP3" metadata:id="50f9b85e-6ff6-4b39-9185-75fcd91076a1"/> 
    <message-property-filter pattern="subject = 'Test Mule File'" caseSensitive="false" scope="inbound" doc:name="Message Property"/> 
    <expression-transformer doc:name="Set Payload from Attachments"> 
     <return-argument evaluator="attachments" expression="*.*"/> 
    </expression-transformer> 
    <set-variable variableName="fileName" value="#[payload.keySet().iterator().next()]" doc:name="Set fileName"/> 
    <set-payload value="#[payload[flowVars.fileName].getContent()]" doc:name="Set Payload from first Attachment content"/> 
    <logger message="#['\n\n']Payload is: #['\n\n'+payload+'\n\n']" level="INFO" doc:name="Logger"/> 
    <file:outbound-endpoint path="src/main/resources/attachments/" outputPattern="#[flowVars.fileName]" connector-ref="File" responseTimeout="10000" mimeType="text/plain" doc:name="File"/> 
</flow> 

私が持っている問題は、POP3コネクタは、件名行の内容にかかわらず、メールボックス内のすべてのメールを拾って、サーバーから削除するだけの条件を満たしているものを処理しているということです。

フィルタ条件を満たすアイテムのみを削除する方法はありますか? フィルタ基準に合致するメールのみをピックアップしますか?

答えて

0

私はミュールには、ミュールの文書のようにその機能がないと思います。

https://docs.mulesoft.com/mule-user-guide/v/3.7/pop3-connector

あなたは選択によってこれを行うことができます。

pop3からSubject行を取得して選択操作を実行すると、必要なメール行だけを取得できます。

関連する問題