If you have a workflow where you need to start a timer the instant another timer stops the first thing to consider is if you could be solving this issue with relative timer updates.
Using relative timer updates can make your workflow much simpler and avoid technical complications.
Relative ticket updates
Relative timer updates allow you to do things any period of time before or after a timer ends. (For more information on timers ending, starting and stopping see here).
So for a workflow where you want to send a warning 3 times before a timer ends, rather than chaining 3 timers in a row, you would set the total duration of a single timer definition to be when the actual SLA would be breached.
Then at the bottom of the timer definition settings, you can add relative updates X period of time before the timer duration ends. In the example below, a private comment is being added to the ticket 30, 20 and 10 mins before the timer ends:
Setting up back-to-back timers
In most cases, relative updates is all you will need. However, you may still run into an edge case whereby you still need to chain a timers together.
To set up a back to back timer, click into the admin part of the Timers app in the main left bar and then under Timer definitions at the top right click Add definition.
Give the timer a name, description & duration.
Then under Timer Stopped ticket update click the + on the right and select to Add tags.
Enter the tag that will start the second timer, in the case below we're adding the tag start_2nd_timer:
Now at the bottom right click on Save.
Back in your list of timer definitions click Create trigger in the Start column and then define the behaviour that causes the timer to automatically start like this:
Once you've saved this trigger, go back to into your list of definitions and do the same for the Stop column.
You can set the conditions of both the start and stop triggers to be whatever you like. Usually the start trigger would be checking for the initiating event (eg. when the ticket is created) and the stop trigger would be looking for the desired behaviour (eg. when an agent responds to the customer for the first time).
Now repeat the above steps for the 2nd timer definition, making sure that in the trigger that starts the 2nd timer, you add under Meet ALL of the following conditions:
Ticket: Tags - Contains at least one of the following - start_2nd_timer
And then under Actions add the rule:
Remove tags: start_2nd_timer
|
Note: When it comes to trigger actions, it is important that the trigger that stops the 1st timer is not what adds the tag that starts the 2nd timer. This will cause both triggers to fire simultaneously and can lead to race condition issues. This is why the above instructions have you using the 1st timer definition to add this tag instead. |