You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

 

FEATURE AVAILABILITY STARTING FROM RELEASE 1.12.5

E-mail Processing Job

This Job is to carry out the following:

1. Process attachments

An e-mail 'incoming basket' is to be polled. Only unread e-mails will be processed.

When an e-mail with an attachment is found:

  • The attachment is moved to a directory
    • parameters
      • copyAttachmentsToFile=true
      • directory name
  • This directory can also be monitored with, for example, a File Order Source

2. Write e-mails to files

An e-mail 'incoming basket' is to be polled. Only unread mails will be processed.

When an e-mail is found:

  • The mail is marked as read
  • The mail is written as a file to a directory
    • parameters
      • copyMail2File=true
      • directory name
  • An optional order can be generated
    • parameters:
      • createOrder=true
      • the job chain name
    • order parameters:
      • the file name
      • the subject of the mail
      • the sender
      • the mail received date
  • The mail is marked as processed
    • alternative markings
      • parameters: afterProcessEmail: move, delete, markAsRead
      • the mail is marked as "read"
      • the mail is moved to another folder
        • parameter: the folder name
      • The mail is deleted

Example Job

Example Job
<job  title="Process email incoming box" order="no" name="ProcessMail">

    <description >
        <include  file="jobs/SOSMailProcessInbox.xml"/>
    </description>

    <params >
        <param  name="mail_host" value="mail.sos-berlin.com"/>
        <param  name="mail_port" value="993"/>
        <param  name="mail_user" value="myUser"/>
        <param  name="mail_password" value="********Ü"/>
        <param  name="mail_ssl" value="true"/>
        <param  name="mail_server_timeout" value="30000"/>
        <param  name="mail_subject_filter" value="string2search"/>
        <param  name="copy_mail_to_file" value="true"/>
        <param  name="mail_dump_dir" value="c:/temp/mails"/>
        <param  name="process_attachments" value="true"/>
        <param  name="attachement_directory_name" value="c:/temp/attachment"/>
        <param  name="max_mails_to_process" value="20000"/>
        <param  name="after_process_email" value="copy"/>
        <param  name="after_process_email_directory_name" value="email:INBOX/test"/>
        <param  name="mail_server_type" value="IMAP"/>
        <param  name="attachment_file_name_pattern" value="\${subject}_\${filename}"/>
   </params>

    <script  language="java" java_class="com.sos.jitl.mailprocessor.SOSMailProcessInboxJSAdapterClass"/>

    <run_time />
</job>

Provision of E-mails as JavaScript Objects

SOSEmailObject email = getEmailObject(var filename) -

String email.getSubject()
String email.getAttachmentFilename
String email.getReceipient
String email.getBody()
String email.getReturnAddress
String email.get....

Here is an example job

Example Job
<job  enabled="yes" stop_on_error="no">
    <script  language="java:javascript">
        <![CDATA[
function spooler_process(){

var message = com.sos.jitl.mailprocessor.SOSFileToMailProcessor.getMessage("C:/temp/mails/10f7-5b35e680-71-456fb280@195509842");
spooler_log.info("Subject: " + message.getSubject());
spooler_log.info(message.getPlainTextBody());
spooler_log.info("To:" + message.getFirstToRecipient());
spooler_log.info("To:" +message.getToRecipient(0));
spooler_log.info("To:" +message.getRecipient("TO", 0));
spooler_log.info("CC:" + message.getFirstCCRecipient());
spooler_log.info("BCC:" + message.getFirstBCCRecipient());
spooler_log.info("From Address:" + message.getFromAddress());
spooler_log.info("From Name:" + message.getFromName());
spooler_log.info("Content-Type:" + message.getHeaderValue("content-type"));
spooler_log.info("Message Id: " + message.getMessageId());
spooler_log.info("Date:" + message.getSentDate().toLocaleString());
spooler_log.info("Attachment Count:" + message.getSosMailAttachmentsCount());
spooler_log.info(message.getSosMailAttachments().get(0).getContentType());
	return false;
}
        ]]>
    </script>
    <run_time />
</job>

The ...

  • No labels