Historique de la page
| Sommaire |
|---|
Les propriétés de The properties of /properties/config.properties de configuration de l'alimentation par courrier électronique for the configuration of email feeding (cf Configuring email feeding) sont utilisées dans le fichier de configuration are used in the configuration file /properties/domain/feed.xml.
Filtrage du spam
Il est possible de filtrer le spam de l'alimentation pour éviter que trop de tickets soient créés dans la base, ou bien de créer les tickets mais de les clore automatiquement.
Utilisation des filtres prédéfinis
Deux bean implémentant des filtres prédéfinis sont fournis dans la distribution :
SPAM filtering
It is possible to filter the SPAM in order to prevent from unwanted emails to create unwanted tickets, or to create tickets but close them automatically just after their creation.
Using predefined filters
Two beans implementing predefined filters are available in the distribution:
- subjectStartsWithSpamFilter, which considers an email as spam if it the subject starts with a given string
- subjectContainsSpamFilter, which considers an email as spam if it the subject contains a given string
- subjectStartsWithSpamFilter, qui considère qu'un message est un spam si le sujet du message commence par une chaîne de caractères particulière
- subjectContainsSpamFilter, qui considère qu'un message est un spam si le sujet du message contient une chaîne de caractères particulière
| Balise Wiki |
|---|
OnIn pourraorder parto exempleconsider considérer commeas spam tousall lesthe messages dont le sujet commence parstarting with *\[SPAM\]* et les supprimer and delete them, set the following properties: |
| Bloc de code |
|---|
feed.imap.spamFilterBean=subjectStartsWithSpamFilter feed.imap.spamFilterPattern=[SPAM] feed.imap.deleteSpam=true |
Autre exemple, on peut considérer comme spam tous les messages dont le sujet contient *SPAM*, les transférer dans la catégorie n°5 et les clore automatiquement In order to consider as spam all the messages that contains the string *SPAM*, transfer them to category #5 and close them, set the following properties:
| Bloc de code |
|---|
feed.imap.spamFilterBean=subjectContainsSpamFilter feed.imap.spamFilterPattern=*SPAM* feed.imap.deleteSpam=false feed.imap.spamCategoryId=5 |
Utilisation de plusieurs filtres
Using several filters
In order to use several (predefined or added) filters, declare the filters in the configuration file Pour utiliser plusieurs filtres (prédéfinis ou ajoutés), il faut déclarer les filtres dans le fichier /properties/domain/feed.xml, par exemple for instance:
| Bloc de code |
|---|
<bean id="subjectStartsWithSpamFilter"
class="org.esupportail.helpdesk.services.feed.imap.SubjectStartsWithSpamFilterImpl"
lazy-init="true" >
<property name="pattern" value="SPAM" />
</bean>
<bean id="mySpamFilter"
class="edu.domain.helpdesk.services.feed.imap.MySpamFilterImpl"
lazy-init="true" />
|
On déclarera ensuite le filtre delegatingSpamFilter de la classe Declare the filter delegatingSpamFilter of class org.esupportail.helpdesk.services.feed.imap.DelegatingSpamFilterImpl comme s'appuyant sur les filtres précédents that delegates to the previously declared filters:
| Bloc de code |
|---|
<bean id="delegatingSpamFilter"
class="org.esupportail.helpdesk.services.feed.imap.DelegatingSpamFilterImpl"
lazy-init="true" >
<property name="filters" >
<list>
<ref bean="subjectStartsWithSpamFilter" />
<ref bean="mySpamFilter" />
</list>
</bean>
|
Il suffit alors de déclarer delegatingSpamFilter comme le bean utilisé pour le filtrage dans le fichier Tell the application that the filter bean is delegatingSpamFilter in the configuration file /properties/config.properties:
| Bloc de code |
|---|
#feed.imap.spamFilterBean=delegatingSpamFilter |
| Astuce |
|---|
Ne pas oublier de permettre la récupération automatique du fichier Remember to allow the automatic recovering of the configuration file /properties/feed/feed.xml lors des prochaines mises à jour (cf when upgrading (see Conservation des personnalisations lors des mises à jour). |
Ajout d'un nouveau filtre
Adding a new filter
Write a new class implementing the Il suffit d'ajouter une nouvelle classe implémentant l' interface org.esupportail.helpdesk.services.feed.imap.SpamFilteret déclarer un bean de cette classe dans le fichier and declare a bean of this class in /properties/domain/feed.xml.
| Astuce |
|---|
Ne pas oublier de permettre la récupération automatique du fichier Remember to allow the automatic recovering of the new class and the configuration file /properties/feed/feed.xml et de la classe ajoutée lors des prochaines mises à jour (cf when upgrading (see Conservation des personnalisations lors des mises à jour). |
Lecture de plusieurs comptes IMAP
Reading several IMAP accounts
In order to read several IMAP accounts, that may feed different categories, deployers must declare in the configuration file Pour lire plusieurs comptes IMAP, qui peuvent par exemple être dirigés dans des catégories différentes, il faudra déclarer dans le fichier /properties/domain/feed.xml autant de beans correspondants semblables au bean accountReader, et les insérer dans l'attribut mailReaders du as many as necessary beans looking like the bean accountReader, and add them to the attribute mailReaders of the bean feeder.
Pour des comptes IMAP situés sur le même serveur, on trouvera par exemple For IMAP accounts on the same server, one may use:
| Bloc de code |
|---|
<bean id="feeder" class="org.esupportail.helpdesk.services.feed.FeederImpl" lazy-init="true" >
<property name="mailReaders" >
<list>
<ref bean="accountReader1" />
<ref bean="accountReader2" />
</list>
</property>
</bean>
<bean id="abstractAccountReader" abstract="true" >
<property name="server" value="${feed.imap.server}" />
<property name="folder" value="${feed.imap.folder}" />
<property name="messageReader" ref="messageReader" />
<property name="domainService" ref="domainService" />
</bean>
<bean id="accountReader1" class="org.esupportail.helpdesk.services.feed.imap.ImapAccountReaderImpl" lazy-init="true" >
<property name="address" value="${feed.imap.address1}" />
<property name="account" value="${feed.imap.account1}" />
<property name="password" value="${feed.imap.password1}" />
<property name="categoryId" value="${feed.imap.categoryId1}" />
</bean>
<bean id="accountReader2" class="org.esupportail.helpdesk.services.feed.imap.ImapAccountReaderImpl" lazy-init="true" >
<property name="address" value="${feed.imap.address2}" />
<property name="account" value="${feed.imap.account2}" />
<property name="password" value="${feed.imap.password2}" />
<property name="categoryId" value="${feed.imap.categoryId2}" />
</bean>
<bean id="messageReader" class="org.esupportail.helpdesk.services.feed.imap.MessageReaderImpl" lazy-init="true" >
<property name="domainService" ref="domainService" />
<property name="i18nService" ref="i18nService" />
</bean>
|
Les propriétés d'accès aux comptes pourront ainsi être gérées dans le fichier This way, the credentials can be set in the configuration file /properties/config.properties:
| Bloc de code |
|---|
feed.imap.server=imap.domain.edu feed.imap.address1=support1@domain.edu feed.imap.account1=support1 feed.imap.password1=secret1 feed.imap.categoryId1=45 feed.imap.address1=support2@domain.edu feed.imap.account1=support2 feed.imap.password1=secret2 feed.imap.categoryId1=63 |
| Astuce |
|---|
Ne pas oublier de permettre la récupération automatique du fichier Remember to allow the automatic recovering of the configuration file /properties/feed/feed.xml lors des prochaines mises à jour (cf when upgrading (see Conservation des personnalisations lors des mises à jour). |
...
Other feed modes
...
Les lecteurs de boites à lettres IMAP fournis par défaut sont de la classe IMAP account readers provided by default are of class org.esupportail.helpdesk.services.feed.imap.ImapAccountReaderImpl.
L'ajout d'un autre mode d'alimentation se fait de la manière suivante :
The steps to add new feed modes are:
- write a new class implementing the développer une classe implémentant l' interface org.esupportail.helpdesk.services.feed.AccountReader
- déclarer un bean de cette classe dans le fichier declare a bean of this class in the configuration file /properties/domain/feed.xml
- permettre la récupération de la nouvelle classe et du fichier Allow the automatic recovering of the new class and the configuration file /properties/domainfeed/feed.xml lors de la prochaine mise à jour (cf when upgrading (see Conservation des personnalisations lors des mises à jour).
Voir également See also: Web services