Itop 3.2 Mail Notifications
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 download the extension
- 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 with selected Mail domains
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 AND (c.email LIKE '%@<domain>' OR c.email LIKE '%@<domain>')
NOTE: In the body field, Select Insert Code Block (<> icon), then select HTML and inside HTML block enter $this->head(private_log)$ to display the line breaks correctly.
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
NOTE: In the body field, Select Insert Code Block (<> icon), then select HTML and inside HTML block enter $this->head(private_log)$ to display the line breaks correctly.
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
NOTE: In the body field, Select Insert Code Block (<> icon), then select HTML and inside HTML block enter $this->head(private_log)$ to display the line breaks correctly.
Reference: https://www.itophub.io/wiki/page?id=latest:admin:notifications