[rt-users] Send email from template
Kenneth Crocker
kfcrocker at lbl.gov
Mon May 3 12:32:31 EDT 2010
Givano,
I have a scrip that sets the owner based on the value in a Custom Field.
Look at it and modify it to meet your needs:
# Custom Action preparation code
my $trans = $self->TransactionObj;
my $ticket = $self->TicketObj;
#
# set new ticket owner id value
#
# 42 - Bob
# 148 - Carol
# 5125 - Ted
# 9324 - Alice
#
my %orgs = qw(
Budget 148
Controller 5125
Facilities 42
Field-OPS 5125
Property 9324
SPO 148
Travel 5125
Other 42
);
my $cf = new RT::CustomField($RT::SystemUser);
$cf->LoadByName(Queue => $ticket->QueueObj->id,Name => "CFO-Org");
# check for valid CF-Org value first,
# then set new Ticket Owner ID
if ($cf->id)
{
my $cfvalue = $ticket->FirstCustomFieldValue('CFO-Org');
my $ownerid = $orgs{$cfvalue};
$ticket->SetOwner($ownerid);
}
return 1;
You could easily replace the owner Ids with your email address and instead
of setting the ownerid, set the "To" address or whatever.
Anyway, hope this helps. It sure works for us.
Kenn
LBNL
On Mon, May 3, 2010 at 8:49 AM, Givano <givano at gmail.com> wrote:
> Hi,
>
> I'm trying to send an email from template, initiated by rt-crontool as
> described in wiki, the only trick is that dependent on custom field it
> should be sent to other persons group. Here my template, somehow it always
> send to user1 and user 2.
>
> ########################
> Subject: new ticket, 30 minutes unowned!
> RT-Send-Cc: { my $values = $Ticket->CustomFieldValues('CIT_Category');
> my $OUTPUT;
> my $CFValue;
> while ( my $value = $values->Next ) {
> $CFValue = $value->Content;
> if ($CFValue == 'IT Facilites') { $OUTPUT = 'user1 at dom.com,
> user2 at dom.com' }
> elsif ($CFValue == 'Linux/Network') { $OUTPUT = 'user3 at dom.com,
> user4 at dom.com' }
> elsif ($CFValue == 'Phone') { $OUTPUT = 'user5 at dom.com, user6 at dom.com'
> }
> elsif ($CFValue == 'Windows') { $OUTPUT = 'user7 at dom.com,
> user8 at dom.com' }
> }
> $OUTPUT;
> }
>
> The ticket {$Ticket->id} stayed unowned for 30 minutes.
>
> Please do a categorisation, assign optionally an owner!
> ######################################
>
> Any idea what I'm doing wrong, maybe there is some, more elegant method to
> do a custom field based escalation, here is how I'am starting the
> rt-crontool:
>
> rt-crontool --search RT::Search::FromSQL --search-arg "id = 23331" --action
> RT::Action::RecordComment --template 'UnownedNotifyWatcherLevel1'
>
> Thanks in advance,
>
> Ivan Samarin
>
>
>
> Discover RT's hidden secrets with RT Essentials from O'Reilly Media.
> Buy a copy at http://rtbook.bestpractical.com
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.bestpractical.com/pipermail/rt-users/attachments/20100503/cd1f067c/attachment.htm>
More information about the rt-users
mailing list