Email Communications

The Email Communications system settings links FlexDeploy to your email server to enable outbound event notifications, and optional inbound reply processing for approval responses.



PropertyDescription
SMTP Host Name

Host name of the SMTP server for event notifications.

SMTP Host Port

Host port of the SMTP server for event notifications.

SMTP UserSMTP Authentication user
SMTP PasswordThe SMTP User's password
SMTP From AddressAddress from which all outbound emails are sent
SMTP Enable STARTTLS

Enables the use of the STARTTLS command (if supported by the server) to switch the connection to a TLS-protected connection before issuing any login commands.

Reference - https://kunder.support/knowledgebase/400/SSL-vs-TLS-vs-STARTTLS.html

Enable Email Approval

Enable approvals by email reply. Requires IMAP host name/port and user/password

IMAP Host NameHost name of the IMAP server for inbound email processing.  Required if email approvals are enabled.
IMAP Host PortHost port of the IMAP server for inbound email processing.  Required if email approvals are enabled.
IMAP UserIMAP Authentication user. Defaults to the SMTP User.
IMAP PasswordThe IMAP User's Password. Defaults to the SMTP Password.
IMAP Enable STARTTLS

Enables the use of the STARTTLS command (if supported by the server) to switch the connection to a TLS-protected connection before issuing any login commands.

Reference - https://kunder.support/knowledgebase/400/SSL-vs-TLS-vs-STARTTLS.html

IMAP Properties

IMAP Server Properties. These are all the properties applied when connecting to your mail server. Depending on your mail server you may need to add more properties than the default below. With this field you have access to the follow variables to use in the IMAP Properties:

  • PROTOCOL - Set the value of protocol in your IMAP Properties and the value will replace all occurrences of ${{PROTOCOL}} in the IMAP Properties. Examples of protocol could be "imap" or "imaps".
  • IMAP_HOST_NAME - Use the ${{IMAP_HOST_NAME}} syntax and the plaintext will get replaced with the value of the above IMAP Host Name field at runtime.
  • IMAP_HOST_PORT - Use the ${{IMAP_HOST_PORT}} syntax and the plaintext will get replaced with the value of the above IMAP Host Port field at runtime.
  • IMAP_ENABLE_STARTTLS - Use the ${{IMAP_ENABLE_STARTTLS}} syntax and the plaintext will get replaced with the value of the above IMAP Enable STARTTLS field at runtime.
Default IMAP Properties
PROTOCOL=imap
mail.${{PROTOCOL}}.host=${{IMAP_HOST_NAME}}
mail.${{PROTOCOL}}.port=${{IMAP_HOST_PORT}}
mail.${{PROTOCOL}}.socketFactory.class=javax.net.ssl.SSLSocketFactory
mail.${{PROTOCOL}}.starttls.enable=${{IMAP_ENABLE_STARTTLS}}
mail.${{PROTOCOL}}.socketFactory.port=${{IMAP_HOST_PORT}}
#mail.${{PROTOCOL}}.socketFactory.fallback=false
#mail.${{PROTOCOL}}.ssl.enable=true
#mail.${{PROTOCOL}}.connectiontimeout=5000
#mail.${{PROTOCOL}}.timeout=5000
mail.${{PROTOCOL}}.ssl.protocols=TLSv1 TLSv1.1 TLSv1.2

IMAP TLS Versions Property

The value for the property mail.${{PROTOCOL}}.ssl.protocols is set by default in 5.5.0.5 and newer versions. Users of earlier are required to add line manually if using an older version.
Email Reply Folder

The email folder to process replies from. Defaults to INBOX if not specified.  All inbound emails will be sent to default inbox folder, but rules can generally be configured on mail servers to move them to other folders if desired.

Warning

All emails from the this folder will be deleted after processing.  Do not use an email account which is used for any other purpose since the emails will be deleted.

Approval Reply Address

Return address for approval replies. Defaults to the SMTP From Address.

Important

The emails are read and processed from this account, which must be a dedicated inbox and not used for any other purpose.   All emails from the Reply Email Folder in this account will be deleted after processing.  The connection is established to the mail server using the IMAP settings, and therefore, the IMAP user and the Approval Reply address must be linked.  It is possible to utilize an email group/distribution as the reply address, provided the IMAP User is a member of that group.

Email Reply Process IntervalFrequency in which FlexDeploy processes inbound messages from the Email .  Required if email approvals are enabled.  Default value is 5 minutes.
Email Reply Process Count

Number of email messages which are read and processed each interval.  The limit prevents Spam or DoS attacks from impacting the performance of the FlexDeploy server.  Required if email approvals are enabled.  Default value is 30 messages.

Attach LogsWhether or not to attach logs to the notification email for Request Completed and Request Failed events. If set to Never no logs will be attached (this is the default option). If set to Always all execution logs will be attached. If set to On Failure only the log(s) where the failure occurred will be attached. If only 1 log is present, just that log file will be attached it will be named "<InstanceName>_<StepNumber>_<StepName>_<EndPoint>(<PluginExecutionId>).log". If multiple are present they will be put into a zip folder and attached that way. The logs will be named "<StepNumber>_<StepName>_<EndPoint>(<PluginExecutionId>).log". The zip file will be named "<InstanceName>_logs.zip".

Once the configuration is complete, you can test the configuration by clicking on the Test Email Configuration button.

  • Send a test email to the logged in user's email address to validate the SMTP related settings.
  • Reads the inbox of the Approval Reply Address to validate the IMAP related settings.

Troubleshooting IMAP Connection

Ensure the following points are checked if your IMAP connection is not working.

  • Are you using TLS?
    • If TLS, make sure STARTTLS is disabled and IMAP Properties contains the line for "starttls.enable". If your TLS version used on IMAP server is not v1.0, then change to a different version with the imap property "mail.${{PROTOCOL}}.ssl.protocols=TLSv1.2"
  • Can you connect to IMAP server outside of FlexDeploy server? Running the below command will test for this:
    • openssl s_client -crlf -connect {YOUR_IMAP_HOST}:{YOUR_IMAP_PORT}
  • Can you connect to IMAP server within FlexDeploy server? Running the below command will test for this:
    • tag login {YOUR_ACCOUNT_USERNAME} {YOUR_ACCOUNT_PASSWORD}
  • Are you using a SSL port?
The following macros are not currently supported in the footer:
  • style