Notifications management

Da itm wiki.
Versione del 28 nov 2017 alle 14:01 di Renato.daverio (discussione | contributi) (Company Notification)

Notifications shall be activated at Company level by click on General\Company\Event Types.

The Event Types are Notifications that PSM can send by email.

The creation of event types does not automatically trigger their activation, it can be obtained by users (Personal\Event Notification) or can be forced by the administrator regardless of the user's wish (General\Company\Forced Notifications).

Company Notification

The details of each Event Type (General\Company\Event Types):

Field Meaning Comments
Event Typology TBC
Type Allows to select an event type from the default to the system. The field is mandatory.
Language Allows to select the language of the event type ycreated (is possible to create multiple event types for the same system type that differ only for the language, and the user or administrator can then choose which event / language typologies enable).A user will only receive notifications if they use the same language as defined for the notification itself.
Subject Allows to define a text for the notification subject. The subject is entered in the mail.
Default Template Allows to select the template to be used for Notification. The template is a text file (HTML) that can also contain referrals to system variables.
Event Type Template TBC


The following table contains the default roles notified by each Event Type

Event Type Meaning Roles Notified
Ticket Activity: Provisory Raised when a Ticket Activity is saved in Provisory status Assignee, DSG1 member, Ticket Owner, Ticket Creator, DSG2 member
Ticket Activity: Requested Raised when a Ticket Activity is saved in Requested status Assignee, DSG1 member, Ticket Creator, DSG2 member
Ticket Activity: Running Raised when a Ticket Activity is saved in Running status Assignee, DSG1 member, Ticket Owner, Ticket Creator, DSG2 member
Ticket Activity: Completed Raised when a Ticket Activity is saved in Completed status Assignee, DSG1 member, Ticket Owner, Ticket Creator, DSG2 member
Ticket Activity: Closed Raised when a Ticket Activity is saved in Closed status Assignee, DSG1 manager


The following Event Types is possible to overwrite the defulat roles at Company level by custom in:

  1. WorkFlow Engine - Tab Transition Rule - Sub Tab Outbound Notification
  2. WorkFlow Engine - Tab Notifications

For an Event Type generated by WorkFlow Transition is not possible to update the Notification Template here. The Notification Template shall be updated in WorkFlow Engine.

The following table contains all the placeholders related to PMSM Standard Fields usable in Notification Templates:

