Automatic take

Suppose there is a new unassigned ticket. Suppose I reply to the ticket
via email. Is there some way for my RT account to automatically take the
ticket? If so, how?

If this is a bad idea, why?

Suppose there is a new unassigned ticket. Suppose I reply to the
ticket
via email. Is there some way for my RT account to automatically take
the
ticket? If so, how?

We have this set up.

You need to add a Scrip to do it. We have a Global scrip called
AutoTakeOnCorrespond, which has the following custom action. You’ll
notice there are some parts of it (particularly the line about the
syshelp queue) which are specific to our site, so you will want to
change parts of it.

my $correspondent = $self->TransactionObj->Creator;

don’t auto-take for “root”

return 1 if $correspondent == $RT::SystemUser->id;

only auto-take if owned by Nobody

return 1 unless $self->TicketObj->Owner == $RT::Nobody->id;

don’t auto-take tickets in “syshelp”

return 1 if $self->TicketObj->QueueObj->Name eq ‘syshelp’;

don’t auto-take if correspondent is requestor

see Request Tracker Wiki

my $rgobj = $self->TicketObj->Requestors;
my $rmobj = $rgobj->UserMembersObj;
my $uobj;
while ($uobj = $rmobj->Next) {
if ($uobj->PrincipalObj->Id == $correspondent) {
$RT::Logger->info(“Not auto-assigning ticket #” . $self-

TicketObj->id . " to its requestor");
return 1;
}
}

$RT::Logger->info(“Auto assign ticket #”. $self->TicketObj->id ." to
user #". $correspondent );
my ($status, $msg) = $self->TicketObj->SetOwner( $correspondent );
unless( $status ) {
$RT::Logger->error( “Impossible to assign ticket to $correspondent:
$msg” );
return undef;
}
return 1;

The Wellcome Trust Sanger Institute is operated by Genome Research
Limited, a charity registered in England with number 1021457 and a
company registered in England with number 2742969, whose registered
office is 215 Euston Road, London, NW1 2BE.