Zeitgesteuerte Benachrichtigungen abhängig von einem Dynamic

Hilfe zu Znuny Problemen aller Art
Locked
glamken
Znuny newbie
Posts: 3
Joined: 14 Jul 2014, 16:56
Znuny Version: 3.3.8

Zeitgesteuerte Benachrichtigungen abhängig von einem Dynamic

Post by glamken »

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
reneeb
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

Post by reneeb »

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
glamken
Znuny newbie
Posts: 3
Joined: 14 Jul 2014, 16:56
Znuny Version: 3.3.8

Re: Zeitgesteuerte Benachrichtigungen abhängig von einem Dyn

Post by glamken »

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?
reneeb
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

Post by reneeb »

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?
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.
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.
Sieht eigentlich ganz gut aus, wenn es noch nicht perfekt passt, wäre es vielleicht eine gute Erweiterung.
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.
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.example
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.
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").
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?
Genau das wäre auch mein Ansatz

Wo kann ich die korrekte Syntax nachlesen?
Wenn Dein Dynamisches Feld "MeinDatumFeld" heißt, dann warst Du mit Deiner Vermutung schon richtig.

Die Felder, die TicketGet() liefert, kannst Du auch unter http://otrs.perl-services.de/docs/otrs/ ... icket.html bei TicketGet() nachschauen.
Was wäre das richtige 'M' in RTFM?
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.html
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
glamken
Znuny newbie
Posts: 3
Joined: 14 Jul 2014, 16:56
Znuny Version: 3.3.8

Re: Zeitgesteuerte Benachrichtigungen abhängig von einem Dyn

Post by glamken »

Danke erstmal.

Ich werde dann mal stöbern und ggf. Fragen oder Erfolge vermelden.

(hoffentlich letzteres, wahrscheinlich ersteres)
Locked