Enterprise Mail Handler for Jira Cloud (abbreviated to JEMH Cloud or JEMHC) is a next generation Software as a Service (SaaS) offering that provides extended email integration with Atlassian's Jira Cloud. It is the cloud based version of the established Enterprise Mail Handler for Jira Server. Like its counterpart, it's primary purpose is to:
Integrate external users and external systems
Automate the routing of messages to Jira projects
Enable remote creation and manipulation of issues through email
Allow complete control of outbound notifications (email or otherwise)
Email user support
Map remote users (by sender address) to specific Jira projects/assignees automatically.
JEMH Cloud can be used to route remote server application exceptions to Jira projects without point-point firewall connectivity.
A Jira Cloud site - it can’t be used with self-hosted Jira installations at this time.
An external mailbox to retrieve mail from and send mail through. The mailbox provisioned by Atlassianused by your Jira Cloudcannot be used by JEMHC. Atlassian (and by extension ourselves) don't support 3rd party apps using the mailbox, as the password is periodically changed by Atlassian. This would break connections to JEMHC. Please use an external email service such as Gmail, Office365 (or your own, so long as standard outbound SMTP and inbound POP/IMAP protocols are supported).
More information on JEMH Cloud pricing can be found on the Licensing page.
JEMH Cloud stores every incoming message, in encrypted form in the database. At most 50 messages are retained, old ones are removed as new ones are added.
Users wanting a 'mail archive' should consider using their mail server for this purpose, by auto-forwarding copies to an archive mailbox.
JEMH encrypts all user credentials in the database.
Differences between server and cloud
Please note the following difference between JEMH for Cloud and JEMH for Server/DC of configuration for Inbound Mailbox
JEMH for Jira Server requires configuration of the Incoming mail connection via Jira > System > Incoming mail as Jira communicates with mail servers on behalf of the app.
JEMH Cloud doesn’t use Jira’s incoming mail configuration as the app handles mail server communication itself. All JEMH Cloud mail server configuration is done via JEMHC > Messaging.
JEMH Server wrapped up all configuration into a Profile. The addition of per-project Mappings and related Rules to drive selection of that project for issue creation were limited in the ‘fields' that could be set. This results in scenarios where multiple profiles are necessary. In JEMH Cloud, the Profile doesn’t contain email processing configuration and all configuration is available through Project Mappings.
Defines the connectivity details for message sources:
remote mail servers via POP/IMAP
Association between a Message Source and a Profile (this is the same concept as Mail Handlers in Jira Server)
Defines the connectivity details for a mail-host responsible fro outbound message notification.
A Profile contains at least a Default Project Mapping and optionally many additional Project Mappings. The Project Mappings describe how emails should be manipulated and interpreted to create issues.
Project Mappings allow processing configuration to be specified on a per-project basis. In order for a project mapping to be selected during email processing, it must have a valid Mapping Rule attached to it. A rule defines a condition that an email (or data derived from it) must pass, and is considered valid if its conditions are passed. A Default Project Mapping is always present, has no rules, and will be used if no other mappings apply.
Project Mapping Rules
Mapping rules allow specific criteria to be defined that an incoming email must meet to be considered a match for a Project Mapping. They can only be added to non-default Project Mappings, as the default mapping applies when no rule matches. Configuration is inherited from the parent Project Mapping, but optionally overwritten at the Rule level.
Directives are user supplied values found in an email with a particular format. They can be interpreted and used to affect how issues are created or modified, for example, changing priority or summary.
Email Custom Field
JEMH Cloud Profiles define the custom field that will be used to store remote users email addresses. This custom field is a TEXT (multiline) custom field that is valid for the given issue. It has a simple comma separated format of email@example.com,firstname.lastname@example.org,email@example.com, no 'personal' parts are supported. When a Jira user makes changes or adds a comment to an issue, JEMH Cloud gets notified through webhooks:
Webhooks are the events that Jira generates in response to user activities on an issue. These changes drive JEMH Cloud notifications, but can also be stored as Preview Contexts. Unlike Jira Server, the webhooks have a much reduced event model (Created, Updated, Deleted).
Webhook data for a given issue can be saved, allowing Notification Templates to be previewed with real-world data.
Notification Templates contain the Velocity markup that drives notifications, they can be TEXT or include HTML markup. Velocity Macros (Velocimacros) are also supported with a system macros and user definable macros.
A set of JEMH Cloud system velocimacros provide a way to simplify markup, enabling users to customise the presentation of specific fields and sections by overriding them.
Themes allow complete control over the styling that is applied to notification content. JEMH Cloud comes with built-in themes but users are free to create their own.
Specific to HTML emails, images can be uploaded into JEMH Cloud, stored in the cloud, and referred by 'alias' within Notification Templates using a custom velocimacro. When HTML email content is rendered, URL's to those images are injected, resolving to The Plugin People's Content Delivery Network (CDN)
Test Cases are emails in their raw format. They are ideal for validation of Profile configuration. Received emails can be converted to a Test Case, or created from scratch, and are 'run' against a given profile.
Creation v.s. Comment
Emails with no issue key in the subject are treated as candidates for new issue creation. Emails with a valid issue key in the subject are candidates for commenting. JEMH Project Mappings apply during Creation of Issues only.
JEMH Cloud tracks resource usage through Message Count and Data metrics. The JEMHC licensing screen allows administrators to monitor their usage. Messages are split into 4 categories:
Traffic In: Inbound messages that are processed successfully
Issue Created: An inbound inbound email creates an issue
Issue Commented: An inbound email generates a comment in an issue
Traffic Out: Outbound notifications JEMH Cloud creates in the 'normal' traffic flow
Notification Sent: The Email sent after receiving a webhook Event from Jira (e.g a user or JEMH Cloud created/commented an issue)
Maintenance In: Inbound messages that encounter problems during processing
Message Blacklisted: An processed inbound email has been blacklisted
Message Processing Error: An processed inbound email couldn't be processed due to an error
Limit Exceeded: An email can’t be processed as a limit has been reached (like Issue Comment Limit or Issue Comment Max Size)
Message Not Catch: An email cannot be processed as it didn't match any of the profile's catch email addresses
Maintenance Out: Outbound messages JEMH Cloud creates for maintenance reasons
Ping Sent: JEMH Cloud sends an email as result of the user testing Message Outbound configuration
Message Forwarded: JEMH Cloud forwards an email that can’t be processed (due to error, blacklisting, etc.)