Zammad: Tickets über Admin-Oberfläche als Job löschen

Erstellt am 19. Okt. 2016  ·  28Kommentare  ·  Quelle: zammad/zammad

Bitte machen Sie es möglich, Tickets zu löschen und nicht nur zu schließen. :smile_cat:

feature backlog

Hilfreichster Kommentar

Hallo Leute,
Ich habe eine neue Ticketaktion hinzugefügt:

grafik

Mit dieser Aktion sollte es in Zukunft kein Problem sein, Ihr System zu bereinigen. Bitte gehe vorsichtig damit um, es gibt kein Zurück und vielen Dank für dieses tiefe Gespräch und deine Unterstützung.

Änderungen sind bereits im Entwicklungszweig verfügbar.

-Rolf

Alle 28 Kommentare

Hallo @MDXDave - da Zammad revisionssicher ist, ist dies keine Option.

Ich verstehe Ihren Einwand, aber zumindest sollten Admins die Möglichkeit haben, Tickets zu löschen.

Als Administrator können Sie den Befehl rails c in der Befehlszeile verwenden. Von da an kannst du alles machen, was dir Rails bietet. Tickets können über Ticket.find(*id*).destroy gelöscht werden. Ich hoffe, das hilft? Wir empfehlen das nicht.

Ich weiß, dass dies bei Schienen möglich ist, aber es wäre einfacher, Tickets innerhalb von Zammad zu löschen. :+1:

Zumindest der Scheduler sollte das können.

Ich denke, die Entscheidung von

Ich nutze diese Funktion in OTRS, um Spam-Tickets nach 30 Tagen in unserer Spam-Warteschlange zu löschen. Sicher, man könnte dies von der Kommandozeile aus tun, aber es ist nicht so komfortabel, wie es vom Scheduler aus zu tun.

Ich verstehe dein Argument! Wir werden es in naher Zukunft implementieren. Vielleicht ist in diesem Zusammenhang etwas wie https://github.com/rubysherpas/paranoia nützlich.

Es geht nicht nur darum, die Tickets zu verstecken, sondern auch darum, unnötiges Zeug aus der DB zu entfernen. Derzeit ist unser Verhältnis von Spam zu Ham-Mails ziemlich hoch, aber wir erkennen die meisten Nachrichten mit Spamassassin. Trotzdem erfolgt die E-Mail-Filterung nach dem Herunterladen der E-Mails aus dem POP3, die Tickets wurden also bereits der Datenbank erstellt und der Speicherplatz zugewiesen (Apropos OTRS)
Eine Lösung könnte darin bestehen, einen Verweis auf das Ticket zu speichern und den Inhalt durch die Information zu ersetzen, dass das Ticket gelöscht wurde. So können Sie bei einem Audit nachweisen, dass das Ticket erstellt wurde, aber nicht mehr existiert ?

Gibt es eine Dokumentation zum Einstieg und zur Verwendung der Rails-Konsole?

Ich teste gerade viel herum und möchte alle Tickets "Test1", "Test2", "Test3" usw. loswerden ;-)

Gibt es eine Dokumentation zum Einstieg und zur Verwendung der Rails-Konsole?

Schale> Schienen c
Schienen> Ticket.destroy_all

Wenn Sie Zammad RPM verwenden, müssen Sie Folgendes tun:
Schale> zammad Laufschienen c
Schienen> Ticket.destroy_all

Danke, funktioniert wie ein Zauber!

Falls Sie nach einer Möglichkeit suchen, alle Tickets zu löschen, aber einige, können Sie diese Methode verwenden:

tickets_to_keep = [1, 2, 3] # enter the ids of all tickets you want to keep
(Ticket.all.pluck(:id) - tickets_to_keep).each { |id| Ticket.find(id).destroy }

dies löscht alle Tickets außer Ticket mit ID 1 , 2 und 3

Immer noch keine Neuigkeiten dazu? 😐

Hallo Leute,
Ich habe eine neue Ticketaktion hinzugefügt:

grafik

Mit dieser Aktion sollte es in Zukunft kein Problem sein, Ihr System zu bereinigen. Bitte gehe vorsichtig damit um, es gibt kein Zurück und vielen Dank für dieses tiefe Gespräch und deine Unterstützung.

Änderungen sind bereits im Entwicklungszweig verfügbar.

-Rolf

Hi,

Ich habe versucht, die Aktion "Löschen" zu verwenden und habe daher ein Makro erstellt, um es zu verwenden. Leider macht es nichts mit dem Ticket, sondern verursacht nur viel Aktivität in den Protokollen (siehe unten).

Ich verwende das aktuelle Debian-Entwicklungspaket 1.6.1-1502058507.b2ece283.jessie

