Hallo zusammen!
Wir haben die Aufgabe, für ein neues SLA automatisch Benachrichtigungen zu versenden, wenn bestimmte Zeiten abgelaufen sind. Allerdings beginnen diese Zeiten nicht an dem Erstellzeitpunkt des Tickets, sondern hängen vom Wert eines Dynamic Field vom Typ Date/Time ab.
Bisher haben wir keine Methode gefunden, wie wir solche Benachrichtigungen anlegen können. Dabei sind es ja nichts anderes als Escalations, nur mit einem anderen Bezugspunkt. Kann uns jemand mit einem Hinweis weiterhelfen?
Vielen Dank und viele Grüße,
GL
Zeitgesteuerte Benachrichtigungen abhängig von einem Dynamic
-
- Znuny guru
- Posts: 5018
- Joined: 13 Mar 2011, 09:54
- Znuny Version: 6.0.x
- Real Name: Renée Bäcker
- Company: Perl-Services.de
- Contact:
Re: Zeitgesteuerte Benachrichtigungen abhängig von einem Dyn
Du müsstest https://github.com/OTRS/otrs/blob/rel-3 ... t.pm#L2568 anpassen...
Perl / Znuny development: http://perl-services.de
Free Znuny add ons from the community: http://opar.perl-services.de
Commercial add ons: http://feature-addons.de
Free Znuny add ons from the community: http://opar.perl-services.de
Commercial add ons: http://feature-addons.de
Re: Zeitgesteuerte Benachrichtigungen abhängig von einem Dyn
Danke reneeb,
allerdings erscheint es mir für den ersten Lösungsansatz ein etwas zu massiver Eingriff zu sein, im originalem Code herumzufuschen.
(Siehe unten für diesbezüglich offene Fragen)
Gibt es keine Möglichkeit, custom-scripte zu erstellen und einzubinden?
Gibt es vielleicht sogar schon etwas fertiges?
Wir sind z.B. auf ein PlugIn gestoßen:
http://opar.perl-services.de/dist/EscalationPlus-1.3.6
beim ersten Blick scheint es noch nicht 100% zu passen, aber ich teste noch.
Ich habe auch nichts dagegen, selbst zu scripten, aber dazu bräuchte ich noch Anleitunghilfe, also etwas im Stile der original Handbücher - nur näher zum Problemfall.
Offene Fragen zur vorgeschlagene Scriptstelle:
Mir wäre im Moment auch noch nicht klar, ob und wie ich eher pauschal oder konkret das betreffende Dynamic-Field hier abfrage.
Geschähe das ergänzend oder als Ersatz für $Escalation{FirstResponseTime}?
Mein Vermutung zum Vorschlag:
ich lasse $Escalation{FirstResponseTime} 'denken' mein Dynamic-Field wäre der Startwert für die FirstResponseTime
Also in Zeile 2568
anstelle von
String => $Ticket{Created}
Den Wert vom Dynamic-Field setzen.
String => $Ticket{DynamicField_MeinDatumFeld}
So einfach?
Wo kann ich die korrekte Syntax nachlesen?
Was wäre das richtige 'M' in RTFM?
allerdings erscheint es mir für den ersten Lösungsansatz ein etwas zu massiver Eingriff zu sein, im originalem Code herumzufuschen.
(Siehe unten für diesbezüglich offene Fragen)
Gibt es keine Möglichkeit, custom-scripte zu erstellen und einzubinden?
Gibt es vielleicht sogar schon etwas fertiges?
Wir sind z.B. auf ein PlugIn gestoßen:
http://opar.perl-services.de/dist/EscalationPlus-1.3.6
beim ersten Blick scheint es noch nicht 100% zu passen, aber ich teste noch.
Ich habe auch nichts dagegen, selbst zu scripten, aber dazu bräuchte ich noch Anleitunghilfe, also etwas im Stile der original Handbücher - nur näher zum Problemfall.
Offene Fragen zur vorgeschlagene Scriptstelle:
Mir wäre im Moment auch noch nicht klar, ob und wie ich eher pauschal oder konkret das betreffende Dynamic-Field hier abfrage.
Geschähe das ergänzend oder als Ersatz für $Escalation{FirstResponseTime}?
Mein Vermutung zum Vorschlag:
ich lasse $Escalation{FirstResponseTime} 'denken' mein Dynamic-Field wäre der Startwert für die FirstResponseTime
Also in Zeile 2568
anstelle von
String => $Ticket{Created}
Den Wert vom Dynamic-Field setzen.
String => $Ticket{DynamicField_MeinDatumFeld}
So einfach?
Wo kann ich die korrekte Syntax nachlesen?
Was wäre das richtige 'M' in RTFM?
-
- Znuny guru
- Posts: 5018
- Joined: 13 Mar 2011, 09:54
- Znuny Version: 6.0.x
- Real Name: Renée Bäcker
- Company: Perl-Services.de
- Contact:
Re: Zeitgesteuerte Benachrichtigungen abhängig von einem Dyn
Du kannst eigene Module entwickeln. Die Variante mit den geringsten Eingriffen in den originalen Code ist hier (geht so leider nur bei Ticket-Funktionen, sonst ist es etwas aufwändiger) ein Ticket::Custom-Modul zu schreiben, dass nur diese eine kleine Methode überschreibt.glamken wrote:Danke reneeb,
allerdings erscheint es mir für den ersten Lösungsansatz ein etwas zu massiver Eingriff zu sein, im originalem Code herumzufuschen.
(Siehe unten für diesbezüglich offene Fragen)
Gibt es keine Möglichkeit, custom-scripte zu erstellen und einzubinden?
Sieht eigentlich ganz gut aus, wenn es noch nicht perfekt passt, wäre es vielleicht eine gute Erweiterung.Gibt es vielleicht sogar schon etwas fertiges?
Wir sind z.B. auf ein PlugIn gestoßen:
http://opar.perl-services.de/dist/EscalationPlus-1.3.6
beim ersten Blick scheint es noch nicht 100% zu passen, aber ich teste noch.
Ein Handbuch kann ich nicht bieten, aber Du kannst hier natürlich jederzeit Fragen stellen. Wie gesagt, ein Anfang wäre ein Custom-Modul. Eine Basis findest Du unter https://github.com/OTRS/otrs/blob/rel-3 ... pm.exampleIch habe auch nichts dagegen, selbst zu scripten, aber dazu bräuchte ich noch Anleitunghilfe, also etwas im Stile der original Handbücher - nur näher zum Problemfall.
Als erstes müsstest Du https://github.com/OTRS/otrs/blob/rel-3 ... t.pm#L2495 anpassen, so dass die Dynamischen Felder auch abgeholt werden (statt "0" eben "1").Offene Fragen zur vorgeschlagene Scriptstelle:
Mir wäre im Moment auch noch nicht klar, ob und wie ich eher pauschal oder konkret das betreffende Dynamic-Field hier abfrage.
Genau das wäre auch mein AnsatzGeschähe das ergänzend oder als Ersatz für $Escalation{FirstResponseTime}?
Mein Vermutung zum Vorschlag:
ich lasse $Escalation{FirstResponseTime} 'denken' mein Dynamic-Field wäre der Startwert für die FirstResponseTime
Also in Zeile 2568
anstelle von
String => $Ticket{Created}
Den Wert vom Dynamic-Field setzen.
String => $Ticket{DynamicField_MeinDatumFeld}
So einfach?
Wenn Dein Dynamisches Feld "MeinDatumFeld" heißt, dann warst Du mit Deiner Vermutung schon richtig.Wo kann ich die korrekte Syntax nachlesen?
Die Felder, die TicketGet() liefert, kannst Du auch unter http://otrs.perl-services.de/docs/otrs/ ... icket.html bei TicketGet() nachschauen.
Für vieles gibt es kein "M" - auch weil es einfach 1000 Ecken gibt an denen man etwas drehen kann - und vieles kommt einfach mit der Erfahrung. Syntax etc. kannst Du in der Dokumentation unter http://otrs.perl-services.de/docs/ nachschauen. Ich habe mal einen kleinen Dev-Workshop gehalten, bei dem einige der 1000 Ecken erläutert wurden. Material findest Du unter http://otrs.perl-services.de/workshop.htmlWas wäre das richtige 'M' in RTFM?
Perl / Znuny development: http://perl-services.de
Free Znuny add ons from the community: http://opar.perl-services.de
Commercial add ons: http://feature-addons.de
Free Znuny add ons from the community: http://opar.perl-services.de
Commercial add ons: http://feature-addons.de
Re: Zeitgesteuerte Benachrichtigungen abhängig von einem Dyn
Danke erstmal.
Ich werde dann mal stöbern und ggf. Fragen oder Erfolge vermelden.
(hoffentlich letzteres, wahrscheinlich ersteres)
Ich werde dann mal stöbern und ggf. Fragen oder Erfolge vermelden.
(hoffentlich letzteres, wahrscheinlich ersteres)