
heh. If you want "Best Practices" of OTRS development, I might not be the
best source. I come from a JFDI background. :) :)
Assuming that GenericAgent.pm is calling
Kernel/System/GenericAgent/NotifyAgentGroupOfCustomQueue.pm
It's calling TicketObject->SendAgentNotification and that's about it.
This is in Kernel/System/Ticket/Article.pm which ends in
*ArticleAgentNotification
*event.
"But this happens all the time!" yeah, pretty much.
"How to test escalation response?"
it's not the event that's EscalationxxxTimexxx. That latter is actually a
Parameter attached to the result from TicketGet against the ticket object.
Basicaly, upon ArticleAgentNotification Event, you'd check the TicketGet
result's
EscalationResponseTime (unix time stamp of response time
escalation)
EscalationUpdateTime (unix time stamp of update time
escalation)
EscalationSolutionTime (unix time stamp of solution time
escalation)
versus "now" and determine if now is > than escalation and check that other
NotifyAgentGroupOfCustomQueue.pm for methods to check if it's sent but if
you're already there, you might just copy that and modify the method of
send to be jabber, then use it instead.
"What would you do?"
That last. The code to send the message only once is already made. It's all
about SendAgentNotification that's the meat of the difference between
whether to send by email or send by Jabber anyway....
"So, now what?"
Well, if I really wanted to, I'd determine if I'd plug
ArticleAgentNotification Event directly to jabber anyway. What I mean is,
the event of ArticleAgentNotification may trigger the send via Jabber event
all the time. And why not? I think that's the point of your jabber
interface anyway.
On Tue, Jul 9, 2013 at 3:51 PM, Daniel Santos wrote: Hmm... got it!!! For me, it's important to be in compliance with the 'best practices' of
OTRS development...
As I do not change anything in the ticket, like you said, its better to
have a Ticket Event triggered when the GenericAgent sends the Escalation
notification. I've tried it before, but I don't know which Event should I
verify for a escalation notification sent by the Generic Agent... would it
be something like this? ...
if ( $Ticket{Event} eq "EscalationResponseTimeNotifyBefore" ) { ... }
if ( $Ticket{Event} eq "EscalationUpdateTimeNotifyBefore" ) { ... }
if ( $Ticket{Event} eq "EscalationSolutionTimeNotifyBefore" ) { ... } ? Regards, Daniel Santosdaniel.santos@etice.ce.gov.br
ETICE - Empresa de Tecnologia da Informação do Cearáwww.etice.ce.gov.br
+55 85 3101.6600 On 07/09/13 16:30, Gerald Young wrote: If the generic agent was able to change something (dynamic field, state,
queue) that created an event, I'd use an event.
If not, I'd add the check at the same time as the other GenericAgent that
does that. "Which is the best?" In my opinion, in theory, the thing that doesn't
run code unnecessarily. In practice, the thing that works for your
situation. On Tue, Jul 9, 2013 at 3:10 PM, Daniel Santos <
daniel.santos@etice.ce.gov.br> wrote: Gerald, I used the same approach that GenericAgent uses to send escalated
notifications, which is a cron scheduled job that runs bin/
otrs.GenericAgent.pl and send escalation notifications as necessary. The
only difference on my module is that, instead of sending to e-mail, we are
sending to jabber (xmpp). In your opinion, which is the best? GenericAgent or Ticket Event? In the
meantime, which Event should I listen to if using Ticket Event? Daniel Santosdaniel.santos@etice.ce.gov.br
ETICE - Empresa de Tecnologia da Informação do Cearáwww.etice.ce.gov.br
+55 85 3101.6600 On 07/09/13 16:01, Gerald Young wrote: You could, but I don't understand why you want to use a scheduled job to
do a notification when a ticket is escalated. It would appear to me you'd
want that as an event upon occurrence, not a scheduled test if criteria has
been met. If you wish to do what you propose, how you've asked is the correct way
to accomplish the goal. On Tue, Jul 9, 2013 at 2:36 PM, Daniel Santos <
daniel.santos@etice.ce.gov.br> wrote: Hi, I've managed to get my module working... it was a typo in my Needed
Modules. Sorry about that. Now I'm wondering how can I add a new Generic Agent job in
Kernel/Config/GenericAgentJabberNotification.pm and active it without
touching Kernel/Config/GenericAgent.pm. Do I need to setup a new cron entry passing -c
"Kernel::Config::GenericAgentJabberNotification" ?? Thanks. Daniel Santos
daniel.santos@etice.ce.gov.br
ETICE - Empresa de Tecnologia da Informação do Ceará
www.etice.ce.gov.br
+55 85 3101.6600 On 07/09/13 09:24, Daniel Santos wrote: Hi, I'm setting up a Generic Agent to make some customization in my OTRS
installation to send other notifications when a ticket is escalated. But
when I try to use a Get from ConfigObject I'm always getting a: "Message:
Can't call method "Get" on an undefined value". ConfigObject is already in
the Needed objects 'qw', but still doesn't work. How can I get my module configuration parameters from Config when using
a Generic Agent? Thanks. ---------------------------------------------------------------------
OTRS mailing list: otrs - Webpage: http://otrs.org/
Archive: http://lists.otrs.org/pipermail/otrs
To unsubscribe: http://lists.otrs.org/cgi-bin/listinfo/otrs ---------------------------------------------------------------------
OTRS mailing list: otrs - Webpage: http://otrs.org/
Archive: http://lists.otrs.org/pipermail/otrs
To unsubscribe: http://lists.otrs.org/cgi-bin/listinfo/otrs ---------------------------------------------------------------------
OTRS mailing list: otrs - Webpage: http://otrs.org/
Archive: http://lists.otrs.org/pipermail/otrs
To unsubscribe: http://lists.otrs.org/cgi-bin/listinfo/otrs ---------------------------------------------------------------------
OTRS mailing list: otrs - Webpage: http://otrs.org/
Archive: http://lists.otrs.org/pipermail/otrs
To unsubscribe: http://lists.otrs.org/cgi-bin/listinfo/otrs ---------------------------------------------------------------------
OTRS mailing list: otrs - Webpage: http://otrs.org/
Archive: http://lists.otrs.org/pipermail/otrs
To unsubscribe: http://lists.otrs.org/cgi-bin/listinfo/otrs