Hauptmenü

Negierte Auswahl bei Filterungen

Begonnen von Marvin G. - FZJ, 16.09.2021 09:38:01

⏪ vorheriges - nächstes ⏩

Marvin G. - FZJ

Hallo, 


ich würde gerne bei Ticket-Benachrichtigungen einen Filter hinzufügen, der nur eine Benachrichtigung sendet, wenn etwas nicht gesetzt wurde.


Beispiel: Ich habe ein dynamisches Feld (z.B. Kontrollkästchen) hinzugefügt was "noautoreply" heißt. Beim Maileingang möchte ich nun automatisch bestimmte Mails mit diesem Feld auf "ausgewählt" setzen. Alle anderen bekommen "nicht ausgewählt". Nun Filter ich bei der Benachrichtigung auf dieses Feld und sende die Benachrichtigung nur, wenn das Feld auf "nicht ausgewählt" steht. 


Das Problem hierbei ist, dass alle alten Tickets, die vor der Erstellung des dynamischen Feldes angelegt wurden, das Feld nicht drin haben. Somit kann die Filterung dort auch nicht verwendet werden. 


Gibt es irgendeine Möglichkeit einzustellen, dass z.B. Benachrichtigungen immer gesendet werden, es sein denn das Feld steht auf "ausgewählt"? 


Viele Grüße 
Marvin

Jörg Brückner

Hallo Marvin,

das sollte in der Ticket Benachrichtigung möglich sein. Siehe Bild in der Anlage.



Herzliche Grüße
Jörg

Marvin G. - FZJ

Hallo Jörg,


das Problem ist, dass dieser Filter nicht funktioniert, wenn das Feld gar nicht am Ticket hängt. Das ist bei allen Tickets so, die vor dem dynamischen Feld angelegt wurden. Und auch bei Tickets die danach angelegt wurden, ist das Feld erst dann da, wenn ich es selbst hinzufüge (z.B. in einem Postmasterfilter oder per Generic-Agent-Job).
Eine Lösung wäre, per Generic-Agent Job alle alten Tickets um dieses dynamische Feld zu ergänzen (auch wenn es auf "nicht ausgewählt" bleibt). Allerdings ist das bei > 50000 Tickets nicht unbedingt optimal.


Oder liegt hier vielleicht ein Bug vor? Sollte der Filter bei "Nicht ausgewählt" greifen, auch wenn das Feld noch gar nicht am Ticket ist? Denn das Verhalten bräuchte ich zur Lösung meines Problems.


Vielleicht noch eine kurze Erklärung wie ich das mit der Benachrichtigung mache:
Ich habe eine Ticketbenachrichtigung die versendet wird, wenn das Ticket bereits einen geschlossen-Status hat und dann ein Artikel erstellt wurde (ArticleCreate), der den Typ "E-Mail extern" oder "E-Mail intern" hat.
Und hier sollte dann eigentlich noch der Filter dran, ob überhaupt eine automatische Benachrichtigung versendet werden soll.


Viele Grüße
Marvin

Jörg Brückner

Hallo Marvin,

ich habe das einmal in vereinfachter Form bei mir im System nachgestellt.
Eine Benachrichtigung die auf ArtikelCreate auslöst und an Agenten und Kunde des Tickets versendet wird. Im System sind eine Menge "alte"Tickets.
Danach habe ich ein Dyn. Feld "Kontrollkästchen" angelegt und dies ein den Ticketkerndaten eingeblendet.
Der Benachrichtigungsfilter steht dabei auf "nicht ausgewählt"!

Im Ticket wird nun ein Artikel erstellt. Bei wird die Benachrichtigung problemlos ausgelöst. Bei älteren und auch bei neuen Tickets.Ich habe KIX 17.16 verwendet für meine Tests.

Vielleicht können Sie mir einmal Screenshots des dyn. Feldes erstellen und die Benachrichtigung einmal exportieren und hier bereitstellen.Ebenso würde mich interessieren, welche KIX Version Du verwendest.

Vielleicht kommen wir so einen Schritt weiter.

Jörg

Marvin G. - FZJ

Hallo Jörg,


ich habe das Ganze gerade noch einmal versucht. Leider mit dem gleichen Ergebnis wie vorher. Wenn ich im Ticket das dynamische Feld einmal aktiviere, speicher und dann wieder deaktiviere und speicher, funktioniert es. So als ob erst dann das Feld am Ticket ist und der Filter dann gewertet wird.


