RT

From The scripts.mit.edu Wiki

(Difference between revisions)
Jump to: navigation, search
 
Line 5: Line 5:
  On status change
  On status change
'''Template:'''
'''Template:'''
-
  {$Transaction->CreatorObj->Name} changed status from {$oldStatus} to {$Ticket->Status eq "deleted" ? "BALEETED!!" : $Ticket->Status}
+
  {$Transaction->CreatorObj->Name} changed status from OLDSTATUS to {$Ticket->Status eq "deleted" ? "BALEETED!!" : $Ticket->Status}
'''Preparation code:'''
'''Preparation code:'''
  my $oldStatus = $self->TicketObj->Status;
  my $oldStatus = $self->TicketObj->Status;
Line 15: Line 15:
                                             TicketObj=>$self->TicketObj,
                                             TicketObj=>$self->TicketObj,
                                             TransactionObj=>$self->TransactionObj);
                                             TransactionObj=>$self->TransactionObj);
-
  system('/usr/athena/bin/zwrite', '-d', '-c', 'scripts', '-i', $id, '-s', $name, '-m', $msg);
+
$msg ~= s/OLDSTATUS/$oldStatus/;
 +
  system('/usr/athena/bin/zwrite', '-d', '-c', 'scripts', '-i', $id, '-s', $name, '-m', $oldStatus);
  return 1;
  return 1;

Latest revision as of 06:34, 29 May 2007

Here are our RT scrips and templates. Some coding techniques were inspired by Jon Reed <jdreed> in ticket help.mit.edu #426130 and Reid Barton <rwbarton> from http://numenor.mit.edu/~rwbarton/rt/.

Status change Zephyr

Condition:

On status change

Template:

{$Transaction->CreatorObj->Name} changed status from OLDSTATUS to {$Ticket->Status eq "deleted" ? "BALEETED!!" : $Ticket->Status}

Preparation code:

my $oldStatus = $self->TicketObj->Status;
return 1;

Cleanup code:

my $id = $self->TicketObj->id;
my $name = $self->TicketObj->Subject;
my $msg = $self->TemplateObj->_ParseContent(Argument=>$self->Argument,
                                            TicketObj=>$self->TicketObj,
                                            TransactionObj=>$self->TransactionObj);
$msg ~= s/OLDSTATUS/$oldStatus/;
system('/usr/athena/bin/zwrite', '-d', '-c', 'scripts', '-i', $id, '-s', $name, '-m', $oldStatus);
return 1;
Personal tools