1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104
|
=head1 Service Level Agreements
This is used to automate C<Starts>/C<Due> date setting. Almost everything is
controlled in RT's config using C<%ServiceAgreements> and
C<%ServiceBusinessHours>. Please check their documents in C<RT_Config.pm> for
full details. This is a cookbook to give you a quick sense of how flexible and
powerful RT's SLA support is.
=head2 Show me a basic config that simply works?
No problem.
Set( %ServiceAgreements, (
Default => 'standard',
Levels => {
'standard' => {
Starts => { RealMinutes => 0 },
Resolve => { RealMinutes => 8*60 },
},
'urgent' => {
Starts => { RealMinutes => 0 },
Resolve => { RealMinutes => 2*60 },
},
},
));
With this, tickets' C<Starts> date will be set to tickets' C<Created> date,
and C<Due> date will be set to 2 or 8 hours after C<Created> date, based on
the which SLA value ("standard" or "urgent") is chosen.
=head2 Does it support business time instead of real time?
Sure.
Set( %ServiceAgreements, (
Default => 'standard',
Levels => {
'standard' => {
Resolve => { BusinessMinutes => 4*60 },
},
},
));
You also need to define what business time is:
Set( %ServiceBusinessHours, (
'Default' => {
1 => { Name => 'Monday', Start => '9:00', End => '18:00' },
2 => { Name => 'Tuesday', Start => '9:00', End => '18:00' },
3 => { Name => 'Wednesday', Start => '9:00', End => '18:00' },
4 => { Name => 'Thursday', Start => '9:00', End => '18:00' },
5 => { Name => 'Friday', Start => '9:00', End => '18:00' },
},
));
=head2 Does business time support holidays?
Yep!
Set( %ServiceBusinessHours, (
'Default' => {
1 => { Name => 'Monday', Start => '9:00', End => '18:00' },
2 => { Name => 'Tuesday', Start => '9:00', End => '18:00' },
3 => { Name => 'Wednesday', Start => '9:00', End => '18:00' },
4 => { Name => 'Thursday', Start => '9:00', End => '18:00' },
5 => { Name => 'Friday', Start => '9:00', End => '18:00' },
holidays => [qw(01-01 12-25 2015-10-12)],
},
));
=head2 Does it support response due?
Yep. e.g.
Set( %ServiceAgreements, (
Default => 'standard',
Levels => {
'standard' => {
Starts => { RealMinutes => 0 },
Response => { RealMinutes => 8*60 },
},
},
));
With this, C<Due> date will be automatically unset after you reply to your
clients. When your clients reply back, it'll be set to 8 hours after that.
You can define both "Response" and "Resolve" and RT will pick the one that
comes earlier as the C<Due> date.
=head2 Could I ignore C<Due> date for stalled tickets?
Sure!
Set( %ServiceAgreements, (
Default => 'standard',
Levels => {
'standard' => {
Starts => { RealMinutes => 0 },
Resolve => { RealMinutes => 8*60, IgnoreOnStatuses => ['stalled'] },
},
},
));
|