Scrip which retrieves all the users with TakeTicket permission for a ticket or its queue

Hi,

I want to give all the users who can “TakeTicket” the opportunity to do
so, by notifying them. But I don’t want to add them to the AdminCC list
as they would get far too much mail.

So I want to create a custom scrip which “On Create”, searches for all
the users who have “TakeTicket” right, and send them a Template email
notifying them.

I haven’t the foggiest how to start to do this, and the wiki seems to be
partially down at the moment, or at least very slowat the mo.

Thanks,

T.

Tom,

If you can put them all in one group, or if they are already in groups 

that only have “takers” as members, then list the group(s) in the
Watchers: “CC” of the appropriate queues. Then all you need do is create
a notification scrip for “OnCreate” to “Notify CC’s”. That would work.
How do you plan to maintain the membership of this “Takers” group?

Kenn
LBNLOn 1/11/2008 9:23 AM, Tom H wrote:

Hi,

I want to give all the users who can “TakeTicket” the opportunity to do
so, by notifying them. But I don’t want to add them to the AdminCC list
as they would get far too much mail.

So I want to create a custom scrip which “On Create”, searches for all
the users who have “TakeTicket” right, and send them a Template email
notifying them.

I haven’t the foggiest how to start to do this, and the wiki seems to be
partially down at the moment, or at least very slowat the mo.

Thanks,

T.


The rt-users Archives

Community help: http://wiki.bestpractical.com
Commercial support: sales@bestpractical.com

Discover RT’s hidden secrets with RT Essentials from O’Reilly Media.
Buy a copy at http://rtbook.bestpractical.com

Kenneth Crocker wrote:

Tom,

If you can put them all in one group, or if they are already in

groups that only have “takers” as members, then list the group(s) in the
Watchers: “CC” of the appropriate queues. Then all you need do is create
a notification scrip for “OnCreate” to “Notify CC’s”. That would work.
How do you plan to maintain the membership of this “Takers” group?

Surely, if the “project A group” was in the watchers CC list for the
"project A queue", then that “project A group” would get copies of all
the replies to all the tickets to that queue, regardless of whether they
owned it or not? (I thought that was the point of the watchers CC list)

Basically, I want all the users in the group to get notified that there
is a new ticket, but not for that group to get all the replies.

realistically, anyone who has seeQueue and takeTicket for a queue, is
going to be able to see and take the ticket using the web interface. So
all I am suggesting is something to notify those users of that fact.

I’m thinking something along the lines of

foreach($user = $this->userList){
if($this->queue->hasRight(‘TakeTicket’, $user)){
print “CC: $user->emailAddress \n”;
}
}

But I don’t know perl that well, so I am going to have to look into this
further.

Tom

Tom,

Getting an email notification that a ticket was created is not the same 

as getting an email for ALL correspondence. Setting up a scip for
“OnCreate” will NOT trigger when there is just correspondence. A Ticket
created in 1 queue by self-service (email) will only trigger 1 time. Any
other correspondence in that queue for that ticket will only trigger
another email if it is set for “OnCorrespondence”. Maybe I don’t
understand what your problem is.

Kenn
LBNLOn 1/11/2008 2:32 PM, Tom H wrote:

Kenneth Crocker wrote:

Tom,

If you can put them all in one group, or if they are already in

groups that only have “takers” as members, then list the group(s) in the
Watchers: “CC” of the appropriate queues. Then all you need do is create
a notification scrip for “OnCreate” to “Notify CC’s”. That would work.
How do you plan to maintain the membership of this “Takers” group?

Surely, if the “project A group” was in the watchers CC list for the
“project A queue”, then that “project A group” would get copies of all
the replies to all the tickets to that queue, regardless of whether they
owned it or not? (I thought that was the point of the watchers CC list)

Basically, I want all the users in the group to get notified that there
is a new ticket, but not for that group to get all the replies.

realistically, anyone who has seeQueue and takeTicket for a queue, is
going to be able to see and take the ticket using the web interface. So
all I am suggesting is something to notify those users of that fact.

I’m thinking something along the lines of

foreach($user = $this->userList){
if($this->queue->hasRight(‘TakeTicket’, $user)){
print “CC: $user->emailAddress \n”;
}
}

But I don’t know perl that well, so I am going to have to look into this
further.

Tom


The rt-users Archives

Community help: http://wiki.bestpractical.com
Commercial support: sales@bestpractical.com

Discover RT’s hidden secrets with RT Essentials from O’Reilly Media.
Buy a copy at http://rtbook.bestpractical.com

Kenneth Crocker wrote:

Tom,

If you can put them all in one group, or if they are already in

groups that only have “takers” as members, then list the group(s) in the
Watchers: “CC” of the appropriate queues. Then all you need do is create
a notification scrip for “OnCreate” to “Notify CC’s”. That would work.
How do you plan to maintain the membership of this “Takers” group?

Hi,

I see what you mean now, If I removed the following global script;
" (no value)
On Correspond Notify Requestors and Ccs with template Correspondence"

And replaced it with the following;
" (no value)
On Correspond Notify Requestors with template Correspondence"
and
" (no value)
On Create Notify cs with template Correspondence"

And added my “project A group” to the watchers list for “project A
queue”, then the CC list would only be notified of new tickets, and not
get all the correspondence!!!

I guess I was hoping not to mess with the default watchers CC list - but
as I have not plans to use it currently, that makes for a neat solution.

(I think I have got that correctly?)

Thanks,

Tom Hodder

Tom,

You might want to use a different template for the "onCreate" scrip.

Kenn
LBNLOn 1/11/2008 10:41 PM, Tom H wrote:

Kenneth Crocker wrote:

Tom,

If you can put them all in one group, or if they are already in

groups that only have “takers” as members, then list the group(s) in the
Watchers: “CC” of the appropriate queues. Then all you need do is create
a notification scrip for “OnCreate” to “Notify CC’s”. That would work.
How do you plan to maintain the membership of this “Takers” group?

Hi,

I see what you mean now, If I removed the following global script;
" (no value)
On Correspond Notify Requestors and Ccs with template Correspondence"

And replaced it with the following;
" (no value)
On Correspond Notify Requestors with template Correspondence"
and
" (no value)
On Create Notify cs with template Correspondence"

And added my “project A group” to the watchers list for “project A
queue”, then the CC list would only be notified of new tickets, and not
get all the correspondence!!!

I guess I was hoping not to mess with the default watchers CC list - but
as I have not plans to use it currently, that makes for a neat solution.

(I think I have got that correctly?)

Thanks,

Tom Hodder