Template Field Placeholder
Any template application url ${row.application.ticket.url}
Any ticket template Number ${row.position}
" Ticket Code ${row.ticket.code}
" Project/Service Code ${row.project.code}
" Project/Service Name ${row.project.name}
" Description ${row.ticket.description}
" Cr. User description ${row.ticket.creationdescription}
" Target Environment ${row.ticket.targetenvironment}
" Ticket Short Description ${row.ticket.short.description}
" Ticket Type ${row.ticket.type}
" Priority/Category Name ${row.ticket.priority}
" Owner Name ${row.resource.name}
" Analysis ${row.ticket.analysis}
" Solution ${row.ticket.solution}
" Comments ${row.ticket.comments}
" Workaround ${row.ticket.workaround}
" Creation User ${row.creator}
" Creation Date ${row.creationdate}
" Edit User ${row.lastupdater}
" Edit Date ${row.lastupdatedate}
" Close User ${row.ticket.closer}
" Close Date ${row.ticket.closeDate}
" Forecast Soltuion Date ${row.ticket.forecastSolutionDate}
" Required Solution Date ${row.ticket.requiredSolutionDate}
" Balance ${row.ticket.balance}
" Effort ${row.ticket.effort}
" Current Workers ${row.ticket.prevworker}
" SG managers ${row.sgmanager}
" Ticket Op Status ${row.ticket.current.opstatus}
" Ticket Adm Status ${row.ticket.current.adm.status}
" Solution Group ${row.ticket.current.solutiongroup}
" Master SG ${row.ticket.current.mastersolutiongroup}
" Area ${row.ticket.ticketArea}
" Topic ${row.ticket.ticketTopic}
" Category ${row.ticket.ticketCategory}
" Impact ${row.ticket.impact}
" Urgency ${row.ticket.urgency}
" Product ${row.ticket.product}
" Requester ${row.requester}
" Service ${row.ticket.service}
" Requested Priority ${row.ticket.requestedPriority}
" Closure Casue ${row.ticket.closureCause}
" Resolution Cause ${row.ticket.resolutionCause}
" Parent Ticket ${row.ticket.parentTicket}
" Functionality ${row.ticket.functionality}
" Transition Comment ${row.ticket.transition.comment}
" Service Request ${row.ticket.serviceRequest}
" Requester Fax ${row.requester.fax}
" Requester Phone ${row.requester.phone}
" Requester Mail ${row.requester.mail}
" Requester Notes ${row.requester.notes}
" Organization Unit name ${row.requester.ou}
" Requester Client name ${row.requester.client.name}
" Requester Client phone ${row.requester.client.phone}
" Requester Client address ${row.requester.client.address}
" Requester Client fax ${row.requester.client.fax}
" Requester Client city ${row.requester.client.city}
" Requester Client mail ${row.requester.client.mail}
" Requester Client region ${row.requester.client.region}
" Requester Client postal code ${row.requester.client.postalCode}
" Requester Client notes ${row.requester.client.notes}
" Organization Unit custom field 1 ${row.requester.ou.customField1}
" Organization Unit custom field 2 ${row.requester.ou.customField2}
" Organization Unit custom field 3 ${row.requester.ou.customField3}
" Organization Unit address ${row.requester.ou.address}
" Organization Unit phone ${row.requester.ou.phone}
" Organization Unit city ${row.requester.ou.city}
" Organization Unit fax ${row.requester.ou.fax}
" Organization Unit region ${row.requester.ou.region}
" Organization Unit mail ${row.requester.ou.email}
" Organization Unit postal code ${row.requester.ou.postalCode}
" Organization Unit type ${row.requester.ou.type}
" Organization Unit country ${row.requester.ou.country}
" Organization Unit notes ${row.requester.ou.notes}
" Price List ${row.priceList.id}
" Price List Class ${row.priceList.class}
" Price List Status ${row.priceList.status}
" Price List Year ${row.priceList.year}
" Price List Currency ${row.priceList.currency}
" Price List Date From ${row.priceList.dateFrom}
" Price List Date To ${row.priceList.dateTo}
" Price List Grand Total ${row.priceList.grandTotal}
" Price List Scenario ${row.priceList.scenario}
" Project Ref. Name ${row.projectRef.name}
" Project Estimation ${row.estimation}
" Project PMs ${row.project.pm}
" Project Currency Name ${row.project.currency}
" Ticket Currency Name ${row.ticket.currency}
" Ticket RunId ${row.runId}
" Project Short Description ${row.project.shortDesc}
" Project Objectives ${row.project.objectives}
" Project Background ${row.project.bgReasons}
" Project Comment ${row.project.comment}
" Project Type ${row.project.type}
" Project Class ${row.project.class}
" Project's Parent Project ${row.project.parentPrj}
" Project's Statistical Project ${row.project.statPrj}
" Project IOSD ${row.project.iosd}
" Project IOED ${row.project.ioed}
" Project ASD ${row.project.asd}
" Project AED ${row.project.aed}
" Project IESD ${row.project.iesd}
" Project IEED ${row.project.ieed}
" Project CESD ${row.project.cesd}
" Project CEED ${row.project.ceed}
" Project Client ${row.project.client}
" Project Final Client ${row.project.finalClient}
" Project Operational Status ${row.project.opStatus}
" Project Administrative Status ${row.project.admStatus}
" Project Effort Estimation Days Budget ${row.project.effort.estimation.days.budget}
" Project Effort Estimation Days Balance ${row.project.effort.estimation.days.balance}
" Project Effort Estimation Days Remaning ${row.project.effort.estimation.days.remaining}
" Project Effort Estimation Days Confirmed ${row.project.effort.estimation.days.confirmed}
" Project Effort Estimation Days ETC ${row.project.effort.estimation.days.etc}
" Project Effort Estimation Days EAC ${row.project.effort.estimation.days.eac}
" Project Effort Estimation Amount Budget ${row.project.effort.estimation.amount.budget}
" Project Effort Estimation Amount Balance ${row.project.effort.estimation.amount.balance}
" Project Effort Estimation Amount Remaning ${row.project.effort.estimation.amount.remaining}
" Project Effort Estimation Amount Confirmed ${row.project.effort.estimation.amount.confirmed}
" Project Effort Estimation Amount ETC ${row.project.effort.estimation.amount.etc}
" Project Effort Estimation Amount EAC ${row.project.effort.estimation.amount.eac}
" Project Expenses Estimation Amount Budget ${row.project.expenses.estimation.amount.budget}
" Project Expenses Estimation Amount Balance ${row.project.expenses.estimation.amount.balance}
" Project Expenses Estimation Amount Remaning ${row.project.effort.estimation.amount.remaining}
" Project Expenses Estimation Amount Confirmed ${row.project.effort.estimation.amount.confirmed}
" Project Expenses Estimation Amount ETC ${row.project.effort.estimation.amount.etc}
" Project Expenses Estimation Amount EAC ${row.project.effort.estimation.amount.eac}
" Project Cost Occurense Categories Estimation Amount Budget ${row.project.occurrence.categories.estimation.amount.budget}
" Project Cost Occurense Categories Estimation Amount Balance ${row.project.occurrence.categories.estimation.amount.balance}
" Project Cost Occurense Categories Estimation Amount Remaining ${row.project.occurrence.categories.estimation.amount.remaining}
" Project Cost Occurense Categories Estimation Amount Confirmed ${row.project.occurrence.categories.estimation.amount.confirmed}
" Project Cost Occurense Categories Estimation Amount ETC ${row.project.occurrence.categories.estimation.amount.etc}
" Project Cost Occurense Categories Estimation Amount EAC ${row.project.occurrence.categories.estimation.amount.eac}
" Costs Total Amount Budget ${row.cost.total.amount.budget}
" Costs Total Amount Balance ${row.cost.total.amount.balance}
" Costs Total Amount Remaining ${row.cost.total.amount.remaining}
" Costs Total Amount Confirmed ${row.cost.total.amount.confirmed}
" Costs Total Amount ETC ${row.cost.total.amount.etc}
" Costs Total Amount EAC ${row.cost.total.amount.eac}
" Benefits Total Amount Budget ${row.benefits.total.amount.budget}
" Benefits Total Amount Balance ${row.benefits.total.amount.balance}
" Benefits Total Amount Remaining ${row.benefits.total.amount.remaining}
" Benefits Total Amount Confirmed ${row.benefits.total.amount.confirmed}
" Benefits Total Amount ETC ${row.benefits.total.amount.etc}
" Benefits Total Amount EAC ${row.benefits.total.amount.eac}
" Profit/Loss Amount Budget ${row.profit.loss.amount.budget}
" Profit/Loss Amount Balance ${row.profit.loss.amount.balance}
" Profit/Loss Amount Remaining ${row.profit.loss.amount.remaining}
" Profit/Loss Amount Confirmed ${row.profit.loss.amount.confirmed}
" Profit/Loss Amount ETC ${row.profit.loss.amount.etc}
" Profit/Loss Amount EAC ${row.profit.loss.amount.eac}
Template_Escalation Objective ${row.objective}
" Metric ${row.metric}
" Metric Value ${row.metric.value}
" Target ${row.target}
" Trigger ${row.trigger}
Template_TSRecord_Approved Number ${row.position}
" Project/Service Code ${row.project.code}
" Project/Service Name ${row.project.name}
" Timesheet Record Code ${row.tsrecord.code}
" Timesheet Record Activity Date ${row.tsrecord.activityDate}
Template_TSRecord_Change_Requested Number ${row.position}
" Project/Service Code ${row.project.code}
" Project/Service Name ${row.project.name}
" Timesheet Record Code ${row.tsrecord.code}
" Timesheet Record Activity Date ${row.tsrecord.activityDate
Template_Inbound_Responce_Message Number ${row.position}
" Create Date ${row.creationdate}
" Sender ${row.sender}
" Sender mail address ${row.sendermail}
" Subject ${row.subject}
" PSM received mail body ${row.mailbody}
" Link to Ticket detail ${row.linktodetail}
Template_InstReq_Status_Change_For_Ticket Number ${row.position}
" Installation Request Id ${row.instreq.id}
" Installation Request Code ${row.instreq.id}
" Installation Request Environment ${row.instreq.env}
" Ticket Code ${row.ticket.code}
" Project Code ${row.project.code}
" Project Name ${row.project.name}
" Ticket Type ${row.ticket.type}
" Ticket Short Description ${row.ticket.short.description}
" Ticket Priority ${row.ticket.priority}
" Previous Op Status ${row.ticket.previous.opstatus}
Template_InstReq_Status_Change_For_TicAct.htm Number ${row.position}
" Installation Request Id ${row.instreq.id}
" Installation Request Code ${row.instreq.id}
" Installation Request Environment ${row.instreq.env}
" Ticket Code ${row.ticket.code}
" Project Code ${row.project.code}
" Project Name ${row.project.name}
" Ticket Type ${row.ticket.type}
" Ticket Short Description ${row.ticket.short.description}
" Ticket Priority ${row.ticket.priority}
" Previous Op Status ${row.ticket.previous.opstatus}
" Description ${row.ticketactivity.description}
Template_News_Is_Published.html News Title ${row.news.title}
" News Topic ${row.news.topic}
" Publish Date ${row.news.publishDate}
" Publisher ${row.news.publisher}
" News Description ${row.news.description}
Any Project Activity Template Number ${row.position}
" Project Code ${row.project.code}
" Project Name ${row.project.name}
" Activity Task Name ${row.activity.name}

Forced Notification

This feature allows the management of Forced Event Types.

Forced event types may be:

  1. Weak: it allows the user to customize all aspects of the notification scheduling (Personal\Event Notification) without being able to remove it.
  2. Strong: the user can't handle current Notification scheduling.

WorkFlow Notification

TBC