[rt-users] Automatic assignment of tickets.

Steve Finkelstein stevefink at gmail.com
Wed Oct 11 16:21:02 EDT 2006


Is it possible at all to debug the code somehow? It's tough to debug as I'm
not able to get any output back from RT. If there is somewhere I can enable
logs for this, that'd be great. Here's my latest revision with Stephen's
suggestions. I'll pin point the line which causes the code to fail. If I
remove it, it assigns the ticket to whoever last corresponds. However, I
need it to not assign based if two individual users make a correspondance.
Those users are "foo" and "bar".

my $Actor = $self->TransactionObj->CreatorObj->Name;

return 1 if ( $Actor == "foo" || $Actor == "bar"); # This is the line that's
causing the Scrip to fail. No one gets assigned a ticket.
return 1 unless $self->TicketObj->Owner == $RT::Nobody->id;
$RT::Logger->info("Auto assign ticket #". $self->TicketObj->id ." to user
#". $Actor );
my ($status, $msg) = $self->TicketObj->SetOwner( $Actor );
unless ( $status ) {
    $RT::Logger->error( "Impossible to assign the ticket to $Actor: $msg" );
    return undef;
}
return 1;

Thanks again everyone for your help.

-- Steve
On 10/11/06, Stephen Turner <sturner at mit.edu> wrote:
>
>         Hi all,
>
>         I'm trying to automatically assign tickets whenever someone either
>
>         a) comments a ticket or alternatively,
>         b) responds to a ticket
>
>         The conditions are that the current owner is Nobody and the user
> cannot be user 'X' (my supervisor for instance, might post comments on a
> ticket first, but he's the boss and we want to exclude him from getting
> ownership.)  Here's the Scrip I put together thus far. If anyone can shed
> some light, that'd be great!
>
>         PS: If there is a better forum for me to post this on, I'd be more
> than happy to not waste any of your bandwidth and go there.
>
>         Description: Ticket Auto Assign
>         Condition: On Comment (I'm not sure how to get On Comment AND On
> reply at the same time? Need two different Scrips?)
>         Action: User Defined
>         Template: Global Template: Transaction (I'm not sure what this
> does,
> need to look it up on the Wiki)
>         Stage: Disabled (No idea what this one does either ..)
>         Custom Condition:
>         Custom Action Preparation Code:
>
>         my $notOwner = "billybob"; # I don't want billybob to get assigned
> any tickets no matter if he replies first
>         my $Actor = $self->TransactionObj->Creator;
>
>         return 1 unless $self->TicketObj->Owner == $RT::Nobody->id;
>         $RT::Logger->info("Auto assign ticket #". $self->TicketObj->id ."
> to
> user #". $Actor );
>         my ($status, $msg) = $self->TicketObj->SetOwner( $Actor ) unless
> $Actor == $notOwner;
>         unless ( $status ) {
>             $RT::Logger->error( "Impossible to assign the ticket to
> $Actor:
> $msg" );
>             return undef;
>         }
>         return 1;
>         Custom action cleanup code: return 1;
>
>         This doesn't look to do the trick. Any suggestions again, would be
> more than appreciated.
>
>         Thanks all!
>         --
>         Steve
>
> ------------------------------------------
> Hi Steve,
>
> This is exactly the right forum!
>
> You don't mention what's actually happening - in what way is this failing?
> Are there error messages in the RT log when this scrip is activated? Or
> does
> it just silently not do what you want?
>
> To have the scrip respond to either a comment or a reply, you could use a
> custom/user-defined condition that checks the transaction type - relevant
> values are 'Comment' and 'Correspond'.
>
> For scrips that don't need to send email, you should use the Blank
> template.
>
> I did notice one thing in the code: "unless $Actor == $notOwner". This
> won't
> work, as $Actor is an Id number whereas $notOwner is a user name (string).
> You can get the user name of the "actor" by doing
> $self->TransactionObj->CreatorObj->Name.
>
> Good luck,
> Steve
>
> ----------------------------------------
> Stephen Turner
> Senior Programmer/Analyst - Client Support Services
> MIT Information Services and Technology (IS&T)
>
>
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.bestpractical.com/pipermail/rt-users/attachments/20061011/da97a913/attachment.htm>


More information about the rt-users mailing list