Document number | Revision |
---|---|
DOCU12437 | 1 |
Email Notifications in HighstageIntroductionInstallationAccessibilityTriggersProcedurePropertiesDefault TriggersCustom TriggersTrigger Types (Events)SecurityModify security settingsTraceabilityTemplatesTemplate filesAvailable Highstage variablesItem columnsUser columnsTrigger columnsGuidesCreating a new TriggerClone an existing TriggerTesting Email NotificationsConfigurationConfigure accessibility in the side navigation menu
Highstage makes use of automated email notifications to send messages to appropriate Highstage users' whenever specific events in Highstage occurs:
These notifications can inform users of certain events, changes and provide users with relevant information or prompt users to take action.
In this article, you will be introduced to the concept, capabilities and configuration of automated email notifications in Highstage.
Email notifications is a default feature in Highstage from version SW10055-8 and requires no initial installation or setup. It does, however, require that outgoing mails are enabled for your Highstage installation.
Please refer to and follow the Outgoing Highstage Mail Notification guide to ensure that outgoing mails is configured.
VALIDATION: If you receive the message Sending mail...ok, then your Highstage installation is ready for automated email notifications.
Email Notifications can be accessed by administrators directly from the side navigation menu.
This will give you an overview of existing active and inactive Triggers and Events and allows you to create new custom Triggers.
Whenever a specific Event in Highstage occurs, a Trigger is responsible for sending out email notifications to select users'.
A Trigger has a wide range of properties that are used to specify the various the filters and conditions that must be met for messages to be sent. This enables you to create highly customizable Triggers that can send out very general messages to all Highstage users, or very specific Triggers that only reaches specific users with more critical and relevant matters in mind.
Highstage comes bundled with a number predefined Default Triggers representing the standard occurrences in Highstage. When any of these events occurs - appropriate stakeholders will be notified by receiving an email notification message. The messages can inform relevant users of changes in Highstage, or prompt them to take further action.
Similarly, you can create and configure any number of Custom Triggers to replace or supplement any of the default triggers. Custom triggers can be fully customized - allowing you to define the content, layout, events, filters and options for each individual trigger.
This illustration gives you a brief overview of the structure associated of each individual Trigger:
The following procedure occurs for each active Trigger in Highstage:
The following table gives you a complete overview of all columns associated with each individual Trigger:
Name | Title | Description | Note |
---|---|---|---|
active | Active | Enables ( ✔️ ) or disabled ( ❌ ) the current Trigger. | |
clone | Clone | Creates a copy of an existing Trigger. | |
columnname | Included Columns | The select column(s) to be associated with an ONCOLUMNCHANGE event. | |
description | Description | Optional description. | |
id | ID | Non-editable ID of the Trigger | |
mailcause | Subject | Text to be used as a subject line for the email. | |
mailcc | CC | Any number of static email addresses, Users, User groups and/or Resource columns to receive a copy of the message. | Each entry must be separated by ; . |
mailreplyto | Reply to | Any number of static email addresses, Users, User groups and/or Resource columns to be listed as recipients when clicking Reply. | Each entry must be separated by ; . |
mailto | To | Any number of static email addresses, Users, User groups and/or Resource columns to receive email notifications when the Event occurs. | Each entry must be separated by ; . |
negativefiltertype | Excluded Types | Any number of existing Basetypes and/or Subtypes. Email notifications will not be sent when the event occurs for items of these types. | Negative listed types takes precedence over positive. |
negativefilterworkspace | Excluded Workspaces | Any number of existing Workspaces. Email notifications will not be sent when an event occurs for items placed in these Workspaces. | Negative listed workspaces takes precedence over positive. |
positivefiltertype | Included Types | Any number of existing Basetypes and/or Subtypes. Email notifications will be sent when the event occurs for items of these types. | If left empty, all Types will be included automatically |
positivefilterworkspace | Included Workspaces | Any number of existing Workspaces. Email notifications will be sent when an event occurs for items placed in these Workspaces. | If left empty, all Types will be included automatically |
rationale | Rationale | Optional rationale to describe the purpose of the Trigger. | |
step | Step | The specific Action Step associated with aSTEP event (Ranging from 1-16). | |
templatefile | Template File | The Template file that will be sent as a email notification message. Selected from the list of available files from the Templateitem document. | If left empty, a default mail template will be used. |
templateitem | Template Item | An existing item in Highstage containing the Email Notification Template file. | If left empty, a default mail template will be used. |
title | Title | Optional title of the Trigger. | |
triggert | Origin | Non-editable specification whether the Trigger is bundled with Highstage (Predefined ) or created by Highstage users' (Custom ). | |
triggertype | Trigger Type | The specific Event (Trigger Type) causing email notifications to be sent to appropriate users in Highstage. | |
ts_name | Trigger | Non-editable title of the Trigger. Will inherit name from title if specified. |
Important!
Default Predefined triggers will be regularly maintained by Highstage. Any changes made to a Predefined Trigger will be overwritten when updating Highstage.Highstage comes bundled with a number of predefined Triggers representing core actions and events performed by users in Highstage. These Triggers can be enabled and disabled ay any time.
These default Triggers can be recognized by the Predefined field associated with each Trigger:
The following list gives you a detailed overview of all predefined Highstage Triggers:
Trigger | Description | Included types | To | CC | Subject |
---|---|---|---|---|---|
Approval | When an item is sent to Approval | DOCUMENTS / PARTS | Approver(s) | - | Approval |
Approved | When an item is Approved | DOCUMENTS / PARTS | Author(s) | copyto | Approved |
Closed | When an Action is Closed | ACTIONS | Step 1 Resource(s) | copyto | Close |
Obsolete | When an item is Obsoleted | ANY | Authors(s), Reviewers(s), Approver(s) | copyto | Obsolete |
Column Changed | When any column value is changed | ANY | - | - | Notification |
Rejected | When an item in Review is Rejected | DOCUMENTS / PARTS | Author(s) | copyto | Rejected |
Review | When an item is sent to Review | DOCUMENTS / PARTS | Reviewer(s) | - | Review |
Step 1 | When an Action is sent to Step 1 | ACTIONS | Step 1 Resource(s) | copyto | Stepped |
Step 2 | When an Action is sent to Step 2 | ACTIONS | Manager | copyto;resource2 | Stepped |
Step 3 | When an Action is sent to Step 3 | ACTIONS | Step 3 Resource(s) | copyto | Stepped |
Step 4 | When an Action is sent to Step 4 | ACTIONS | Manager | copyto;resource4 | Stepped |
Step 5 | When an Action is sent to Step 5 | ACTIONS | Step 5 Resource(s) | copyto | Stepped |
Step 6 | When an Action is sent to Step 6 | ACTIONS | Manager | copyto;resource6 | Stepped |
Step 7 | When an Action is sent to Step 7 | ACTIONS | Step 7 Resource(s) | copyto | Stepped |
Step 8 | When an Action is sent to Step 8 | ACTIONS | Manager | copyto;resource8 | Stepped |
Step 9 | When an Action is sent to Step 9 | ACTIONS | Step 9 Resource(s) | copyto | Stepped |
Step 10 | When an Action is sent to Step 10 | ACTIONS | Manager | copyto;resource10 | Stepped |
Step 11 | When an Action is sent to Step 11 | ACTIONS | Step 11 Resource(s) | copyto | Stepped |
Step 12 | When an Action is sent to Step 12 | ACTIONS | Manager | copyto;resource12 | Stepped |
Step 13 | When an Action is sent to Step 13 | ACTIONS | Step 13 Resource(s) | copyto | Stepped |
Step 14 | When an Action is sent to Step 14 | ACTIONS | Manager | copyto;resource14 | Stepped |
Step 15 | When an Action is sent to Step 15 | ACTIONS | Step 15 Resource(s) | copyto | Stepped |
Step 16 | When an Action is sent to Step 16 | ACTIONS | Manager | copyto;resource16 | Stepped |
All Predefined Triggers are regularly maintained and updated by Highstage to reflect standard functionality.
It is important to note that any changes you make to a Predefined Trigger will be overwritten when updating your Highstage installation (excluding the active
, title
,description
, rationale
templateitem
and templatefile
properties). Any other property will be overwritten when updating Highstage,
TIP: If you want to make changes to a predefined Trigger, consider making a copy of the Trigger with your preferred modifications and disable the predefined Trigger. Predefined Triggers will remain inactive until manually reactivated.
In addition to default bundled Triggers, Highstage allows you to create any number of custom Triggers.
Custom Triggers can be recognized by the Custom field associated with each Trigger:
Highstage comes with a number of Events which represents the various actions or changes that users can perform in Highstage. Whenever such event occurs, if a Trigger is configured to 'listen' to such event, messages will be sent to appropriate users'.
The following table gives you a brief overview of the various Events in Highstage:
Trigger Type (Event) | Description | Note | Can be applied to... (Including subtypes) |
---|---|---|---|
APPROVAL | Triggers when an item is sent to Approval | - | Documents / Parts / Devices |
APPROVED | Triggers when an item is Approved | - | Documents / Parts / Devices |
CLOSE | Triggers when an Action is Closed | - | Action |
CREATE | Triggers when a new item is Created | - | Documents / Parts / Devices / Actions |
JOB | - | Not yet implemented | - |
NOTIFICATION | - | Not yet implemented | - |
OBSOLETE | Triggers when an item is Obsoleted | - | Documents / Parts / Devices / Actions |
ONCOLUMNCHANGE | Triggers when a specific column value is modified. | - | Documents / Parts / Devices / Actions |
REJECTED | Triggers when an item in review has been Rejected | - | Documents / Parts / Devices |
REVIEW | Triggers when an item is sent to Review | - | Documents / Parts / Devices |
STEP | Triggers when an Action is Stepped | - | Action |
SUMMARY | - | Not yet implemented | - |
Highstage makes use of ts_trigger
as a new available Basetype in Highstage to facilitate automated email notifications.
By default, only Highstage administrators with AdminRead/AdminWrite privileges has permissions and access to view, create or modify existing email notification triggers.
Permissions to view, modify or create new email notification triggers can be granted to existing users' and/or user groups in Highstage by configuring the permissions associated with the ts_trigger
basetype.
ts_trigger
:This Basetype is used to manage the security/accessibility of new or existing Triggers in Highstage.
The listed fields gives the following permissions in Highstage:
Field | Description |
---|---|
TrustRead | Grants permission to view existing Triggers in Highstage. |
TrustModify | Grants permission to modify existing Triggers in Highstage. |
TrustCreate | Grants permission to create new Triggers in Highstage. |
Reset
Highstage for the changes to take effect.TIP: You can read more about Basetype and other security related concepts on our official page regarding Security in Highstage.
Whenever Highstage sends out email notification messages, an entry is added to the Eventlog on the item where the message originates from:
This ensures that anyone with access to an item can access the Eventlog and get explicit information regarding each instance where Highstage has sent out email notification messages in relation to that individual item.
Each entry in the Eventlog will provide you with explicit information about each instance of sending out email notification messages:
Each Trigger has an associated email template file. This file determines the contents and the visual layout of the email notification that will be sent to the appropriate recipient:
Each template can include information regarding the item, the affiliated users and the cause for the email notification. Similarly, the template can include advanced logic to alter the information and appearance of the email notification based on a variety of conditions. For instance, a template can be configured to inform the recipients differently if the notification stemmed from a Document or an Action.
Any relevant property in Highstage can be used as a basis for defining the email contents that is sent to relevant Highstage users.
Each email notification template is a highly configurable .cshtml
file that determines the visual layout and contents of the email notifications. The email that it sent, is a generated webpage based on HTML
and CSS
where Highstage properties and advanced logic can be applied through C#
.
Click here to download the default mail template used by Highstage.
Highstage variables enables dynamic retrieval of data from existing columns in Highstage.
You can use Highstage variables to create dynamic email templates as they automatically retrieve data from Highstage and insert them into the mail message.
Tip: You can get a good idea about using Highstage variables by taking a look at our existing default mail template. This mail template is used as the default template in Highstage and includes a large number of Highstage variables.
you can refer to any existing physical column associated with an item in your Highstage installation by replacing COLUMN
with the appropriate column name:
@Model.COLUMN
you can refer to any existing physical column associated with any user in your Highstage installation by replacing COLUMN
with the appropriate column name:
xxxxxxxxxx
@Model.USER.COLUMN
You can refer to any column associated with the current Trigger using any of the listed Highstage variables:
xxxxxxxxxx
@Model.ts_active
xxxxxxxxxx
@Model.ts_triggertype
xxxxxxxxxx
@Model.ts_title
xxxxxxxxxx
@Model.ts_columnname
xxxxxxxxxx
@Model.ts_description
xxxxxxxxxx
@Model.ts_mailcause
xxxxxxxxxx
@Model.ts_mailcc
xxxxxxxxxx
@Model.ts_mailreplyto
xxxxxxxxxx
@Model.ts_mailto
xxxxxxxxxx
@Model.ts_negativefiltertype
xxxxxxxxxx
@Model.ts_negativefilterworkspace
xxxxxxxxxx
@Model.ts_positivefiltertype
xxxxxxxxxx
@Model.ts_rationale
xxxxxxxxxx
@Model.ts_step
xxxxxxxxxx
@Model.ts_templatefile
xxxxxxxxxx
@Model.ts_templateitem
xxxxxxxxxx
@Model.ts_id
xxxxxxxxxx
@Model.ts_positivefilterworkspace
xxxxxxxxxx
@Model.ts_triggert
xxxxxxxxxx
@Model.ts_ts_name
You can create any number of custom Triggers to add to your Highstage installation.
Do the following:
Select Create.
When filled and created, you will be navigated to the view associated with the newly created Trigger:
Note: The newly created trigger has not yet been filled out to include the various recipients, filters and conditions to fully function. Please refer to the Properties section for more information about the available fields and how to fill them out.
You can clone an existing Trigger to take advantage of existing Triggers and their associated properties.
This will navigate you to the Create form:
Do the following:
Click Create.
You will automatically be navigated to the newly created Trigger where all of the associated properties will be transferred from the originating Trigger:
By default, Highstage does not send out email notifications to the users' who initiated the Trigger.
Example: If you are listed both as an Author and Reviewer and sends a document in Review, you will not receive an email notification message, as you were the initiating user.
Testing with one Highstage user account:
You can add the following snippet to your custom.schema.xml
to allow the 'initiating' user to also receive email notifications:
xxxxxxxxxx
<parameter name="AllowMailToInitiator" value="1" />
custom.schema.xml
, ensure that you reset Highstage for any changes to take effect.This enables you to make changes in Highstage and also receive the appropriate email notification messages if the conditions associated with an existing Trigger is fulfilled.
Testing with several Highstage user accounts:
Without making changes to custom.schema.xml
, you must test email notification Triggers by using two or more separate Highstage user accounts.
In this manner, you can ensure that one user performs the appropriate action in Highstage where the other user is listed as an appropriate recipient.
The following snippet can be added to custom.schema.xml
in your Highstage installation files to make the Email notifications section available to Highstage users' outside of the systems menu:
xxxxxxxxxx
<type name="ts_menu">
<menu name="default">
<section name="mail_notifications" icon="fas fa-mail-bulk" type="ts_trigger"/>
</menu>
</type>
TIP: For more information about configuring the side navigation menu, please refer to the Side navigation menu configuration guide.