If you use the PostMaster.pl or PostMasterPOP3.pl method, the you can modify X-OTRS header with the OTRS/PostMaster filter modules.
For example you can set the priority or the queue of an ticket with the PostMaster filter modules.
There are some default filter modules:
Note: The job name (e. g. $Self->{'PostMaster::PreFilterModule'}->{'JobName'}) needs to be unique!
Kernel::System::PostMaster::Filter::Match is a default module to match on some email header (e. g. From, To, Subject, ...) and then to set new email header (e. g. X-OTRS-Ignore: yes or X-OTRS-Queue: spam).
Kernel/Config.pm
[...]
# Job Name: 1-Match
# (block/ignore all spam email with From: noreply@)
$Self->{'PostMaster::PreFilterModule'}->{'1-Match'} = {
Module => 'Kernel::System::PostMaster::Filter::Match',
Match => {
From => 'noreply@',
},
Set => {
'X-OTRS-Ignore' => 'yes',
},
};
# Job Name: 2-Match
# (sort emails with From: sales@example.com and Subject: **ORDER**
# into queue 'Order')
$Self->{'PostMaster::PreFilterModule'}->{'2-Match'} = {
Module => 'Kernel::System::PostMaster::Filter::Match',
Match => {
To => 'sales@example.com',
Subject => '**ORDER**',
},
Set => {
'X-OTRS-Queue' => 'Order',
},
};
[...] |
Kernel::System::PostMaster::Filter::CMD is a default module to pipe the email into an external cmd and it the result on STDOUT is true, then set new email header (e. g. X-OTRS-Ignore: yes or X-OTRS-Queue: spam).
Kernel/Config.pm
[...]
# Job Name: 5-SpamAssassin
# (SpamAssassin example setup, ignore spam emails)
$Self->{'PostMaster::PreFilterModule'}->{'5-SpamAssassin'} = {
Module => 'Kernel::System::PostMaster::Filter::CMD',
CMD => '/usr/bin/spamassassin | grep -i "X-Spam-Status: yes"',
Set => {
'X-OTRS-Ignore' => 'yes',
},
};
[...] |
Of cource, it's also possible to develop own PostMaster filter modules.
There is also a list of all usable X-OTRS header in doc/X-OTRS-Headers.txt.