Difference between revisions of "Itop 3.2 Mail Notifications"
From Notes_Wiki
Line 353: | Line 353: | ||
==== Notification When Public log updated from Portal ==== | ==== Notification When Public log updated from Portal ==== | ||
* This mail action sends the mail when the caller updates the ticket (user request) from the portal. | |||
* This mail goes to the following: | |||
# The agent who is assigned | |||
# The caller who raised the ticket | |||
# The persons who are included in the <mail-id> tag | |||
# The contacts of a service | |||
# The team member (team lead) of a team | |||
# The contacts of the request | |||
The | |||
'''Name''': Notification When Public log updated from Portal | |||
'''Status''': In production | |||
'''Subject''': Ticket updated (via Portal) | |||
'''Body''': | |||
Hello, | |||
The ticket $this->ref$ has been updated. See the latest update below: | |||
Update Summary: | |||
$this->head(public_log)$ | $this->head(public_log)$ | ||
'''Related Triggers''': Trigger when log update from the portal | |||
Related Triggers: Trigger when log update from the portal | '''From (email)''': <mail-id> | ||
'''Ignore the Notify flag''': Yes | |||
From (email): <mail-id> | '''To''': | ||
SELECT Person WHERE id = :this->caller_id OR id = :this->agent_id | |||
Ignore the Notify flag: Yes | '''Cc''': | ||
SELECT Contact AS C | |||
JOIN lnkContactToService AS L ON L.contact_id = C.id | |||
To: | WHERE L.service_id = :this->service_id | ||
SELECT Person WHERE id = :this->caller_id OR id = :this->agent_id | UNION | ||
SELECT Contact WHERE email = '<mail-id>' | |||
Cc: | UNION | ||
SELECT Contact AS C | SELECT Contact WHERE email = '<mail-id>' AND :this->team_id = '<team-id>' | ||
JOIN lnkContactToService AS L ON L.contact_id = C.id | UNION | ||
WHERE L.service_id = :this->service_id | SELECT c | ||
UNION | FROM Contact AS c | ||
SELECT Contact WHERE email = '<mail-id>' | JOIN lnkContactToTicket AS l ON l.contact_id = c.id | ||
UNION | JOIN UserRequest AS ur ON l.ticket_id = ur.id | ||
SELECT Contact WHERE email = '<mail-id>' AND :this->team_id = '<team-id>' | WHERE ur.ref =:this->ref | ||
UNION | |||
SELECT c | |||
FROM Contact AS c | |||
JOIN lnkContactToTicket AS l ON l.contact_id = c.id | |||
JOIN UserRequest AS ur ON l.ticket_id = ur.id | |||
WHERE ur.ref =:this->ref | |||
Revision as of 11:20, 19 July 2025
Home > Ubuntu > Ubuntu 22.04 > Ubuntu 22.04 Itop 3.2 by Combodo > itop 3.2 Mail Notifications
Triggers
Triggers define when notifications have to be sent. Example: when a ticket reaches the state “assigned”.
Create Triggers
- Go to Configuration > Notifications > Triggers
- The below are the Default triggers:
- Person mentioned on Ticket
- Person mentioned on User
- In the right corner, click on plus icon to create a new trigger
New triggers
- Trigger when a Request is assigned
Trigger (on entering a state) Description: Trigger when a Request is assigned Target class: User Request State: assigned Subscription policy: Allow complete unsubscription
- Trigger when a Request is closed
Trigger (on entering a state) Description: Trigger when a Request is closed Target class: User Request State: closed Subscription policy: Allow complete unsubscription
- Trigger when a Request is created
Trigger (on object creation) Description: Trigger when a Request is created Target class: User Request Subscription policy: Allow complete unsubscription
- Trigger when a Request is resolved
Trigger (on entering a state) Description: Trigger when a Request is resolved Target class: User Request State: resolved Subscription policy: Allow complete unsubscription
- Trigger when log update from the portal
Trigger (when updated from the portal) Description: Trigger when log update from the portal Target class: User Request Subscription policy: Allow complete unsubscription
Download Send updates by email extension
This extension allows to send an email when updating the case log (either the public log or private log) of a Ticket. Email reply works with any type of Ticket.
- Go to iTop Hub > Get extensions from iTop Hub
NOTE: We need to register our iTop instance to access the itop store
- Give the username and password
- Search for the extension
- On the extension page, on the right side, click on shop kart icon to download the extension
- follow the on-screen steps to install the extension
- once installed, we can find the extension in the following path:
iTop Hub > Deployed extensions
- The extension comes with the following trigger:
- User Request public log update
- create another trigger for private log update
- User Request private log update
Description: User Request private log update Target class: User Request Context: Console Log attribute code: private_log
Reference: https://www.itophub.io/wiki/page?id=extensions:installation
Email Actions
Actions define what will be done. In the current version of iTop, the only available kind of action consist in sending an email.
- Go to Configuration > Notifications > Email actions
- In the right corner, click on plus icon to create a new action
New Mail actions
Notification to the agent when assigned
- This mail action sends the mail when a user is assigned to a ticket (user request).
- This mail goes to the following:
- The agent who is assigned
- The caller who raised the request
- The persons who are included in the <mail-id> tag
- The contacts of a service
- The team member (team lead) of a team
- The contacts of the request
Name: Notification to the agent when assigned Status: In production Subject: The ticket $this->ref$ has been assigned to this agent Body: The ticket $this->name()$ has been assigned to the agent: $this->agent_id >friendlyname$ Title: $this->title$ Description: $this->description$ Related Triggers: Trigger when a Request is assigned From (email): <mail-id> Ignore the Notify flag: Yes To: SELECT Person WHERE id = :this->agent_id OR id = :this->caller_id Cc: SELECT Contact AS C JOIN lnkContactToService AS L ON L.contact_id = C.id WHERE L.service_id = :this->service_id UNION SELECT Contact WHERE email = '<mail-id>' UNION SELECT Contact WHERE email = '<mail-id>' UNION SELECT Contact WHERE email = '<mail-id>' UNION SELECT Contact WHERE email = '<mail-id>' AND :this->team_id = '<team-id>' UNION SELECT c FROM Contact AS c JOIN lnkContactToTicket AS l ON l.contact_id = c.id JOIN UserRequest AS ur ON l.ticket_id = ur.id WHERE ur.ref =:this->ref
Notification to the agent when closed
- This mail action sends the mail when the ticket (user request) is closed
- This mail goes to the following:
- The agent who is assigned
- The caller who raised the request
- The persons who are included in the <mail-id> tag
- The contacts of a service
- The team member (team lead) of a team
- The contacts of the request
Name: Notification to the Agent when Closed Status: In production Subject: The ticket $this->ref$ has been Closed. Body: The ticket $this->name()$ has been Closed. Title: $this->title$ Description: $this->description$ Related Triggers: Trigger when a Request is closed From (email): <mail-id> Ignore the Notify flag: Yes To: SELECT Person WHERE id = :this->agent_id OR id = :this->caller_id Cc: SELECT Contact AS C JOIN lnkContactToService AS L ON L.contact_id = C.id WHERE L.service_id = :this->service_id UNION SELECT Contact WHERE email = '<mail-id>' UNION SELECT Contact WHERE email = '<mail-id>' AND :this->team_id = '<team-id>' UNION SELECT c FROM Contact AS c JOIN lnkContactToTicket AS l ON l.contact_id = c.id JOIN UserRequest AS ur ON l.ticket_id = ur.id WHERE ur.ref =:this->ref
Notification to the Agent when Created
- This mail action sends the mail when a new ticket (user request) is created.
- This mail goes to the following:
- The caller who raised the ticket
- The persons who are included in the <mail-id> tag
- The contacts of a service
- The team member (team lead) of a team
- The contacts of the request
Name: Notification to the Agent when Created Status: In production Subject: The ticket $this->ref$ has been created Body: The ticket $this->name()$ has been created. Title: $this->title$ Description: $this->description$ Related Triggers: Trigger when a Request is created From (email): <mail-id> To: SELECT Person WHERE id = :this->agent_id OR id = :this->caller_id Cc: SELECT Contact AS C JOIN lnkContactToService AS L ON L.contact_id = C.id WHERE L.service_id = :this->service_id UNION SELECT Contact WHERE email = '<mail-id>' UNION SELECT Contact WHERE email = '<mail-id>' UNION SELECT Contact WHERE email = '<mail-id>' UNION SELECT Contact WHERE email = '<mail-id>' AND :this->team_id = '<team-id>' UNION SELECT c FROM Contact AS c JOIN lnkContactToTicket AS l ON l.contact_id = c.id JOIN UserRequest AS ur ON l.ticket_id = ur.id WHERE ur.ref =:this->ref
Notification to the Agent when resolved
- This mail action sends the mail when a ticket (user request) is resolved.
- This mail goes to the following:
- The agent who is assigned
- The caller who raised the ticket
- The persons who are included in the <mail-id> tag
- The contacts of a service
- The team member (team lead) of a team
- The contacts of the request
Name: Notification to the Agent when resolved Status: In production Subject: The ticket $this->ref$ has been resolved Body: The ticket $this->name()$ has been resolved. Title: $this->title$ Description: $this->description$ Related Triggers: Trigger when a Request is resolved From (email): <mail-id> Ignore the Notify flag: Yes To: SELECT Person WHERE id = :this->agent_id OR id = :this->caller_id Cc: SELECT Contact AS C JOIN lnkContactToService AS L ON L.contact_id = C.id WHERE L.service_id = :this->service_id UNION SELECT Contact WHERE email = '<mail-id>' UNION SELECT Contact WHERE email = '<mail-id>' AND :this->team_id = '<team-id>' UNION SELECT c FROM Contact AS c JOIN lnkContactToTicket AS l ON l.contact_id = c.id JOIN UserRequest AS ur ON l.ticket_id = ur.id WHERE ur.ref =:this->ref
Notification when Private log updated
- This mail action sends the mail when the agent updates in the private log.
- This mail goes to the following:
- The agent and his/her team
- The persons who are included in the <mail-id> tag
- The contacts of the request
Name: Notification when Private log updated Status: In production Subject: Ticket updated by $current_contact->friendlyname$ Body: Hello, The ticket $this->ref$ has been updated by **$current_contact->friendlyname$** ($current_contact->email$). **Update Summary:** $this->head(private_log)$ Related Trigger: User Request private log update From (email): <mail-id> Ignore the Notify flag: Yes To: SELECT Team WHERE id = :this->team_id Cc: SELECT Contact WHERE email = '<mail-id>' UNION SELECT c FROM Contact AS c JOIN lnkContactToTicket AS l ON l.contact_id = c.id JOIN UserRequest AS ur ON l.ticket_id = ur.id WHERE ur.ref =:this->ref
Notification when Public log updated
- This mail action sends the mail when the agent updates the public log.
- This mail goes to the following:
- The agent who is assigned
- The caller who raised the ticket
- The persons who are included in the <mail-id> tag
- The contacts of a service
- The team member (team lead) of a team
- The contacts of the request
Name: Notification when Public log updated Status: In production Subject: Ticket $this->ref$ updated by $current_contact->friendlyname$ Body: Hello, The ticket $this->ref$ has been updated by **$current_contact->friendlyname$** ($current_contact->email$). **Update Summary:** $this->head(public_log)$ Related Triggers: User Request public log update From (email): <mail-id> Ignore the Notify flag: Yes To SELECT Person WHERE id = :this->caller_id OR id = :this->agent_id Cc SELECT Contact AS C JOIN lnkContactToService AS L ON L.contact_id = C.id WHERE L.service_id = :this->service_id UNION SELECT Contact WHERE email = '<Mail-id>' UNION SELECT Contact WHERE email = '<mail-id>' AND :this->team_id = '<team-id>' UNION SELECT c FROM Contact AS c JOIN lnkContactToTicket AS l ON l.contact_id = c.id JOIN UserRequest AS ur ON l.ticket_id = ur.id WHERE ur.ref =:this->ref
Notification When Public log updated from Portal
- This mail action sends the mail when the caller updates the ticket (user request) from the portal.
- This mail goes to the following:
- The agent who is assigned
- The caller who raised the ticket
- The persons who are included in the <mail-id> tag
- The contacts of a service
- The team member (team lead) of a team
- The contacts of the request
Name: Notification When Public log updated from Portal Status: In production Subject: Ticket updated (via Portal) Body: Hello, The ticket $this->ref$ has been updated. See the latest update below: Update Summary:
$this->head(public_log)$
Related Triggers: Trigger when log update from the portal From (email): <mail-id> Ignore the Notify flag: Yes To: SELECT Person WHERE id = :this->caller_id OR id = :this->agent_id Cc: SELECT Contact AS C JOIN lnkContactToService AS L ON L.contact_id = C.id WHERE L.service_id = :this->service_id UNION SELECT Contact WHERE email = '<mail-id>' UNION SELECT Contact WHERE email = '<mail-id>' AND :this->team_id = '<team-id>' UNION SELECT c FROM Contact AS c JOIN lnkContactToTicket AS l ON l.contact_id = c.id JOIN UserRequest AS ur ON l.ticket_id = ur.id WHERE ur.ref =:this->ref