Ich habe einen Screenshot angehangen. Außerdem habe ich die Benachrichtigung und das dynamische Feld exportiert und angehangen. Wir verwenden im Testsystem (wo ich das gerade probiere) KIX Pro 17.16.


Viele Grüße
Marvin

Jörg Brückner

Hallo Marvin,

danke für Deine Zuarbeit.
Das erste was mir nun aufgefallen ist, das in der Benachrichtigung kein Nachrichtenempfänger eingetragen ist. Ich habe dazu Deine Benachrichtigung in mein System importiert.
Und damit werden auch keine Mails versendet.

Es fehlen die Empfänger. Könnte das der Grund sein, oder warum sind diese entfernt?
--> siehe Screenshot in der Anlage.

Jörg

Marvin G. - FZJ

#6
Hallo Jörg,


das hängt damit zusammen, dass ich die automatischen Antworten an den Absender der Mail senden will und das daher mit einem dynamischen Feld löse: https://forum.kixdesk.com/index.php?topic=10882.0


Wenn ich im Empfänger-Tab einen Empfänger hinzufüge, ändert das aber leider nichts am Verhalten (habe ich gerade noch einmal geprüft).


Viele Grüße
Marvin

Jörg Brückner

Hallo Marvin,

Du hast Recht, nun konnte ich das Verhalten nachstellen. Kurz erklärt, dass dyn. Feld ist zwar erstellt, aber die Verknüpfung im System zum Ticket noch nicht.
Die einzige Lösung, die Du dabei wirklich hast, ist tatsächlich der GenericAgent. Der muss einmal das Feld setzen, damit die Verknüpfung generiert wird, und dann das Feld wieder auf "nicht ausgewählt" zurücksetzen, für den regulären Zustand. Leider gibt es hier keinen anderen Weg.

Am besten, Du lässt den GA einmal über Nacht durchlaufen oder in Schritten (beschränkt auf Queues, also Queue für Queue).

Herzliche Grüße
Jörg


Marvin G. - FZJ

Hallo Jörg,


der Generic-Agent arbeitet nur in 4000er Schritten, dass wird jetzt also eine Weile dauern. Schade, dass das nicht anders geht.[/size] Trotzdem [/size]vielen Dank für die Rückmeldung.[/size]


Viele Grüße
Marvin

Jörg Brückner

Hi Marvin,

Du kannst natürlich den GA von 4000 Tasks auf mehrere hochsetzen mit dem SC-Schlüssel:  "Daemon::SchedulerGenericAgentTaskManager::TicketLimit".
Allerdings benötigt dies mehr Ressourcen. Daher macht dann eine Durchführung eher mal über Nacht Sinn, oder wenn das System nur wenig benutzt wird.

Herzliche Grüße
Jörg

Marvin G. - FZJ

Hallo Jörg,


vielen Dank für den Hinweis. Ich schätze, ich mache das dann lieber in kleinen Blöcken und beobachte das Ganze dabei, damit ich im Zweifel einschreiten kann. Hierzu habe ich aber noch eine Frage: Wenn ich einen GenericAgent-Job im Webinterface gestartet habe, wie kann ich diesen stoppen? Die Seite zu verlassen wird da ja sicherlich nicht helfen. Kann ich das dann irgendwie über die Konsole machen?


Viele Grüße
Marvin

Marvin G. - FZJ

Hallo Jörg,


ach und leider ist mir gerade auch aufgefallen, dass ich gar nicht drum herum kommen werde, das "TicketLimit" hoch zu setzen. Oder ich muss mir einen weiteren Filter suchen, bei dem ich dann immer Blöcke unter 4000 bekomme, mit dem ich aber trotzdem nacheinander alle Tickets bekomme. Denn man kann leider auch hier bei der Filterung nicht danach Filtern, ob das dynamische Feld in dem Ticket bereits vorhanden ist. Eine entsprechende Filter wäre dort gar nicht schlecht.


Viele Grüße
Marvin

Jörg Brückner

Hallo Marvin,

einen GenericAgent Job kann man nicht wirklich stoppen im Ablauf. Das könnte zu Fehlern oder Problemen führen.
Daher ist das nicht vorgesehen.


Viele Grüße
Jörg