[rt-users] Seeking notification method advice
Gene LeDuc
gleduc at mail.sdsu.edu
Thu Aug 23 12:00:58 EDT 2007
Hi Tim,
You know, I'm not sure whether RT will automatically assign a From: and
Subject: if they're not supplied. I've been surprised in the past by its
cleverness, so it wouldn't surprise me at all if it uses the default queue
address and the ticket subject if you don't supply them. Try leaving off
the From: and Subject: lines and see what happens.
Otherwise, you'd want something like this:
my $from_address = 'rt at myorg.org';
my $subject = $Ticket->Transactions->First->Subject;
And yes, you need to make a new template for this. Make sure you don't
have any blank lines at the top of the template.
So, putting it all together (more or less), your template would consist of
everything between the ===== lines below
=====
{ ### Template for notifying campus techs
my $bldg = $Ticket->FirstCustomFieldValue('Building');
my $group = RT::Group->new( $RT::SystemUser );
$group->LoadUserDefinedGroup("SupportTeam-$group");
my $addresslist = $group->MemberEmailAddressesAsString;
$OUT = "To: addresslist
Boilerplate text goes here.
Have a nice day,
The RT ticketing system
";
}
=====
Robert Long added to this thread with a suggestion that might make your
template even simpler. He's put all of the perl code right after To: and
then the rest of the template is just static text. Using his suggestion,
your template would look like the stuff between the ===== lines below
=====
To: { my $bldg = $Ticket->FirstCustomFieldValue('Building');
my $group = RT::Group->new( $RT::SystemUser );
$group->LoadUserDefinedGroup("SupportTeam-$bldg");
$group->MemberEmailAddressesAsString;}
Boilerplate text goes here.
Have a nice day,
The RT ticketing system
=====
I prefer building the entire message inside my { perl code } like the first
template because I usually put dynamic stuff inside the message body and
it's easier for me to follow what I'm doing if I know that the only thing
that is going to be sent is in $OUT. But that's just the way my mind works.
Gene
At 08:45 PM 8/22/2007, Tim Wilson wrote:
> >>> On Wed, Aug 22, 2007 at 4:40 PM, in message
><6.2.1.2.2.20070822141126.025eacc8 at mail.sdsu.edu>, Gene LeDuc
><gleduc at mail.sdsu.edu> wrote:
>
> > In your template you get the value of the field with:
> > my $bldg = $Ticket- >FirstCustomFieldValue('Building');
>
> > Then you do the e- mail:
> > $OUT = "From: $from_address
> > To: $addresslist
> > Subject: $subject
> >
> > Boilerpalte text goes here.
> > ";
>
>Gene,
>
>Is there something magic about $from_address and $subject or do I need to
>create those variables? I'm assuming that I can't use the built-in RT
>templates for those since I'm adding all this perl to the template.
>
>My template now looks like this:
>
>my $bldg = $Ticket->FirstCustomFieldValue('Building');
>my $group = RT::Group->new( $RT::SystemUser );
>$group->LoadUserDefinedGroup("SupportTeam-$group");
>my $addresslist = $group->MemberEmailAddressesAsString;
>
>$OUT = "From: $from_address
>To: $addresslist
>Subject: $subject
>
>This is a test message.
>";
>
>This isn't working, and I get the following error in the RT log:
>
>Aug 22 22:37:43 support RT: error: couldn't parse head; error near: my
>$bldg
>= $Ticket->FirstCustomFieldValue('Building'); my $group = RT::Group->new(
>$RT::S
>ystemUser ); $group->LoadUserDefinedGroup("SupportTeam-$group"); my
>$addresslist
> = $group->MemberEmailAddressesAsString;
> (/usr/local/rt3/lib/RT/Template_Overlay
>.pm:336)
>
>So obviously the message isn't being generated correctly. I've been
>scouring the wiki looking for other template examples that use this sort
>of method, but I'm not having much luck making sense of them. Any help
>would be greatly appreciated.
>
>-Tim
>
>
>
>--
>Tim Wilson, Director of Technology
>Buffalo-Hanover-Montrose Schools
>214 1st Ave NE Buffalo, MN 55313
>ph: 763.682.8740 fax: 763.682.8743 http://www.buffalo.k12.mn.us
--
Gene LeDuc, GSEC
Security Analyst
San Diego State University
More information about the rt-users
mailing list