Use JEMH instead of JIRA Service Desk for notifications

Jira configuration

Disable customer notifications

Initially, Jira Service Desk has its own notification system enabled for each project. It uses this system to send customer notifications. As this guide will show, JEMH's Event Listener can be used instead, but you will first need to stop JSD's own system from generating duplicate notifications:

JIRA Service Desk 3.3 or newer

Go to the Project settings>Customer notifications and disable each issue event rule.  See https://thepluginpeople.atlassian.net/browse/JEMH-5253 for more information.

JIRA Service Desk 3.2 or older

Go to Applications>JIRA Service Desk>Configuration and turn its notifications system off by clicking the on/off toggle.

Disable the Project Notification Scheme

With JSD Notifications disabled, JEMH also requires that the projects for which JEMH should handle notifications have no notification scheme selected, as leaving it enabled will generate JIRA standard notifications as well as JEMH notifications.  

This is done through JIRA > Project Administration > Notifications > Actions : Select Scheme (none):

 Make a note of what the notification scheme is called, you need it later!

Once its been deselected it will look like this:

JEMH configuration

Enable JEMH Event Listener

Done through JEMH > Event Listener > Issue Events

Check the box and submit:

Result:

Configure a Notification Mapping for the target Project

Notification Mappings contain two pages of configuration, one for "non-JIRA" users and one for "JIRA" users.

Non JIRA users

JIRA users

Non JIRA users

JIRA users

  • User without accounts ( email only )

  • Users deemed non-JIRA*

  • Users that can be located in the User Directory (right to use, authorization are all subsets)

  • Users not-deemed non-JIRA*

 JEMH configuration can 'route' JIRA account holders (regardless of group membership, right to use) into being treated as non-Jira, in doing so, separating notification configuration from 'full' JIRA users

Setup Non-Jira notifications

Go to JEMH > Event Listener > Transports.

The email transport view launches with either the Non-Jira or Jira notification tab open. Select the Non-Jira notifications tab and click New Project Mapping.

Set the Project Key

Set the Project Keys field to have the Project Key that this applies to ( this is a CSV capable field, several keys can be used.  Its also REGEXP capable, but the first mapping that matches the project wins).  In this example the Project key is simply:  JSD

Enable the Events and select Templates

Going with defaults for simplicity, scroll. down to Event Template selection, here the events that JEMH will react to and generate notifications are enabled by selecting a Template.  No Template means no notification!  Initially enable everything by default by checking the box:

What that does is set DEFAULT templates for all events, e.g.:

Once done, its important to save changes, scroll down:

After submission, the entry is shown, click the > to expand:

This then shows a view of the non-JIRA notification configuration:

Summary for non-JIRA users

They will receive TEXT notifications based on standard JIRA notifications for all events.

Setup Jira notifications

Client the JIRA notifications tab:

The view then changes to show the JIRA notification configuration for available Project Mappings.  Here the JSD entry is indicating (1) that no notification scheme is selected.  To edit the form use the pen icon (2):

Pick the notification scheme

This is now editing the Notification Mapping entry but looking at it from the JIRA user notifications side, and so now we need to select the Notification Scheme that will drive JEMH in resolving recipients for a given event:

Notify Me

Users creating issues by email usually want a notificaiton that their email created an issue but not for every comment they make after that time.  Set the Notify Me Condition to forSelectedEvents then select the appropriate event(s) for Issue Created in Notify Me Events, in our defualt setup, that looks like:

Enable JSD Request participants

In order to notify JSD Request Participants this needs enabling:

Group Restriction & Group Restriction Condition

The Group Restriction can be set to be the group that can be optionally used to switch notifications from using the Event and Template configuration defined in the JIRA user section.  To use a different event selection and/or custom templates, this needs setting to a pre-existing group name (Portal users won't have this group yet, but JEMH will dynamically add it as/when it processes mail from those users, see Profile configuration later).  the Group Restriction Condition configures how the group membership will be interpreted, here we set noGroupsorGrouMemberIsNonJira, with the outcome that users with NO groups (eg Portal users) and users with the nominated group will be treated as non-JIRA (their notification will be effectively switched over to the non-JIRA notification tab configuration):

Enable the Events and select Templates

Repeat the process above again for enabling all the events with Default templates and submit the form to see:

Expand this view using the > on the left to see the JIRA notification configuration:

Summary for JIRA users

JIRA users with groups that don't include the nominated Group Restriction will be notified according to the Events and standard JIRA Templates selected.  JIRA users with NO groups or with the group nominated in Group Restriction will have their notifications handled by the non-JIRA notification configuration, with that set of Events and Templates applied.

Review the Project Notifications page

The Project Notification page will advise you about JEMH configuration, enabling Project level admins to have some idea what JEMH is doing for 'non-JIRA' and 'JIRA' users (only System Admins can configure JEMH, and if you are authorized, there are shortcut options in the JEMH  menu top right to edit the Notification Mapping (both JIRA and non-JIRA sections):

Testing customer notifications

After this configuration you'll be able to create an issue as a customer and have JEMH notify them (using default TEXT templates) with Agents getting the user-specific format (usually HTML).  Validate that!

 If there is no default assignee, it will exist only in the JSD Queue

Here I have a Portal User without any groups 'createme@localhost', they can login and create a ticket:

The user will then get a TEXT notification, confirming that the configuration is setup correctly:

If there is a default assignee defined in the project, a separate notification will be sent to the assignee: