Finding semi-composed emails

One of our users has a habit of clicking ‘reply’, typing a response, and
then getting distracted somewhere, and never actually sending the
response until he rediscovers it in one of his mozilla tabs a few days
later.

He’s noticed that RT logs the event of him clicking ‘reply’, and so has
asked if there’s a way to run a query for the tickets where that has
happened but no actually response has been made.

I’ve had a look but can’t find an obvious way to query this.

Any suggestions?

Thanks,

Tony

One of our users has a habit of clicking ‘reply’, typing a response, and
then getting distracted somewhere, and never actually sending the
response until he rediscovers it in one of his mozilla tabs a few days
later.

He’s noticed that RT logs the event of him clicking ‘reply’,

That’s news to me. Perhaps he means that the webserver logs it?

Jesse

He’s noticed that RT logs the event of him clicking ‘reply’,
That’s news to me. Perhaps he means that the webserver logs it?

No, RT logs it. He showed me it happening.

It lists it as “correspondence added”, even though there actually hasn’t
been any added yet.

Tony

He’s noticed that RT logs the event of him clicking ‘reply’,
That’s news to me. Perhaps he means that the webserver logs it?

No, RT logs it. He showed me it happening.

It lists it as “correspondence added”, even though there actually hasn’t
been any added yet.

So what you’re saying is that you’re using RT against a mysql that
doesn’t have support for transactions or your tables are of the wrong
type. (They’re not innodb).

He’s noticed that RT logs the event of him clicking ‘reply’,
That’s news to me. Perhaps he means that the webserver logs it?
No, RT logs it. He showed me it happening.
It lists it as “correspondence added”, even though there actually hasn’t
been any added yet.
So what you’re saying is that you’re using RT against a mysql that
doesn’t have support for transactions or your tables are of the wrong
type. (They’re not innodb).

It’s certainly not what I’m trying to say. Perhaps it’s what it means.
AFAIK (althought I didn’t do the setup) this is a normal debian install.

The issues remain:

  1. RT logs the act of hitting ‘reply’ as “Correspondence added”

  2. I’d like to run queries against this

Are you saying (1) shouldn’t really happen, and thus (2) isn’t possible?

Tony

He’s noticed that RT logs the event of him clicking ‘reply’,
That’s news to me. Perhaps he means that the webserver logs it?
No, RT logs it. He showed me it happening.
It lists it as “correspondence added”, even though there actually hasn’t
been any added yet.
So what you’re saying is that you’re using RT against a mysql that
doesn’t have support for transactions or your tables are of the wrong
type. (They’re not innodb).

It’s certainly not what I’m trying to say. Perhaps it’s what it means.
AFAIK (althought I didn’t do the setup) this is a normal debian install.

The issues remain:

  1. RT logs the act of hitting ‘reply’ as “Correspondence added”

  2. I’d like to run queries against this

Are you saying (1) shouldn’t really happen, and thus (2) isn’t possible?

Yes. Except I’d go so far as to say “Really shouldn’t happen”

On one of my queues, the Developers only see correspondence on the
tickets that they own.

But one of the developers has to take the role of watcher for the queue
(to manage workflow).
When the watcher owns the ticket they get two copies of correspondence.

Any tips on customizing a template so that they only get 1 copy?

The scrips that currently send 1 copy each to watcher/owner.
On Correspond Notify AdminCcs with template Admin correspondence
On Correspond Notify Owner with template Admin correspondence

The default Admin correspondence template looks like this:
RT-Attach-Message: yes

<URL: {$RT::WebURL}Ticket/Display.html?id={$Ticket->id} >

{$Transaction->Content()}

I’d like to create a modified template that does something like:
if they’re not an AdminCc or Cc
then email them

and I’d add this logic check on the template I’d call that notifiies owner.

I’d greatly appreciate your suggestions.

My Build:
FreeBSD 4.11 / RT 3.2.2 / Perl 5.8.4 / Apache 1.33 Modssl / Mod_Perl
1.29 / Sendmail 8.13.1/

