Mail Poller

Overview

This version is for Appian 22.3 and above. Cloud customers on a lower version of Appian that want to install this plugin should open a support case. Self-managed customers can find the latest jar for Appian 22.2 and lower version by downloading from the app market.

Enhancement to the plug-in to enable the selection of whether or not to include the email attachments as part of the EML document. Previously, the plug-in would create an EML document with the attachments stripped out. Our client needs to preserve the original e-mail as it was sent (for auditing purposes), so the EML must include the attachments as part of it. This update extends the functionality to allow the user to select whether they want an EML with the attachments removed (original functionality), an EML with attachments included, or both (2 EMLS of original email - one without the attachments included and one with the attachments included). Any e-mail attachments will continue to be saved separately. 

Key Features & Functionality

Takes all unread email from a mailbox and adds entries directly to a database table.The original email is saved as an EML based on three attachment type options

  1. EML with attachments removed
  2. EML with attachments included
  3. Both (2 EMLs of original email) - EML with attachments removed and EML with attachments included

Each email attachment is saved as its own document. The database tables store the Appian document ids, email recipients, subject and body (text and HTML)

Anonymous
Parents

  • Hello Mike,

    i'm trying to use your plugin but, even trying different configuration I can't succeed in my purpose Sweat smile
    I'm already using EWS Mail Poller To DB correctly but it is limited to Exchange account and your plugin is way more flexible.
    The error I'm receiving is "Read Timeout".
    I've configured a third party authentication with username and password keys, verified host configuration from mail provider and, despite that it doesn't work.
    Tomcat stdout reports:

    [Appian Work Item - 240029 - execution01 : UnattendedJavaActivityRequest] ERROR com.appiancorp.ps.mail.MailPollerSmartService - Error during mail polling
    javax.mail.MessagingException: Read timed out;
      nested exception is:
    	java.net.SocketTimeoutException: Read timed out
    	at com.sun.mail.imap.IMAPStore.protocolConnect(IMAPStore.java:670)
    	at javax.mail.Service.connect(Service.java:295)
    	at javax.mail.Service.connect(Service.java:176)
    	at javax.mail.Service.connect(Service.java:125)
    	at com.appiancorp.ps.mail.MailPoller.<init>(MailPoller.java:92)
    	at com.appiancorp.ps.mail.MailPollerSmartService.run(MailPollerSmartService.java:148)
    	at com.appiancorp.process.runtime.framework.DefaultActivityExecutor$1.lambda$call$0(DefaultActivityExecutor.java:131)
    	at com.appiancorp.plugins.PluginUsageLogger.runWithPluginInformation(PluginUsageLogger.java:52)
    	at com.appiancorp.process.runtime.framework.DefaultActivityExecutor$1.call(DefaultActivityExecutor.java:131)
    	at com.appiancorp.process.runtime.framework.DefaultActivityExecutor$1.call(DefaultActivityExecutor.java:125)
    	at com.appiancorp.common.ContextClassLoaderSwitcher.runInContext(ContextClassLoaderSwitcher.java:25)
    	at com.appiancorp.process.runtime.framework.DefaultActivityExecutor.execute(DefaultActivityExecutor.java:125)
    	at com.appiancorp.process.engine.UnattendedJavaActivityRequest.execute(UnattendedJavaActivityRequest.java:83)
    	at com.appiancorp.process.engine.UnattendedJavaActivityRequest.execute0(UnattendedJavaActivityRequest.java:55)
    	at com.appiancorp.process.engine.ContinuationRequest.executeOuter(ContinuationRequest.java:71)
    	at com.appiancorp.process.engine.ContinuationRequest.execute(ContinuationRequest.java:100)
    	at com.appiancorp.process.workpoller.UnattendedRequestHandlerBean.onMessage(UnattendedRequestHandlerBean.java:36)
    	at com.appiancorp.process.workpoller.WorkItem.run(WorkItem.java:84)
    	at org.springframework.jca.work.SimpleTaskWorkManager$DelegatingWorkAdapter.run(SimpleTaskWorkManager.java:239)
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    	at java.lang.Thread.run(Thread.java:748)
    Caused by: java.net.SocketTimeoutException: Read timed out
    	at java.net.SocketInputStream.socketRead0(Native Method)
    	at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
    	at java.net.SocketInputStream.read(SocketInputStream.java:171)
    	at java.net.SocketInputStream.read(SocketInputStream.java:141)
    	at com.sun.mail.util.TraceInputStream.read(TraceInputStream.java:124)
    	at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
    	at java.io.BufferedInputStream.read(BufferedInputStream.java:265)
    	at com.sun.mail.iap.ResponseInputStream.readResponse(ResponseInputStream.java:95)
    	at com.sun.mail.iap.Response.<init>(Response.java:95)
    	at com.sun.mail.imap.protocol.IMAPResponse.<init>(IMAPResponse.java:60)
    	at com.sun.mail.imap.protocol.IMAPProtocol.readResponse(IMAPProtocol.java:286)
    	at com.sun.mail.iap.Protocol.<init>(Protocol.java:123)
    	at com.sun.mail.imap.protocol.IMAPProtocol.<init>(IMAPProtocol.java:115)
    	at com.sun.mail.imap.IMAPStore.newIMAPProtocol(IMAPStore.java:685)
    	at com.sun.mail.imap.IMAPStore.protocolConnect(IMAPStore.java:636)
    what am I doing wrong?
    Sorry for bothering you and all people in this community but i don't know what I have to do.

    Thanks in advance for your patience and your time
    Kind Regards

