[rt-users] first time writing scrips, and having problems with auto-resolving and setting transation's timetaken
Ruslan U. Zakirov
Ruslan.Zakirov at acronis.com
Thu Sep 30 04:36:06 EDT 2004
hubert lubaczewski wrote:
> hi
> first of all - i'm using rt 3.0.6. (will be upgradeing very soon, but
> right now it's all i have).
>
> i wanted to write a scrip which will allow me to resolve tickets and set
> "timetaken" per transaction in mails i send to rt (which later are added
> as correspondence to tickets).
> so i wrote this scrip:
>
> #v+
> my $sContent = $self->TransactionObj->ContentObj->Content;
> my $sCreator = $self->TransactionObj->CreatorObj->EmailAddress;
>
> return 1 unless $sCreator =~ /^[a-z\.]+\@OUR_DOMAIN$/;
>
> $sContent =~ s/\s*$//; # this makes $sContent
> $sContent =~ s/^.*\n//s; # Contain only last non-empty line
> return 1 unless $sContent =~ s/^xx:\s+//;
>
> if ($sContent =~ s/(^|\s+)w:(\d+)($|\s+)/ /) {
> my $tic = $self->TicketObj;
> my @a = $tic->SetTimeWorked( $tic->TimeWorked + $2 );
>
> }
> if ($sContent =~ s/(^|\s+)s:(resolved|stalled|rejected)($|\s+)/ /) {
> $self->TicketObj->SetStatus($2);
> }
>
> return 1;
> #v-
>
> looks simple.
> 1st.
> i would like to set timetaken per transation, but when i tried:
> $self->TransactionObj->SetTimeTaken($2);
> i got error: Immutable Field.
I'm not shure that you can set it without breaking RT calcs on this
field, but anyway you can use low level call _Set.
>
> is there anything i can do without modifiyng .pm's (i know about
> writing _Local.pm's, but i dont like the idea).
>
> 2nd (and more important).
> When i do SetStatus this way - it works, BUT - then goes global scrip:
> "On Correspond Open Tickets with template Blank"
> which is (as far as i know) standard in rt.
you can incorporate this global scrip into your action.
if ($sContent =~ s/(^|\s+)s:(resolved|stalled|rejected)($|\s+)/ /) {
$self->TicketObj->SetStatus($2);
} else {
$self->TicketObj->SetStatus('open');
}
Or add custom condition on this global scrip that check if mail contain
this special instruction.
>
> i like this global scrip so i'm not goging to turn this off, but maybe
> there is a way to temporary disable it when i setstatus otherwise?
>
> i really hope some of you can help me, and sorry for my english.
>
> depesz
>
More information about the rt-users
mailing list