Aide & Documentation
← Retour à l'application

🎭 HCAutomate Pi

Manuel utilisateur — Génération et publication automatique de l'agenda Human Comédie

1 Présentation générale

HCAutomate Pi est une application web qui génère et publie automatiquement l'agenda de l'association Human Comédie sur WordPress. Elle tourne en permanence sur le Raspberry Pi 5 et est accessible depuis n'importe quel navigateur sur le réseau local.

FonctionDescription
Chargement événementsRécupère spectacles et stages depuis l'API HelloAsso
Génération afficheDeux thèmes : Programme (liste) et Cartes
Descriptions HTMLScraping automatique depuis chaque page HelloAsso via Chromium
Publication WordPressMise à jour du bloc HTML dans la page "Agenda"
Publication automatiqueCron quotidien à 07h00

2 Accès à l'application

Depuis n'importe quel navigateur sur le réseau local :

http://192.168.1.60:3141    ← adresse IP du Pi
http://FSA-PI5.local:3141  ← nom réseau

Barre de titre

ÉlémentRôle
Pastille HelloAssoVerte = connecté · Rouge = erreur credentials
Pastille WordPressVerte = connecté · Rouge = erreur
🕐 Dernière publicationDate et heure de la dernière publication réussie
déployé le …Date du dernier redémarrage du serveur
⚡ Publier maintenantLance le pipeline complet immédiatement

3 Onglet Agenda

Paramètres

ChampDescription
Semaines à venirFenêtre temporelle : 2 / 4 / 6 / 8 / 12 semaines (défaut : 4)
ThèmeProgramme (liste) ou Cartes
Texte pied de pageMention affichée en bas de l'affiche (ex : "Réservations conseillées")
Ces préférences sont sauvegardées automatiquement et utilisées par la publication cron quotidienne.

Chargement

Cliquez sur ⬇️ Charger — l'application interroge HelloAsso et affiche les événements groupés par mois dans la période sélectionnée.

Sélection

Cochez/décochez individuellement chaque événement. Utilisez Tout cocher ou Tout décocher pour sélectionner en masse.

Aperçu

Cliquez sur 🔄 Aperçu pour générer le rendu visuel à droite.

Thème Cartes : chaque carte affiche la miniature, le titre, le lieu, la date et un bouton "+ Voir plus" qui déplie la description HTML complète récupérée depuis HelloAsso par scraping Chromium.

Actions

BoutonAction
🔄 AperçuGénère le rendu visuel avec les événements sélectionnés
💾 ExporterTélécharge le fichier HTML sur votre ordinateur
🌐 WordPressPublie immédiatement les événements sélectionnés sur la page Agenda

4 Onglet Configuration

HelloAsso API

ChampDescription
Client IDID de l'application OAuth HelloAsso
Client SecretClé secrète (confidentielle)
Slug organisationIdentifiant de l'association dans l'URL (ex : human-comedie)

Cliquez 💾 Sauvegarder & Tester — la pastille HelloAsso doit passer au vert.

WordPress

ChampDescription
URL du siteAdresse racine (ex : https://humancomedie.fr)
IdentifiantNom d'utilisateur WordPress
Mot de passe d'applicationGénéré dans WordPress → Utilisateurs → Profil → Mots de passe d'application
⚠️ Le mot de passe d'application est différent de votre mot de passe de connexion WordPress.
La page cible doit exister avec le slug agenda et contenir un bloc <!-- wp:html -->. L'application ne crée jamais de page.

5 Publication manuelle

⚡ Publier maintenant

Pipeline complet exécuté dans l'ordre :

  1. Authentification HelloAsso
  2. Récupération des événements (N semaines configurées)
  3. Scraping des descriptions HTML depuis chaque page HelloAsso (Chromium)
  4. Génération de l'affiche avec le thème sauvegardé
  5. Publication dans le bloc HTML de la page WordPress "Agenda"
  6. Enregistrement de l'horodatage

🌐 WordPress (depuis l'aperçu)

Publie les événements actuellement sélectionnés — sans re-chargement depuis HelloAsso ni scraping.

Ligne de commande

cd ~/prj-hcautomate && node publish.js

6 Publication automatique

Une tâche cron s'exécute chaque matin à 07h00 et lance le pipeline complet avec la configuration sauvegardée.

Vérifier / modifier

# Voir la tâche planifiée
crontab -l

# Modifier l'heure
crontab -e

Logs

cat ~/prj-hcautomate/publish.log
⚠️ Le Raspberry Pi doit être allumé pour que le cron s'exécute.

7 Journal des activités

Le journal en bas de l'onglet Agenda affiche en temps réel :

IcôneSignification
Opération réussie (vert)
Erreur (rouge)
📍 fichier:ligneLocalisation précise de l'erreur dans le code
HH:MM:SSHorodatage de chaque étape

8 Dépannage

❌ Les événements ne se chargent pas
Vérifier Client ID / Secret / Slug dans Configuration et cliquer sur Sauvegarder & Tester. La pastille HelloAsso doit passer au vert.
❌ "Page Agenda introuvable sur WordPress"
Créer manuellement la page WordPress avec le slug agenda et y ajouter un bloc HTML personnalisé via l'éditeur Gutenberg.
❌ "Aucun bloc HTML personnalisé trouvé"
La page Agenda existe mais ne contient pas de bloc <!-- wp:html -->. Ajouter ce bloc dans l'éditeur WordPress.
❌ Erreur 401 / 403 WordPress
Régénérer le mot de passe d'application dans WordPress (Utilisateurs → Profil → Mots de passe d'application) et le mettre à jour dans la Configuration.
⚠️ Description manquante dans les cartes (fallback texte)
Normal si Cloudflare bloque temporairement le scraping. L'événement est publié avec la description textuelle. Relancer manuellement si nécessaire.
❌ Interface inaccessible (cannot connect)
Le serveur n'est pas démarré. Sur le Pi : bash ~/prj-hcautomate/restart.sh
❌ La publication cron ne s'exécute pas à 07h00
Vérifier crontab -l, consulter ~/prj-hcautomate/publish.log et s'assurer que le Pi est allumé.