Hallo,
nachdem ich die Mailinglisten und das Forum erfolglos nach einer Lösung zur Sortierung einer Queue nach dem Kriteriem "Erstellt" durchforstet habe, kam mir eben eine grobe Idee, die ich aber noch nicht ausprobiert habe: prinzipiell ist es ja möglich einem Ticket über die FreeTypeText und FreeTypeKey Felder Attribute anzuheften. Dann müsste es ja über Ticket::Frontend::QueueSortBy::Default: möglich sein, eine Queue nach diesen Attributen zu sortieren. Testweise könnte man per Hand ein FreeTypeKey1 lastchange mit dem Inhalt FreeTypeText1 200801060126 (Datums und Uhrzeitkombination) anlegen. Die Queue müsste sich dann nach diesen Kriterien sortieren lassen. Nun möchte man dies ja nicht immer per Hand eintragen, also könnte man überlegen, ob sich FreeTypeKey1 und FreeTypeText1 nicht zumindest bei jeder eingehenden E-Mail automatisch setzen lassen könnten, z.B. mit dem Postmasterfilter aufgrund des Datums der eigenden E-Mail oder aufgrund eines bereits auf dem Mailserver bei Eingang gesetzten Headers, der dann vom Postmasterfilter ausgelesen und in ein FreeTypeKey1/FreeTypeText1 Paar übersetzt werden kann. Ist u.U. etwas umständlich, aber eine Sortierung der Queue nach dem Erstellt Kriterium scheint ja auch nicht trivial zu sein. Anmerkungen dazu?
Ciao!
Sortierung der Queues nach letzter eingehenden Mail
Sortierung der Queues nach letzter eingehenden Mail
Last edited by walters on 06 Feb 2008, 22:34, edited 2 times in total.
Sortierung der Queues letzter eingehenden Mail - Lösungsidee
Guten Morgen,
also ich habe das einmal durchgespielt und testweise E-Mails mit folgenden Zusatzheader an das OTRS gesendet:
X-OTRS-TicketKey1: lastchange
X-OTRS-TicketValue1: 2008.02.06-11:25:45
Zuvor muss im PostMaster POP3 Account als entsprechende Konto noch auf vertraut gesetzt werden.
In der SysConfig wurde dann Ticket::Frontend::QueueSortBy::Default: auf TicketFreeText1 gesetzt. Nun werden alle Tickets nach dem lastchange Wert sortiert. Bei weiteren eingehenden Mails auf die Tickets müsste man dann mit X-OTRS-FollowUp-TicketKey1 und X-OTRS-FollowUp-TicketValue1 arbeiten, so dass das Wertepaar bei Antworten von Kunden aktualisiert wird.
Das Setzen der Wertepaar lässt sich auch noch automatisieren: hierzu wurde in der Kernel/System/PostMaster/NewTicket.pm und FollowUp.pm nachfolgender Code hinzugefügt, so dass bei allen eingehenden E-Mails die Wertepaare X-OTRS-TicketKey1:X-OTRS-TicketValue1 und X-OTRS-FollowUp-TicketKey1:X-OTRS-FollowUp-TicketValue1 mit einem Zeitstempel verstehen.
Hat jemand eine besser Idee wie man das eleganter lösen kann?
Ciao!
also ich habe das einmal durchgespielt und testweise E-Mails mit folgenden Zusatzheader an das OTRS gesendet:
X-OTRS-TicketKey1: lastchange
X-OTRS-TicketValue1: 2008.02.06-11:25:45
Zuvor muss im PostMaster POP3 Account als entsprechende Konto noch auf vertraut gesetzt werden.
In der SysConfig wurde dann Ticket::Frontend::QueueSortBy::Default: auf TicketFreeText1 gesetzt. Nun werden alle Tickets nach dem lastchange Wert sortiert. Bei weiteren eingehenden Mails auf die Tickets müsste man dann mit X-OTRS-FollowUp-TicketKey1 und X-OTRS-FollowUp-TicketValue1 arbeiten, so dass das Wertepaar bei Antworten von Kunden aktualisiert wird.
Das Setzen der Wertepaar lässt sich auch noch automatisieren: hierzu wurde in der Kernel/System/PostMaster/NewTicket.pm und FollowUp.pm nachfolgender Code hinzugefügt, so dass bei allen eingehenden E-Mails die Wertepaare X-OTRS-TicketKey1:X-OTRS-TicketValue1 und X-OTRS-FollowUp-TicketKey1:X-OTRS-FollowUp-TicketValue1 mit einem Zeitstempel verstehen.
Hat jemand eine besser Idee wie man das eleganter lösen kann?
Code: Select all
# set free ticket text
my @Values = ('X-OTRS-TicketKey', 'X-OTRS-TicketValue');
[...]
}
# Ergaenzung
# setzt TicketKey'1 Wertepaar auf lastchange mit Timestamp im Format %Y-%m-%d %X
use POSIX qw(strftime);
my $timestamp = strftime "%Y-%m-%d %X", localtime;
$Self->{TicketObject}->TicketFreeTextSet(
TicketID => $Param{TicketID},
Key => "lastchange",
Value => $timestamp,
Counter => 1,
UserID => $Param{InmailUserID},
);
Sortierung der Queues nach letzter eingehenden Mail
In der Datei AgentTicketQueue.pm gibt es den Eintrag
ändert, dann wird die Queue-Ansicht nach der letzten Änderung im Ticket sortiert.
Denkanstoß zum Sortieren nach letzter eingehender Mail:
In der SQL-Tabelle article gibt es den Eintrag "incoming_time". Habe leider bisher nicht herausgefunden, wie man in der Datei AgentTicketQueue.pm auf die Tabelle article.incoming_time verweisen kann. In anderen Dateien wird mit sa.spalte auf die Tabelle "article" verwiesen. Mit "st.spalte" wird auf die Tabelle "ticket" verwiesen, was ohne Probleme geht.
Vielleicht hat ja dazu jemand eine Idee, würde mich auch sehr interessieren
Gruß
Forcid
Wenn man den aufAge => 'st.create_time_unix',
Age => 'st.change_time',
ändert, dann wird die Queue-Ansicht nach der letzten Änderung im Ticket sortiert.
Denkanstoß zum Sortieren nach letzter eingehender Mail:
In der SQL-Tabelle article gibt es den Eintrag "incoming_time". Habe leider bisher nicht herausgefunden, wie man in der Datei AgentTicketQueue.pm auf die Tabelle article.incoming_time verweisen kann. In anderen Dateien wird mit sa.spalte auf die Tabelle "article" verwiesen. Mit "st.spalte" wird auf die Tabelle "ticket" verwiesen, was ohne Probleme geht.
Vielleicht hat ja dazu jemand eine Idee, würde mich auch sehr interessieren
Gruß
Forcid
Produktiv OTRS 2.4.4
PHP 5.2.6
Apache 2.2.8
SuSE 11.0
PHP 5.2.6
Apache 2.2.8
SuSE 11.0
-
- Znuny newbie
- Posts: 1
- Joined: 14 Mar 2008, 05:42
Sortierung der Queues nach letzter eingehenden Mail
Hi,
gebt im Frontend SysConfig den Suchbegriff "asc" ein.
Den vorletzte Punkt der dann erscheint (Frontend::Agent::Ticket::ViewQueue) wählst du aus.
Dann geh zum Punkt "Ticket::Frontend::QueueSortDefault:" und mach aus dem ASC ein DESC.
gebt im Frontend SysConfig den Suchbegriff "asc" ein.
Den vorletzte Punkt der dann erscheint (Frontend::Agent::Ticket::ViewQueue) wählst du aus.
Dann geh zum Punkt "Ticket::Frontend::QueueSortDefault:" und mach aus dem ASC ein DESC.
Sortierung der Queues nach letzter eingehenden Mail
@otrsuser2008: damit sortierst du nur die Tickets auf und absteigend, aber nicht, dass das ticket mit der zeitlich letzten Antwort/E-Mail ganz oben bzw. unten steht.