Hi Johan,
Thanks for posting your update.
You could make that a bit more efficient by setting the start and end variables in RULE_INIT as static variables (in v10). You could also save a few cycles by wrapping the expr operands in curly braces:
set start [expr (${start_month}000000 + ${start_day}0000 + ${start_hour}00 + ${start_minute} )]
set end [expr (${end_month}000000 + ${end_day}0000 + ${end_hour}00 + ${end_minute} )]
->
set start [expr {${start_month}000000 + ${start_day}0000 + ${start_hour}00 + ${start_minute} }]
set end [expr {${end_month}000000 + ${end_day}0000 + ${end_hour}00 + ${end_minute} }]
Also, if you're on 10.x, it would be more efficient to replace matchclass with 'class match'.
Aaron