Tickettitel per Postmasterfilter ändern.

Hilfe zu OTRS Problemen aller Art
Post Reply
msiever
Znuny newbie
Posts: 17
Joined: 03 May 2011, 11:52
Znuny Version: 3.0.7

Tickettitel per Postmasterfilter ändern.

Post by msiever »

Hallo,

wir haben OTRS 3.07 bei uns im Einsatz und es steht sich folgedes Problem auf:

Unsere User senden uns Tickets bei Email ohne Betreff. Die Tickets landen zwar im System doch leider ohne Tickettitel bzw mit leeren Tickettitel.

Das finde ich sehr unschön und hätte gerne folgendes:

Sobald ein solches Ticket reinkommt soll es über den Postmasterfilter gefiltert werden und dann einen Titel zugewiesen kriegen. Zusätzlich möchte ich abspeichern dass das Ticket eigentlich keinen Betreff hatte (entweder per freefield abspeichern oder hinterher über den Standardtitel auswerten) und dem User eine Benachrichtigung schicken dass dies doch sehr ungünstig ist.

Die Benachrichtigung stellt kein Problem dar . Aber ich finde keine Möglichkeit im Postmasterfilter den Tickettitel zuändern.Im IRC wurde mir gesagt ich müsste den Postmasterfilter umprogrammieren (was eigentlich kein Problem ist aber bitte mal ein paar tipps wie das geht etc)
OTRS : 3.0.7
Debian 6
renee
Znuny expert
Posts: 241
Joined: 06 Feb 2009, 11:15
Znuny Version: 3.0.x
Company: Perl-Services.de
Contact:

Re: Tickettitel per Postmasterfilter ändern.

Post by renee »

Hi,

da müsstest Du mit einem Postmaster-Filter wie in http://forums.otrs.org/viewtopic.php?f= ... 37&p=42243 beschrieben, arbeiten. Statt nach Attachments musst Du halt den Subject überprüfen und wenn der leer ist, einfach ein neues Subject setzen:

ungetestet:

Code: Select all

    # --
    # Kernel/System/PostMaster/Filter/Attachments.pm - the global PostMaster module for OTRS
    # Copyright (C) 2011 perl-services.de, http://perl-services.de/
    # --
    # $Id: Invoices.pm,v 1.4 2011/05/31 07:56:35 rb Exp $
    # --
    # This software comes with ABSOLUTELY NO WARRANTY. For details, see
    # the enclosed file COPYING for license information (AGPL). If you
    # did not receive this file, see http://www.gnu.org/licenses/agpl.txt.
    # --

    package Kernel::System::PostMaster::Filter::Attachments;

    use strict;
    use Kernel::System::Ticket;

    use vars qw($VERSION);
    $VERSION = '$Revision: 1.4 $';
    $VERSION =~ s/^.*:\s(\d+\.\d+)\s.*$/$1/;

    sub new {
        my $Type  = shift;
        my %Param = @_;

        # allocate new hash for object
        my $Self = {};
        bless( $Self, $Type );

        $Self->{Debug} = $Param{Debug} || 0;

        # get needed objects
        for my $Object (
            qw(ConfigObject LogObject DBObject TimeObject MainObject EncodeObject)
            )
        {
            $Self->{$Object} = $Param{$Object} || die "Got no $Object!";
        }

        $Self->{TicketObject} = Kernel::System::Ticket->new( %{$Self} );

        return $Self;
    }

    sub Run {
        my ( $Self, %Param ) = @_;

        for my $Needed (qw(JobConfig GetParam)) {
            if ( !$Param{$Needed} ) {
                $Self->{LogObject}->Log(
                    Priority => 'error',
                    Message  => "Need $Needed!",
                );
                return;
            }
        }

        $Self->{LogObject}->Log(
            Priority => 'notice',
            Message  => 'TicketID: ' . $Param{TicketID},
        );

        if ( $Param{GetParam}->{Subject} =~ m{\A\z}xms ) {
            $Param{GetParam}->{Subject} = 'Neuer Titel - war leer';
        }

        return 1;
    }

    1;

Die Konfiguration darfst Du nicht vergessen...
Need a Perl/OTRS developer? You can contact me at info@perl-services.de
Post Reply