One way.
Insert new record into table ScripActions with next column values:
Name: Notify Owner and AdminCcs
ExecModule: Notify
Argument: Owner,AdminCc
Other column values take from existant records in this table:
SELECT * FROM ScripActions;

Then delete one of the scrips and change action of the other scrip to
action that has been inserted.

Mike Patterson wrote:

By browsing the code and the wiki I determined that I want to define a
Custom Action e.g. “Notify Owner and AdminCc’s”.
Then I would use it in a scrip “On Comment Notify Owner and AdminCc’s
using Template Admin comment”

I wasn’t able to figure out the syntax to create a CustomAction…
Basically I wanted to

“NotifyAsComment(AdminCc,Owner)”

But I wasn’t sure where to add that line and what should go in the other
boxes:
Custom condition:
Custom action preparation code:
Custom action cleanup code:

By browsing the tables I figured out how to insert a row that would has
the desired effect, note previous row was row ‘17’

INSERT INTO ScripActions ( id , Name , Description ,
ExecModule , Argument , Creator , Created , LastUpdatedBy ,
LastUpdated )
VALUES (
‘18’, ‘NotifyAsComment Owners and AdminCcs’, ‘Send mail to Owners and
AdminCcs’, ‘NotifyAsComment’, ‘AdminCc,Owner’, ‘1’, ‘2005-01-11
08:42:51’, ‘1’, ‘2005-01-11 08:42:51’
);

Then I was able to call that action in scrip (it shows up on drop-down
list now).
My problem is solved, but I would have preferred to have use builtin
method of adding CustomActions. Any tips concerning what should have
gone in the “Custom condition:” “Custom action preparation code:” and
"Custom Action cleanup code:" to create a CustomAction within my scrip?

Thanks,
Mike

Ruslan,

Thank you for your excellent suggestion.
I was troubleshooting this morning and came to the same conclusion, then
posted w/o reading your message.
This seems to be working well although I suppose it would feel a bit
cleaner if I defined it as a CustomAction.

Mike

Ruslan U. Zakirov wrote:

Mike Patterson wrote:

By browsing the code and the wiki I determined that I want to define a
Custom Action e.g. “Notify Owner and AdminCc’s”.
No, you don’t want CustomAction.

Then I would use it in a scrip “On Comment Notify Owner and AdminCc’s
using Template Admin comment”
[snip]

By browsing the tables I figured out how to insert a row that would has
the desired effect, note previous row was row ‘17’

INSERT INTO ScripActions ( id , Name , Description ,
ExecModule , Argument , Creator , Created , LastUpdatedBy ,
LastUpdated )
VALUES (
‘18’, ‘NotifyAsComment Owners and AdminCcs’, ‘Send mail to Owners and
AdminCcs’, ‘NotifyAsComment’, ‘AdminCc,Owner’, ‘1’, ‘2005-01-11
08:42:51’, ‘1’, ‘2005-01-11 08:42:51’
);

Then I was able to call that action in scrip (it shows up on drop-down
list now).
Yeah, it’s way to go for now.

My problem is solved, but I would have preferred to have use builtin
method of adding CustomActions. Any tips concerning what should have
gone in the “Custom condition:” “Custom action preparation code:” and
"Custom Action cleanup code:" to create a CustomAction within my scrip?
You want WebUI admin tool to manage ScripActions table. It’s not
implemented.

It lists it as “correspondence added”, even though there actually hasn’t
been any added yet.

So what you’re saying is that you’re using RT against a mysql that
doesn’t have support for transactions or your tables are of the wrong
type. (They’re not innodb).

Does that mean you are wrapping sql transactions around multiple http
pages/events?

Les Mikesell
les@futuresource.com

It lists it as “correspondence added”, even though there actually hasn’t
been any added yet.

So what you’re saying is that you’re using RT against a mysql that
doesn’t have support for transactions or your tables are of the wrong
type. (They’re not innodb).

Does that mean you are wrapping sql transactions around multiple http
pages/events?

No. But it means that we’re depending on the database rolling back when
we tell it to.