[rt-users] getting the current queue name and how to move the ticket to another queue?
Ruslan U. Zakirov
cubic at acronis.ru
Thu Apr 29 04:31:36 EDT 2004
http://wiki.bestpractical.com/index.cgi?WriteCustomAction
Read first chapter. It'll give you start point.
Swinkels, Marcel wrote:
> Hi Ruslan,
>
> sorry to bother you again. I tried to use the code you gave me:
>
> my $CurrentQueue;
> $CurrentQueue = $TicketObj->QueueObj->Name.
> $RT::Logger->info("Found queuename $CurrentQueue");
>
> But when I use that code, I get the following error:
>
> Apr 29 09:34:43 secsrv RT: Scrip 66 Prepare failed: Global symbol
> "$TicketObj" requires explicit package name at (eval 2067) line 43.
> (/opt/rt3/lib/RT/Action/UserDefined.pm:43)
>
> I used this code in a working script that already has the following
> declarations:
>
> my $IPaddress;
> my $UPCountrycode;
> my $CFNameRead = 'IPaddress';
> my $CFNameWrite = 'UPCountry';
> my $Ticket = $self->TicketObj;
> my $CustomFields = $Ticket->QueueObj->CustomFields();
> my $CF = RT::CustomField->new( $RT::SystemUser );
>
> Did I miss a declaration somewhere? I also tried to add ; or . "\n";,
> but none of these options seems to work.
>
> Regards,
>
> Marcel Swinkels
> chello abuse
> UPC Nederland
> mswinkels at upc.nl
>
> -----Original Message-----
> From: Ruslan U. Zakirov [mailto:cubic at acronis.ru]
> Sent: zaterdag 24 april 2004 15:12
> To: Swinkels, Marcel
> Cc: rt-users at lists.bestpractical.com
> Subject: Re: [rt-users] getting the current queue name and how to move
> the ticket to another queue?
>
>
> Swinkels, Marcel wrote:
>
>>Hi,
>>
>>despite reading the RTWiki pages I still don't know how I can get the
>>name (not the number) of the queue in which the ticket is in, using
>>scrip-code. I also cannot find how I can move the ticket from one
>>queue to the other using the name of the queue.
>
> 1)
>
> my $CurrentQueueName = $TicketObj->QueueObj->Name.
>
> 2)
> my $QueueObj = RT::Queue->new( $self->CurrentUser ); $QueueObj->Load(
> 'ToQueueName' ); unless( $QueueObj->id ) {
> die "Can't load queue";
> }
> $TicketObj->SetQueue( $QueueObj->id );
>
>
>
>>What I want to do is the following. A ticket comes in, the IP address
>>is filtered out and a query is made on the database to see to which
>>country the IP address belongs. That output is stored in a
>>customfield. That all works fine. I also know how to read the value of
>
>
>>a CF. Our queues are named like f.i. chello abuse AT, chello abuse NL
>>etc. The CF contains the country code. Our pre-filtering is done by
>>procmail, but because some people still mail to the wrong
>>abuseaddress, it is possible that a complaint for chello.at gets into
>>the chello abuse NL queue. Therefor I want to get the name of the
>>current queue and regexp it to see if there's a match (countrycode AT
>>= chello abuse AT?) If the ticket is in the wrong queue I want to move
>
>
>>it to the correct queue.
>>
>>Can someone tell me how I can:
>>- get the name of the current queue into a variable
>>- move a ticket to another queue using the name of it
>>
>>Thank you very much in advance for any response.
>>
>>Regards,
>>
>>Marcel Swinkels
>>chello abuse
>>UPC Nederland
>>mswinkels at upc.nl _______________________________________________
>>http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users
>>
>>RT Developer and Administrator training is coming to LA, DC and
>>Frankfurt this spring and summer.
>>http://bestpractical.com/services/training.html
>>
>>Sign up early, as class space is limited.
>
>
More information about the rt-users
mailing list