Submitted by PilouPilou on
Bonjour,
J'aurais besoin de savoir si la rule que je veux mettre en place est possible (sans mettre le nez dans le code)
J'ai un type "évènement" avec un champ ma_date et un champ mes_users.
Je voudrais que 7 jours avant ma_date un mail soit envoyé à mes_users.
Pour le moment j'ai réussi à n'envoyer un mail que à la création d'un contenu de type évènement.
Je ne vois pas comment faire pour qu'à intervalles réguliers le site passe tous les contenus de type évènement et vérifie ma_date pour envoyer le mail si nécessaire...
Si quelqu'un a un avis sur la faisabilité de cette rule.
Je prends peut être aussi le problème dans le mauvais sens...
Merci d'avance
Il me semble avoir vu un
Permalien Soumis par vincent59 le 23 Janvier, 2012 - 13:43
Il me semble avoir vu un Rules Scheduler, qui permet de lancer des règles à intervalle régulier.
Quelques exemples : http://drupal.org/node/517674
Alors j’ai finalement réussi
Permalien Soumis par PilouPilou le 31 Janvier, 2012 - 16:11
Alors j'ai finalement réussi à faire ce que je voulais :
- créer un contenu de type "A" avec un champ utilisateurs (liste de références à un utilisateur) et un champ maDate
- à la création et à la modification d'un contenu de ce type :
- envoyer un mail aux utilisateurs
- envoyer un mail 7 jours avant la date maDate à ces mêmes utilisateurs pour rappel.
Il faut d'abord créer des composants de rule, pour permettre l'envoi des mails.
Comme le corps de mes deux mails sont différents j'ai créé deux composants différents.
Il faut ensuite créer des paramètres de ces composants(Utilisateur qui est une Liste d'utilisateurs, et Contenu qui sera un contenu de type "A").
Choisir une action loop sur chaque item de la Liste d'utilisateurs et une action envoyer un mail avec les champs qui vont bien (notamment l'adresse mail qui se base l'item de la liste).
Il ne reste plus ensuite qu'à créer une rule qui appellera mes deux composants via les bons paramètres (node pour le contenu et node:utilisateurs pour la liste des utilisateurs).
Cette rule a donc deux actions :
- une qui appelle le composant envoi de mail à la création/modification du contenu
- l'autre qui planifie l'évaluation du composant envoyer un mail 7 jours avant la date maDate. (Dans ce type d'action on choisit la date avec éventuellement un décalage (ici -7 jours).
Les tutos sur scheduler et consors en anglais ne sont pas vraiment simples à prendre en main, mais permette de bien dissocier un composant et donc de simplifier la rule.
J'espère que cette petite aide pourra servir, et merci vincent59 pour m'avoir dirigé sur ces tutos très complets(xes)!