Ticket rules can be scheduled:
- for a specific day and time
- can run on an interval (e.g. every 15 minutes)
- can run everytime a ticket is saved
You establish this schedule by setting the "frequency" of your rule.
But a problem arises when you want to implement a rule that only does something at a certain time of day. For example, you only want to escalate tickets to a 24x7 contact if it is after business hours.
The good news is that "frequency" is NOT the only scheduling that you can do. You can further limit when a rule is processed beyond those values.
The way to do this is in the query itself.
For whatever query you write, if you can add in some date and / or time criteria.
For example, to limit a query to run within a certain date window (Christmas Vacation) of after work on Dec 19th, 2008 and morning of January 2nd, 2008 you would add the following SQL to your query:
and NOW()>'2008-12-19 17:00:00' and NOW() < '2009-01-02 08:00:00'
To limit a query to run within a certain time window (every night) then you could add something like this:
and TIME(NOW())>'17:00:00' and TIME(NOW())<'08:00:00'
Now, while the rule might fire during those times, the query will not return any rows and thus the other actions of the rule will not take place