Configure email notifications for Service Desk users

There is a feature in Targetprocess that enables email notifications for Service Desk portal users so that the users could receive emails about changes with their tickets. This article describes how to configure the feature and resolve possible issues with it.

This article describes advanced configuration capabilities. It is composed for Administrators of Targetprocess accounts primarily.

There are some background facts that should be kept in mind for proper configuration of your system:

  • Templates for different kinds of events that produce email notifications are configured separately. There are standalone email notification templates for Request Created (Entity Created), State of Request Changed (Entity State Changed), Comment to Request added (Comment Created) process workflow events and Forgot Password, Helpdesk Password Changed system events. Moreover, there is a plugin named Auto Reply To Requesterwith its own independent template.
  • Templates forprocess workflow events are common for all general types of entities. Special logical sections that handle notifications for Requests only should be configured in them using IF-THEN expressions.
  • There are two kinds of users: internal users (having access to Targetprocess application alongside with Service Desk) and external requesters (having access to Service Desk only). It is possible to customize different notifications for users and requesters, also using IF-THEN expressions.
  • Most our users have new Service Desk portal installed. However some of them migrated from old Help Desk portal, and some technical issues could appear during the migration. As a result you could see wrong links in emails until the issues are fixed.

Customize notifications for Requests vs other types of Entities

For Entity Created, Entity State Changed template:

#if ($isRequest) <!-- this text is sent in notifications related to Requests only --> #end

Built-in smart function that generates link to an entity within Targetprocess application for users and within Service Desk portal for Requesters is the following:

<a href="${tool.Url($entity, $user)}">see online</a>

For Comment Created template:

#if ($entity.General.Kind.ToString() == "Request") <!-- this text is sent in notifications related to Requests only --> #end#if ($entity.General.Kind.ToString() != "Request") <!-- this text is sent to any entities but Requests --> #end#if ($entity.General.Kind.ToString() == "Request") <!-- this text is sent in notifications related to Requests only --> #else <!-- this text is sent in notifications related to any other entities --> #endWrong Links in notifications

Problem: you are using new Service Desk, but the links in emails lead to old Help Desk or even nowhere. Let us see what we can do about it.

Old Help Desk and new Service Desk have similar core functionality when it gets to email notifications such as new password reset, new comment notification, automatic replies and so on.

However, structure of links in Service Desk is different from the ones we had in Help Desk, so while they co-exist you may have to update email notifications templates.

By default links are designed for old Help Desk.

If you all the links to go to Service Desk by default, the first thing you need to do is to is change Help Desk Portal URL at Help Desk Portal settings and set it to your current Service Desk path.

This will change Forgot Password links and they will be sent by Service Desk.

If you have a local installation of Service Desk or if you have a custom URL, you will need to change the links that are sent when you reply to a request via comment, go to Settings -> Email Notification and edit the Comment Created template. You will need to replace

${tool.Url($entity.General, $user)}

with a direct link to your Service Desk, ex.

https://servicedesk.mycompany.com/request/$entity.General.ID
Help Desk Portal Service Desk
#if( ${tool.ShowOnlineLink($user)} )

<h2>New Comment added to ${tool.Term("${entity.General.Kind}")} #${entity.General.ID} "${entity.General.Name}"<span style="font-weight: normal"> in project </span> ${entity.General.ParentProject.Name} <span style="font-weight: normal"> (<a href="${tool.Url($entity.General, $user)}">see online</a>)</span>

#else

<h2>New Comment added to ${tool.Term("${entity.General.Kind}")} #${entity.General.ID} "${entity.General.Name}"<span style="font-weight: normal"> in project </span>${entity.General.ParentProject.Name}

#end

</h2>

#if ($entity.General.Kind.ToString() != "Request")

#if( ${tool.ShowOnlineLink($user)} )

<h2>New Comment added to ${tool.Term("${entity.General.Kind}")} #${entity.General.ID} "${entity.General.Name}"<span style="font-weight: normal"> in project </span> ${entity.General.ParentProject.Name} <span style="font-weight: normal"> (<a href="${tool.Url($entity.General, $user)}">see online</a>)</span>

#else

<h2>New Comment added to ${tool.Term("${entity.General.Kind}")} #${entity.General.ID} "${entity.General.Name}"<span style="font-weight: normal"> in project </span>${entity.General.ParentProject.Name}

#end

</h2>

#else

<h2>New Comment added to ${tool.Term("${entity.General.Kind}")} #${entity.General.ID} "${entity.General.Name}"<span style="font-weight: normal"> in project </span>${entity.General.ParentProject.Name}<span style="font-weight: normal"> (<a href="https://servicedesk.mycompany.com/request/$entity.General.ID">see online</a>)</span>

</h2>

#end

On Demand users with default Service Desk path (https://companyname.tpodemand.com/helpdesk) do not need this step as there is an automatic redirect that will handle the different link formats.

If you are also using automatic replies to new requests, go to Settings -> Plugins > Auto Reply To Requester and edit templates the following way

Help Desk Portal Service Desk
$HelpDeskUrl/ViewRequest.aspx?RequestID=${Request.ID} $HelpDeskUrl/request/${Request.ID}