Details

      Description

      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

      <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

      <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>
      

        Activity

        Hide
        Marco Pochert added a comment -

        Die genannten Punkte entsprechen unseren Anforderungen

        Show
        Marco Pochert added a comment - Die genannten Punkte entsprechen unseren Anforderungen

          People

          • Assignee:
            Uwe Risse
            Reporter:
            Uwe Risse
            Approver:
            Alan Amos
          • Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Time Tracking

              Estimated:
              Original Estimate - 1 week
              1w
              Remaining:
              Remaining Estimate - 1 week
              1w
              Logged:
              Time Spent - Not Specified
              Not Specified