Nachrichten aus der Protokolldatei sind wie angehängt, wenn ich das Löschmakro für ein Ticket auswähle (in diesem Fall die ID 2394):

I, [2017-08-07T11:29:50.916731 #20037]  INFO -- : Started PUT "/api/v1/tickets/2934?all=true" for 134.99.182.24 at 2017-08-07 11:29:50 +0200
I, [2017-08-07T11:29:50.928520 #20037]  INFO -- : Processing by TicketsController#update as JSON
I, [2017-08-07T11:29:50.928785 #20037]  INFO -- :   Parameters: {"number"=>"201708077203221", "title"=>"Verzoegerte Mail / Delayed Mail (still being retried)", "group_id"=>"1", "owner_id"=>"9", "customer_id"=>2339, "state_id"=>"4", "priority_id"=>"2", "updated_at"=>"2017-08-07T09:22:04.377Z", "pending_time"=>nil, "id"=>"2934", "all"=>"true", "ticket"=>{"id"=>"2934", "group_id"=>"1", "priority_id"=>"2", "state_id"=>"4", "number"=>"201708077203221", "title"=>"Verzoegerte Mail / Delayed Mail (still being retried)", "owner_id"=>"9", "customer_id"=>2339, "pending_time"=>nil, "updated_at"=>"2017-08-07T09:22:04.377Z"}}
I, [2017-08-07T11:29:51.241498 #20037]  INFO -- : Completed 200 OK in 313ms (Views: 9.1ms | ActiveRecord: 33.0ms)
I, [2017-08-07T11:29:51.263816 #20037]  INFO -- : Started DELETE "/api/v1/ticket_attachment_upload" for 134.99.182.24 at 2017-08-07 11:29:51 +0200
I, [2017-08-07T11:29:51.267849 #20037]  INFO -- : Processing by TicketArticlesController#ticket_attachment_upload_delete as JSON
I, [2017-08-07T11:29:51.267922 #20037]  INFO -- :   Parameters: {"form_id"=>"097621992", "ticket_article"=>{"form_id"=>"097621992"}}
I, [2017-08-07T11:29:51.287497 #20037]  INFO -- : Completed 200 OK in 19ms (Views: 0.3ms | ActiveRecord: 3.5ms)
I, [2017-08-07T11:29:51.817125 #20039]  INFO -- : 2017-08-07T11:29:51+0200: [Worker(host:zammad pid:20039)] Job Observer::UserDeviceLogJob (id=15352) RUNNING
I, [2017-08-07T11:29:51.839587 #20039]  INFO -- : 2017-08-07T11:29:51+0200: [Worker(host:zammad pid:20039)] Job Observer::UserDeviceLogJob (id=15352) COMPLETED after 0.0222
I, [2017-08-07T11:29:51.844069 #20039]  INFO -- : 2017-08-07T11:29:51+0200: [Worker(host:zammad pid:20039)] Job Observer::Ticket::UserTicketCounter::BackgroundJob (id=15353) RUNNING
I, [2017-08-07T11:29:51.853673 #20039]  INFO -- : 2017-08-07T11:29:51+0200: [Worker(host:zammad pid:20039)] Job Observer::Ticket::UserTicketCounter::BackgroundJob (id=15353) COMPLETED after 0.0093
I, [2017-08-07T11:29:52.067159 #20037]  INFO -- : Started GET "/api/v1/users/2339?full=true&_=1502091684037" for 134.99.182.24 at 2017-08-07 11:29:52 +0200
I, [2017-08-07T11:29:52.074838 #20037]  INFO -- : Processing by UsersController#show as JSON
I, [2017-08-07T11:29:52.074990 #20037]  INFO -- :   Parameters: {"full"=>"true", "_"=>"1502091684037", "id"=>"2339", "user"=>{}}
I, [2017-08-07T11:29:52.124370 #20037]  INFO -- : Completed 200 OK in 49ms (Views: 9.2ms | ActiveRecord: 5.2ms)
I, [2017-08-07T11:29:52.162360 #20037]  INFO -- : Started GET "/api/v1/ticket_customer?customer_id=2339&_=1502091684038" for 134.99.182.24 at 2017-08-07 11:29:52 +0200
I, [2017-08-07T11:29:52.171857 #20037]  INFO -- : Processing by TicketsController#ticket_customer as JSON
I, [2017-08-07T11:29:52.172077 #20037]  INFO -- :   Parameters: {"customer_id"=>"2339", "_"=>"1502091684038", "ticket"=>{}}
I, [2017-08-07T11:29:52.269458 #20037]  INFO -- : Completed 200 OK in 97ms (Views: 30.2ms | ActiveRecord: 4.1ms)
I, [2017-08-07T11:29:53.149049 #20037]  INFO -- : Started GET "/api/v1/users/2339?full=true&_=1502087532475" for 134.99.182.76 at 2017-08-07 11:29:53 +0200
I, [2017-08-07T11:29:53.158434 #20037]  INFO -- : Processing by UsersController#show as JSON
I, [2017-08-07T11:29:53.158857 #20037]  INFO -- :   Parameters: {"full"=>"true", "_"=>"1502087532475", "id"=>"2339", "user"=>{}}
I, [2017-08-07T11:29:53.227291 #20037]  INFO -- : Completed 200 OK in 68ms (Views: 13.2ms | ActiveRecord: 3.8ms)
I, [2017-08-07T11:29:53.424242 #20037]  INFO -- : Started PUT "/api/v1/taskbar/74" for 134.99.182.24 at 2017-08-07 11:29:53 +0200
I, [2017-08-07T11:29:53.434444 #20037]  INFO -- : Processing by TaskbarController#update as JSON
I, [2017-08-07T11:29:53.434747 #20037]  INFO -- :   Parameters: {"key"=>"Ticket-2934", "client_id"=>"123", "callback"=>"TicketZoom", "state"=>{"ticket"=>{}, "article"=>{}}, "params"=>{"ticket_id"=>2934, "overview_id"=>2, "shown"=>true}, "prio"=>16, "notify"=>false, "active"=>true, "updated_at"=>"2017-08-07T09:19:33.085Z", "id"=>"74", "taskbar"=>{"id"=>"74", "client_id"=>"123", "key"=>"Ticket-2934", "callback"=>"TicketZoom", "state"=>{"ticket"=>{}, "article"=>{}}, "params"=>{"ticket_id"=>2934, "overview_id"=>2, "shown"=>true}, "prio"=>16, "notify"=>false, "active"=>true, "updated_at"=>"2017-08-07T09:19:33.085Z"}}
I, [2017-08-07T11:29:53.500058 #20037]  INFO -- : Completed 200 OK in 65ms (Views: 1.4ms | ActiveRecord: 3.2ms)
I, [2017-08-07T11:29:54.323682 #20037]  INFO -- : Started GET "/api/v1/ticket_overviews?_=1502091684039" for 134.99.182.24 at 2017-08-07 11:29:54 +0200
I, [2017-08-07T11:29:54.324343 #20037]  INFO -- : Started GET "/api/v1/ticket_overviews?view=all_unassigned&_=1502091684040" for 134.99.182.24 at 2017-08-07 11:29:54 +0200
I, [2017-08-07T11:29:54.331526 #20037]  INFO -- : Processing by TicketOverviewsController#show as JSON
I, [2017-08-07T11:29:54.336974 #20037]  INFO -- : Processing by TicketOverviewsController#show as JSON
I, [2017-08-07T11:29:54.337380 #20037]  INFO -- :   Parameters: {"view"=>"all_unassigned", "_"=>"1502091684040", "ticket_overview"=>{}}
I, [2017-08-07T11:29:54.337205 #20037]  INFO -- :   Parameters: {"_"=>"1502091684039", "ticket_overview"=>{}}
I, [2017-08-07T11:29:54.519933 #20037]  INFO -- : Completed 200 OK in 181ms (Views: 0.8ms | ActiveRecord: 78.1ms)

@rolfschmidt Ist deine
Ich benutze:

# apt policy zammad
zammad:
  Installed: 2.1.0-1509936117.b8f98730.xenial
  Candidate: 2.1.0-1509936117.b8f98730.xenial
  Version table:
 *** 2.1.0-1509936117.b8f98730.xenial 500
        500 https://dl.packager.io/srv/deb/zammad/zammad/stable/ubuntu 16.04/main amd64 Packages
        100 /var/lib/dpkg/status

Hallo Leute,

@strangechoice : Ja, das war ein Fehler. Die Löschaktion wird nur im Scheduler unterstützt. Wir haben die Aktion aus den Makros entfernt.

@passboltUser : Bitte

grafik

Mit freundlichen Grüßen,
Rolf

@rolfschmidt Danke. Leider bekomme ich es nicht zum Laufen, sehe das New Scheduler . Ich bin unter /#manage/time_accounting .

zammad

Hello @passboltUser ,
i think you just missclicked.

  • Click on the menu Scheduler
  • Then on the top right on New scheduler
  • Below you choose the time where the tickets should get deleted.
  • Below you choose the conditions for the deletion of the tickets
  • Below you see some example tickets which will get deleted
  • Below you see the action you can do on the tickets. Here you can choose Action -> Delete

grafik

Best regards,


Hallo @passboltUser ,
ich glaube du hast dich nur verklickt.

  • Klick mal auf Automatisierungen
  • Dann rechts oben auf Neue zeitgesteuerte Aktion
  • Dann wählst du als erstes den Zeitpunkt aus wann die Tickets immer gelöscht werden
  • Darunter die Bedingungen die ein Ticket erhalten muss damit es gelöscht wird
  • Darunter sieht man einen Ausschnitt der Liste der Tickets die dann gelöscht wird.
  • Und darunter sieht man die Aktion, welche bei den Tickets ausgeführt werden soll. Hier wählst du dann
    Aktion -> Löschen aus.

grafik

Gruß

@rolfschmidt Danke, habs gefunden. So werden alle bestimmten Tickets gelöscht? Kann man auch einzelne löschen? Wir haben geschlossene Tickets die wir mit einem Tutorial tag getaggt haben, um nachzugucken, wie mal ein Problem gelöst wurde (und diese Tickets können dann in einer benutzerdefinierten Ansicht praktisch als alle Tutorials angezeigt werden).

Added eng: Thanks, found it. But this way all tickets are doing to be deleted? It it possible to delete individual ones? We have closed tickets which we tagged 'Tutorial' to lookup later how a problem was once solved (these tickes can be displayed nicely in a self-created view).

Hallo @passboltUser ,
wenn Sie die richtigen Bedingungen wählen, sollte es sein.

Es tut mir leid, Leute, ich habe die englische Übersetzung für meinen letzten Beitrag hinzugefügt. Wir sollten Englisch hier auf dem Issue Tracker schreiben.

Okay, danke, ich werde es versuchen. (auch englische Übersetzung hinzugefügt)

Danke, es funktioniert 👍 Ich habe eine zweite Bedingung hinzugefügt, bei der ich nach Tickets gefiltert habe, die das Tag "Spam" enthalten (also muss man bei solchen Tickets das Tag "Spam" hinzufügen).

Erstens freue ich mich, Tickets löschen zu können, die Schleifen erzeugen - wie z.

Das Problem, mit dem wir konfrontiert sind, besteht darin, einen Stapel von 30 unterschiedlich nummerierten Tickets mit Schleifen oder anderen Problemen zu haben, die wir löschen möchten. .

Meine 2c ist, dass es ein admin-only, passwortgeschütztes Formular geben sollte, um Tickets direkt auf der Weboberfläche zu löschen.

Ich glaube, ich habe mit den großartigen genialen Tools, die Zammad zu bieten hat, eine schöne Lösung gefunden, aber es funktioniert aus irgendeinem Grund nicht :)
Ich habe "Objekte" im Abschnitt System der Einstellungen verwendet, um ein neues Textfeld für Tickets zu erstellen, das "vom Administrator zu löschen" und Standardtext: "Bitte Code eingeben" genannt wird.
Datenbank aktualisiert und Zammad neu gestartet.
Jetzt, da ich dieses neue Feld habe, kann ich das Löschen damit planen, also ging ich zum Scheduler und erstellte einen neuen Zeitplan mit der Bedingung, dass das Feld "vom Admin zu löschen" die Wörter enthalten muss, zum Beispiel: "Löschen Sie mich jetzt!" .

Jetzt muss ich nur noch die Tickets finden, die ich löschen möchte und diese Textzeichenfolge in das neu erstellte Feld eingeben.

image

Das Problem ist, dass es nicht funktioniert (keine Tickets löschen) :)

Eine weitere Option, um das Löschen vieler Tickets durchzuführen, ohne auf den Zeitplan-Timer warten zu müssen, ist die Schaltfläche "Jetzt ausführen" für den Zeitplaner :)

Hallo @DjMagicFingers ,
Ich habe ein Objekt mit dem Namen "to_be_deleted_by_admin" als Eingabefeld hinzugefügt und einige Tickets mit dem Wert "lösche mich bitte" gesetzt. Danach habe ich einen Scheduler-Job hinzugefügt, um sie zu entfernen. Funktioniert bei mir. Es sieht so aus, als ob Sie die Werte beim Ticket nicht richtig ausgefüllt haben, da sie sonst in der Vorschau in dem von Ihnen eingefügten Screenshot angezeigt würden. Könnten Sie bitte noch einmal überprüfen? Welche Version von Zammad verwendest du?

Mit freundlichen Grüßen,
Rolf

Dies ist bereits Bestandteil von Zammad und wurde adressiert mit: https://github.com/zammad/zammad/commit/7d2409bddcbeaa0d400c6deb7012cec97ee53008

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen