Creating/Editing a Trigger

Creating/Editing a Trigger


Triggers follow a pattern to identify when, where and what to do.  The ‘when’ is an event that has taken place in the lifecycle of a ticket in Helpy (ie. a new ticket has been created.) You will also define characteristics of tickets that should be affected by the trigger (ie. when it includes certain words).  Finally, the trigger defines what action to perform if the above two conditions are met. 

Every time you create a new trigger, you will define the following:

1. When to "fire" the trigger.
2. Which tickets should be acted upon, based on a set of conditions you define.
3. What to do


1. Choosing an Event: When to fire the trigger





When designing a trigger, it is best to think about the event that will cause the trigger to fire.  Events range from “New ticket created” to “Ticket Closed”.  Here is a list of available events with a brief description of each:


  • A new ticket is created
  • A ticket is reopened
  • A ticket is marked pending- in other words it is waiting for a response from an agent
  • A ticket is moved to the trash
  • A ticket is moved to the spam folder
  • A ticket is marked "resolved"
  • A ticket is assigned to an agent
  • A ticket is assigned to a group
  • A ticket is tagged
  • An agent replies to a ticket
  • An agent writes an internal note on a ticket
  • A user replies to a ticket

2. Selecting which tickets to include in the trigger


Sometimes you may want to create a trigger that only occurs for “certain” tickets.  Say those written by your most important client.  You can ensure this happens by setting up a condition for your event- instructing it to occur only when the event and some other conditions are true.





Each condition is made up of 3 parts: the property, an operator and the value.  The condition from the example above is "where the email address is billing@you.com".  To set this up would look like this:

property: the email address the ticket was sent to
operator: contains
value: billing

You can build conditions using the following available properties and operators:

  • Ticket Subject
  • Ticket Body
  • Channel
  • Ticket Status
  • Number of Replies
  • From User Email
  • From User Name
  • The email address the ticket was sent to
  • User Priority
  • Reply Body
  • The ticket is tagged
  • The ticket team assignment

And Operators

  • Equal to
  • Not Equal to
  • Starts with
  • Contains
  • Does not Contain

3. The action: What to do?


The final part of a trigger is the “action”, or what will be done when a ticket event matches the conditions defined previously.  Available actions include:




Agent Assignment:

  • Assign to a specific agent
  • Assign to the next agent
  • Assign to the least busy agent
  • Unassign agent

Responses:

  • Add an internal note
  • Reply to the topic
  • Assign to a group
  • Assign a tag
  • Alert the ticket
  • Mark it as resolved
  • Send a JSON webhook - See separate article on using the external JSON API
  • Post a notification to Slack - See separate reference on integrating with Slack





Discussion

Chirag Chhiat

How do I access triggers? I downloaded the latest version of Helpy but cannot access triggers anywhere. Is this only for the paid version of Helpy?

      Scott Miller

      This feature is only in the hosted version of Helpy.

          John Kloian

          Are there any plans to bring this feature to the open-source version?

              Scott Miller

              Not at this point.  This behavior is fairly easy to implement in the code with simple active record callbacks.

                  Did this solve your problem?