====== Message automatique de réponse (vacation, ...) ======
Il faut avoir installer le package perl DateTime::Format::DateParse
Le message est reçu par les abonnés et un message automatique est envoyé à l'émetteur.
* https://www.sympa.community/manual/customize/custom-scenario-conditions.html
* https://sympa-community.github.io/manual/customize/custom-user-attributes.html
* https://sympa-community.github.io/manual/customize/message-personalization.html
* https://www.sympa.org/contribs/vacation
===== Message de vacation =====
Le plus simple est d'utiliser vacation
==== Script customcondition ====
**[[https://www.sympa.org/_export/code/contribs/vacation?codeblock=0|vacation.pm]]**
sous ~sympa/etc/custom_conditions/ ou ~sympa/etc/[robot]/custom_conditions
==== Modèle du message ====
**vacation.tt2**
sous ~sympa/etc/mail_tt2/ ou ~sympa/etc/[robot]/mail_tt2/ ou ~sympa/list_data/[robot]/[listes]/mail_tt2/
=== Version anglaise ===
To: [% to %]
Subject: List [% list.name %] vacation
Content-Type: text/plain
Content-Transfer-Encoding: 8bit
[%- USE date -%]
Your message "[% subject %]" has been sent to the [% list.name %] list.
We are on vacation from [% date.format(vacation_start, '%D') %] to [% date.format(vacation_end, '%D') %] ...
=== Version française ===
To: [% to %]
Subject: Liste [% list.name %] absence
Content-Type: text/plain
Content-Transfer-Encoding: 8bit
[%- USE date -%]
Votre message "[% subject %]" a été envoyé à la liste [% list.name %].
Nous sommes absents du [% date.format(vacation_start, '%D') %] au [% date.format(vacation_end, '%D') %] ...
==== Scénario d'envoi ====
Si c'est pour une liste, le plus simple est de le faire au niveau de liste, directement sur l'interface web au niveau de la configuration de la liste :\\
"Configurer la liste" --> "Diffusion/réception" --> "CODE SOURCE DU SCENARIO"
Si c'est le même message pour plusieurs listes, créer un nouveau scénario au niveau de ~sympa/etc/[robot)/scenari ou ~sympa/etc/scenari
Attention :
La ligne CustomCondition doit être placée avant les autres directives du scénario \\
Les dates de début et de fin sont obligatoires pour que le script marche
Modifier le message d'envoi en ajoutant la ligne
CustomCondition::vacation([list->address],"2021-11-10","2021-11-20",[sender],[msg_header->Subject]) smtp,smime,md5,dkim -> do_it
Exemple
title.gettext Internet :
CustomCondition::vacation([list->address],"2021-11-10","2021-11-20",[sender],[msg_header->Subject]) smtp,smime,md5,dkim -> do_it
true() smtp,dkim,md5,smime -> do_it
Le message de vacation sera uniquement envoyé entre la date de début et la date de fin : ici entre le 11 et 20 novembre 2021
===== Message de retraite=====
==== Script customcondition ====
sous ~sympa/etc/custom_conditions/ ou ~sympa/etc/[robot]/custom_conditions
recopier vacation.pm dans retraite.pm
Modifier retraite.pm
* à la ligne 3
package CustomCondition::vacation;
en remplaçant vacation par retraite
package CustomCondition::retraite;
* à la ligne 75
“my $tpl = 'vacation';”
en remplaçant vacation par retraite
“my $tpl = 'retraite';”
==== Modèle du message ====
retraite.tt2
sous ~sympa/etc/mail_tt2/ ou ~sympa/etc/[robot]/mail_tt2/ ou ~sympa/list_data/[robot]/[listes]/mail_tt2/
To: [% to %]
Subject: Liste [% list.name %] absence
Content-Type: text/plain
Content-Transfer-Encoding: 8bit
[%- USE date -%]
Votre message "[% subject %]" a été envoyé à la liste [% list.name %].
Je suis à la retraite depuis le [% date.format(vacation_start, '%D') %]
==== Scénario d'envoi ====
[[#scenario_d_envoi|voir]]
title.gettext Internet
CustomCondition::retraite([list->address],"2021-11-10","2021-11-20",[sender],[msg_header->Subject]) smtp,smime,md5,dkim -> do_it
true() smtp,dkim,md5,smime -> do_it
===== Message de délai =====
==== Script customcondition ====
Copier vacation.pm dans [[delai.pm]] et remplacer vacation par delai à la ligne 3 et 75
==== Modèle du message ====
sous ~sympa/etc/mail_tt2/ ou ~sympa/etc/[robot]/mail_tt2/ ou ~sympa/list_data/[robot]/[listes]/mail_tt2/
delai**.tt2**
To: [% to %]
Subject: Liste [% list.name %] : délai de traitement
Content-Type: text/plain
Content-Transfer-Encoding: 8bit
[%- USE date -%]
Bonjour
Votre message "[% subject %]" a bien été reçu sur la liste [% list.name %]@grenoble-inp.fr .
En raison des difficultés organisationnelles actuelles, un délai de traitement de vos demandes est inévitable.
Nous nous efforçons néanmoins de rendre ce délai le plus court possible.
En vous remerciant pour votre compréhension,
Bien cordialement
==== Scénario d'envoi ====
[[#scenario_d_envoi|voir]]
title.gettext DELAI
CustomCondition::delai([list->address],"2015-12-15 16:00","2018-12-20",[sender],[msg_header->Subject]) smtp,dkim,md5,smime -> do_it
true() smtp,smime -> do_it