Aller à : navigation, rechercher

Maarch Courrier/1.5/fr/Manuel administrateur/Fonctionnalités/Configuration des scripts de notifications

Configuration des scripts de notifications

Cette section a pour but de maîtriser le paramétrage en tâche planifiée d'une nouvelle notification Maarch.

Principe de fonctionnement des notifications du logiciel.png

Pré-requis

L'administrateur fonctionnel doit vous communiquer l'identifiant de la nouvelle notification.

Configuration de l'envoi

L'envoi des notifications est configuré dans le fichier modules/notifications/batch/config/config.xml (si il n'existe pas, renommer config.xml.default en config.xml. La configuration comporte 4 parties principales :

<CONFIG> # Chemins, URL et nom de l'application
<COLLECTION> # collection pour les notifications (uniquement letterbox_coll)
<CONFIG_BASE> # Connexion à la base de données
<MAILER> # Utilitaire d'envoi d'e-mail, adresse de l'émetteur, compte SMTP, etc.


Exemple de configuration pour le serveur gmail

<MAILER>
    <path_to_mailer>/apps/maarch_entreprise/tools/mails/htmlMimeMail.php</path_to_mailer>
    <path_to_phpmailer>PHPMailer_v5.1</path_to_phpmailer>
    <type>smtp</type><!-- mail (default), smtp, sendmail, qmail -->
    <smtp_host>ssl://smtp.gmail.com</smtp_host><!-- smtp1.example.com:25;smtp2.example.com -->
    <smtp_port>465</smtp_port><!-- smtp1.example.com:25;smtp2.example.com -->
    <smtp_user>user@gmail.com</smtp_user>
    <smtp_password>motdepasse</smtp_password>
    <smtp_auth>true</smtp_auth>
    <smtp_secure>ssl</smtp_secure><!-- tls ou ssl -->
    <charset>utf-8</charset><!-- Default : iso-8859-1 -->
    <domains>gmail.com</domains><!-- Rewrite Recipient with config->adminmail if mailfrom and mailto is out of the domains -->
    <x-mailer></x-mailer><!-- Rewrite X-Mailer header,  default : PHP/[phpversion] -->
    <mailfrom>notifications@maarch.org</mailfrom>
</MAILER>

Localisation du script

Deux options sont possible :

  1. La notification s'est générée automatiquement lors de la création de la notification, il vous suffit de la retrouver.
  2. Vous devez créer le script vous-même.

(cas 1) Génération automatique du script

Elle devrait se situer dans

modules/notifications/batch/scripts/

elle devrait être de la forme notification_[nom du custom]_[identifiant de la notification].sh

ex : notification_cs_maarchcourrier_9.sh

(cas 2) Création du script

Vous pouvez créer vous même le script de notification grâce à l'identifiant qui a été communiqué par l'administrateur fonctionnel de l'application.

rendez-vous dans le répertoire : modules/notifications/batch/scripts/

Pour la notification des bannettes

Sous linux Sous windows
Créez le script [nom du script].sh et ajoutez le contenu suivant :
cd /var/www/html/maarch_courrier/
php /var/www/html/maarch_courrier/modules/notifications/batch/basket_event_stack.php -c /var/www/html/maarch_courrier/modules/notifications/batch/config/config.xml -n [identifiant_notification]
php /var/www/html/maarch_courrier/modules/notifications/batch/process_email_stack.php -c /var/www/html/maarch_courrier/modules/notifications/batch/config/config.xml
Créez le script [nom du script].bat et ajoutez le contenu suivant :
cd "C:\xampp\htdocs\maarch_courrier\modules\notifications\batch"
"C:\xampp\php\php.exe" "C:\xampp\htdocs\maarch_courrier\modules\notifications\batch\basket_event_stack.php" -c "C:\xampp\htdocs\maarch_courrier\modules\notifications\batch\config\config.xml" -n NCT
"C:\xampp\php\php.exe" "C:\xampp\htdocs\maarch_courrier\modules\notifications\batch\process_email_stack.php" -c "C:\xampp\htdocs\maarch_courrier\modules\notifications\batch\config\config.xml"

Les chemins sont à adapter suivant la configuration de votre serveur.

Pour les notifications de relances

Sous linux Sous windows
Créez le script [nom du script].sh et ajoutez le contenu suivant :
cd /var/www/html/maarch_courrier/
php /var/www/html/maarch_courrier/modules/notifications/batch/process_letterbox_alerts.php -c /var/www/html/maarch_courrier/modules/notifications/batch/config/config.xml -n [identifiant_notification]
php /var/www/html/maarch_courrier/modules/notifications/batch/process_email_stack.php -c /var/www/html/maarch_courrier/modules/notifications/batch/config/config.xml
Créez le script [nom du script].bat et ajoutez le contenu suivant :
cd "C:\xampp\htdocs\maarch_courrier\modules\notifications\batch"
"C:\xampp\php\php.exe" "C:\xampp\htdocs\maarch_courrier\modules\notifications\batch\process_letterbox_alerts.php" -c "C:\xampp\htdocs\maarch_courrier\modules\notifications\batch\config\config.xml" -n NCT
"C:\xampp\php\php.exe" "C:\xampp\htdocs\maarch_courrier\modules\notifications\batch\process_email_stack.php" -c "C:\xampp\htdocs\maarch_courrier\modules\notifications\batch\config\config.xml"

Les chemins sont à adapter suivant la configuration de votre serveur.

Pour les notifications "manuelles"

Sous linux Sous windows
Créez le script [nom du script].sh et ajoutez le contenu suivant :
cd /var/www/html/maarch_courrier/
php /var/www/html/maarch_courrier/modules/notifications/batch/process_event_stack.php -c /var/www/html/maarch_courrier/modules/notifications/batch/config/config.xml -n [identifiant_notification]
php /var/www/html/maarch_courrier/modules/notifications/batch/process_email_stack.php -c /var/www/html/maarch_courrier/modules/notifications/batch/config/config.xml
Créez le script [nom du script].bat et ajoutez le contenu suivant :
cd "C:\xampp\htdocs\maarch_courrier\modules\notifications\batch"
"C:\xampp\php\php.exe" "C:\xampp\htdocs\maarch_courrier\modules\notifications\batch\process_event_stack.php" -c "C:\xampp\htdocs\maarch_courrier\modules\notifications\batch\config\config.xml" -n NCT
"C:\xampp\php\php.exe" "C:\xampp\htdocs\maarch_courrier\modules\notifications\batch\process_email_stack.php" -c "C:\xampp\htdocs\maarch_courrier\modules\notifications\batch\config\config.xml"

Les chemins sont à adapter suivant la configuration de votre serveur.

Planification du script

Il ne reste plus qu'à planifier ce script à intervalle régulier :

Sous linux Sous windows
connecter vous avec l'utilisateur root :

faites :

crontab -e

ajouter la ligne suivante

0 8 * * * root /.../modules/notifications/batch/scripts/[nom_du_script].sh

la notification sera lancée tous les jours 8h du matin (remplacer ... par le chemin complet de l'application)

Faites démarrer, et cherchez "Planificateur de tâches".

Une fois ouvert, vous pourrez créer une tâche pour le script en question