Comment

  • Hello Mike,

    i'm trying to use your plugin but, even trying different configuration I can't succeed in my purpose Sweat smile
    I'm already using EWS Mail Poller To DB correctly but it is limited to Exchange account and your plugin is way more flexible.
    The error I'm receiving is "Read Timeout".
    I've configured a third party authentication with username and password keys, verified host configuration from mail provider and, despite that it doesn't work.
    Tomcat stdout reports:

    [Appian Work Item - 240029 - execution01 : UnattendedJavaActivityRequest] ERROR com.appiancorp.ps.mail.MailPollerSmartService - Error during mail polling
    javax.mail.MessagingException: Read timed out;
      nested exception is:
    	java.net.SocketTimeoutException: Read timed out
    	at com.sun.mail.imap.IMAPStore.protocolConnect(IMAPStore.java:670)
    	at javax.mail.Service.connect(Service.java:295)
    	at javax.mail.Service.connect(Service.java:176)
    	at javax.mail.Service.connect(Service.java:125)
    	at com.appiancorp.ps.mail.MailPoller.<init>(MailPoller.java:92)
    	at com.appiancorp.ps.mail.MailPollerSmartService.run(MailPollerSmartService.java:148)
    	at com.appiancorp.process.runtime.framework.DefaultActivityExecutor$1.lambda$call$0(DefaultActivityExecutor.java:131)
    	at com.appiancorp.plugins.PluginUsageLogger.runWithPluginInformation(PluginUsageLogger.java:52)
    	at com.appiancorp.process.runtime.framework.DefaultActivityExecutor$1.call(DefaultActivityExecutor.java:131)
    	at com.appiancorp.process.runtime.framework.DefaultActivityExecutor$1.call(DefaultActivityExecutor.java:125)
    	at com.appiancorp.common.ContextClassLoaderSwitcher.runInContext(ContextClassLoaderSwitcher.java:25)
    	at com.appiancorp.process.runtime.framework.DefaultActivityExecutor.execute(DefaultActivityExecutor.java:125)
    	at com.appiancorp.process.engine.UnattendedJavaActivityRequest.execute(UnattendedJavaActivityRequest.java:83)
    	at com.appiancorp.process.engine.UnattendedJavaActivityRequest.execute0(UnattendedJavaActivityRequest.java:55)
    	at com.appiancorp.process.engine.ContinuationRequest.executeOuter(ContinuationRequest.java:71)
    	at com.appiancorp.process.engine.ContinuationRequest.execute(ContinuationRequest.java:100)
    	at com.appiancorp.process.workpoller.UnattendedRequestHandlerBean.onMessage(UnattendedRequestHandlerBean.java:36)
    	at com.appiancorp.process.workpoller.WorkItem.run(WorkItem.java:84)
    	at org.springframework.jca.work.SimpleTaskWorkManager$DelegatingWorkAdapter.run(SimpleTaskWorkManager.java:239)
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    	at java.lang.Thread.run(Thread.java:748)
    Caused by: java.net.SocketTimeoutException: Read timed out
    	at java.net.SocketInputStream.socketRead0(Native Method)
    	at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
    	at java.net.SocketInputStream.read(SocketInputStream.java:171)
    	at java.net.SocketInputStream.read(SocketInputStream.java:141)
    	at com.sun.mail.util.TraceInputStream.read(TraceInputStream.java:124)
    	at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
    	at java.io.BufferedInputStream.read(BufferedInputStream.java:265)
    	at com.sun.mail.iap.ResponseInputStream.readResponse(ResponseInputStream.java:95)
    	at com.sun.mail.iap.Response.<init>(Response.java:95)
    	at com.sun.mail.imap.protocol.IMAPResponse.<init>(IMAPResponse.java:60)
    	at com.sun.mail.imap.protocol.IMAPProtocol.readResponse(IMAPProtocol.java:286)
    	at com.sun.mail.iap.Protocol.<init>(Protocol.java:123)
    	at com.sun.mail.imap.protocol.IMAPProtocol.<init>(IMAPProtocol.java:115)
    	at com.sun.mail.imap.IMAPStore.newIMAPProtocol(IMAPStore.java:685)
    	at com.sun.mail.imap.IMAPStore.protocolConnect(IMAPStore.java:636)
    what am I doing wrong?
    Sorry for bothering you and all people in this community but i don't know what I have to do.

    Thanks in advance for your patience and your time
    Kind Regards

Children