Архива поддерживает гибкое определение полей заголовков почтового сообщения. Под полями почтового сообщения подразумеваются такие заголовки как От кого, Кому, Тема и другие (англ. To, From, Subject). При редактировании файла с определениями полей можно изменить, какие из заголовков будут индексироваться, какие будут видны, экспортированы и проч. После того как вы изменили определение поля заголовка, необходимо перезагрузить сервер Архива. Система пока ещё не в состоянии загружать изменения в процессе передачи (т.е. без перезагрузки, как она может с файлом server.conf).
Чтобы изменить определения поля заголовка, отредактируйте файл config_blobcategory_email.xml с xml с использованием текстового редактора Notepad или VI. Этот файл находится здесь:
Code Block |
---|
[main application]\server\webapps\ROOT\WEB-INF\classes\config_blob.category_email.xml |
Для нахождения точного месторасположения [main application] обратитесь в Разделы файловой системы.
Note |
---|
После того, как вы измените файл config_blob.category_email.xmlxmll, не забудьте создать его резервную копию. При обновлении the xml файл всегда переписывается при установке (т.е. ваши настройки могуть быть будут сброшены). Поэтому после обновления потребуется объединить изменения в файлах и скопировать обратно в папку модифицированную версию файла. |
...
Code Block |
---|
<Field name="anyaddress" type="composite" resource="field_label_anyaddress"> <FieldRef name="to" /> <FieldRef name="from" /> <FieldRef name="cc" /> <FieldRef name="bcc" /> <FieldRef name="deliveredto" /> <FieldRef name="sender" /> <FieldRef name="recipient" /> <!-- <FieldRef name="rcptto" /> <FieldRef name="mailfrom" /> --> <FieldRef name="journalrecipients" /> <FieldRef name="journalsender" /> <FieldRef name="journalto" /> <FieldRef name="journalcc" /> <FieldRef name="journalbcc" /> <Use usage="archiverule" /> <Use usage="stubrule" /> <Use usage="searchquery" /> <Use usage="retention" /> </Field> |
...
Пользовательские заголовки
Используя динамические поля, можно настроить Архива на поддержку любого пользовательского почтового заголовка. К примеру, For example, рассылка вашей компании устанавливает заголовок mimeMIME, называющийся X-Privilegeназывающийся X-Originating-IP
. Когда динамическое поле X-
Privilege будет Originating-IP
будет добавлено в файл настройки полей (т.е файл пользователя (в файле шаблона config_blob.category_email.xml расположенный в разделе файловой системы с назначением настройки), Архива возвратит EE возвратит содержимое заголовка и применит его по назначению. Для применения для применения пользовательских заголовков система должны быть перезагружена.
К примеру, нам необходимо добавить новое поле X-Originating-IP.
Для этого необходимо:
- скачать шаблон определения пользовательских полей
- поместить данный файл в раздел файловой системы с назначением настройки
- отредактировать данный файл и добавить нужные поля
- перезапустить Архива EE
К примеру, это динамическое поле определено следующим образом:
Code Block | ||
---|---|---|
| ||
<Field name="X-Privilegexoriginatingip" type="stringboolean" resource="fieldX_labelOriginating_privilegeIP"> <Use usage="property" param="name=X-Originating-IP" /> <Use usage="export" /> <Use usage="archiverule" /> <Use usage="contentfilter" /> <Use usage="stubrule" /> <Use usage="searchquery" /> <Use usage="retention" /> <Use usage="index_tokenized_and_stored" param="name=toxoriginatingip" /> <Use usage="retention" /> <Use usage="advancedheaderview" /> <Use usage="basicheaderview" /> </Field> |
Имя поля должно совпадать с именем заголовка MIME.
Code Block | ||||
---|---|---|---|---|
| ||||
<?xml version="1.0" encoding="UTF-8"?>
<!--Herein custom fields are defined -->
<!--type - whether field is obtained from email or ldap {email|ldap} -->
<!--name - email or ldap attribute name [string value] -->
<!--resource -resource key name in application.properties [string value] -->
<!-- metadata - additional field properties (e.g. colsize=30) -->
<!--Архива Fields -->
<Category name="email" searchable="true">
<Fields version="1.0">
<Field name="xoriginatingip" type="boolean" resource="X_Originating_IP">
<Use usage="property" param="name=X-Originating-IP" />
<Use usage="export" />
<Use usage="archiverule" />
<Use usage="contentfilter" />
<Use usage="stubrule" />
<Use usage="searchquery" />
<Use usage="retention" />
<Use usage="index_tokenized" param="name=xoriginatingip" />
<Use usage="retention" />
<Use usage="advancedheaderview" />
<Use usage="basicheaderview" />
</Field>
</Fields>
</Category>
|
Более того, строка:
Code Block |
---|
field_label_privilege=Privilege |
...
X_Originating_IP=X Originating IP |
может быть добавлена в для правильного отображения в пользовательском интерфейсе. Данное действие не обязательно.
Code Block |
---|
[main application]\server\webapps\ROOT\WEB-INF\classes\properties\application.properties |
После этого необходимо перезагрузить Архива. В примере выше поле "X-
Privilege" должно Originating-IP
должно быть проиндексировано и сохранено. Поле должно появиться в выпадающем списке доступных полей для поиска.
...