From 086414df24a5eccce1614e9a3e837864410a89e5 Mon Sep 17 00:00:00 2001 From: Antoine Van Elstraete Date: Tue, 8 Sep 2026 19:50:59 +0200 Subject: [PATCH] Delete page "GuideXMPP" --- GuideXMPP.md | 109 --------------------------------------------------- 1 file changed, 109 deletions(-) delete mode 100644 GuideXMPP.md diff --git a/GuideXMPP.md b/GuideXMPP.md deleted file mode 100644 index 320a0c0..0000000 --- a/GuideXMPP.md +++ /dev/null @@ -1,109 +0,0 @@ -# Guide-XMPP - -## Introduction -XMPP (eXtensible Messaging and Presence Protocol) est utilisé dans ce projet pour **envoyer des notifications de synthèse** via le protocole Jabber. Cette fonctionnalité est **optionnelle** et **désactivée par défaut** (`XMPP_ENABLED=false`). -Pour activer et configurer XMPP, reportez-vous au tableau complet des variables dans la page [Configuration](Configuration). - ---- - -## Comprendre le JID (Jabber ID) -Le **JID** (Jabber ID) est l'identifiant unique d'un compte XMPP. Il suit le format : -`utilisateur@domaine.tld` - -- **Exemple** : `alice@example.com` -- **Avec ressource** : `alice@example.com/ressource` (pour identifier un client spécifique). - -Dans ce projet : -- **`XMPP_JID`** : Compte expéditeur des notifications (ex: `pronote-sync@example.com`). -- **`XMPP_TO`** : JID du destinataire (ex: `parent@example.com`). -- **`XMPP_RESOURCE`** : Ressource associée à la connexion du pipeline (par défaut : `pronote-sync`). - ---- - -## Créer un compte XMPP -### Auto-hébergement -Si vous gérez votre propre serveur XMPP (Prosody, ejabberd, OpenFire), créez un compte via les outils d'administration : - -- **Prosody** : - ```bash - prosodyctl adduser utilisateur@domaine.tld - ``` -- **ejabberd** : - ```bash - ejabberdctl register utilisateur domaine mot_de_passe - ``` -- **OpenFire** : Utilisez la console web d'administration. - -### Service public -De nombreux fournisseurs XMPP proposent des comptes gratuits : -- [jabber.fr](https://jabber.fr) -- [im.apinc.org](https://im.apinc.org) -- [Autres fournisseurs](https://xmpp.net/directory.php) - -> **Sécurité** : Le mot de passe (`XMPP_PASSWORD`) est stocké en `SecretStr` et **masqué dans les logs**. - ---- - -## Hôte et port -### `XMPP_HOST` -- Par défaut, `XMPP_HOST` est vide : le pipeline se connecte au serveur indiqué par le **domaine du JID** (ex: `example.com` pour `user@example.com`). -- Si le serveur XMPP est sur un hôte différent (ex: JID `user@example.com` mais serveur sur `xmpp.example.com`), renseignez `XMPP_HOST` manuellement. -- En l'absence de `XMPP_HOST`, la résolution se fait via les **enregistrements DNS SRV** (`_xmpp-client._tcp.domaine.tld`). - -### `XMPP_PORT` -Ports standards pour les connexions client-serveur : -- **`5222`** (par défaut) : Port standard pour les connexions client-serveur XMPP. -- **`5223`** : Port historique pour les connexions avec TLS direct (legacy SSL). -- `5269` : Connexion serveur-serveur (fédération) — **non pertinent** pour ce projet. - ---- - -## TLS et `XMPP_USE_TLS` - -La variable `XMPP_USE_TLS` contrôle le mode de chiffrement de la connexion XMPP : - -- **`XMPP_USE_TLS=true`** (par défaut) : Active le **TLS direct** (connection chiffrée dès l'établissement). Le client se connecte en TLS directement, sans négociation STARTTLS préalable. Ce mode est recommandé pour les serveurs supportant le TLS direct (port 5223 typiquement). -- **`XMPP_USE_TLS=false`** : Active le **STARTTLS** (TLS opportuniste). La connexion commence en clair, puis est chiffrée après négociation STARTTLS. Ce mode est adapté aux serveurs utilisant STARTTLS sur le port 5222. - -### Contrainte de sécurité -- Désactiver le TLS direct (`XMPP_USE_TLS=false`) n'est autorisé **uniquement** pour les hôtes de boucle locale : - - `localhost` - - `127.0.0.1` - - `::1` -- Pour toute autre destination, `XMPP_USE_TLS` doit rester à `true`. Une tentative de connexion sans TLS direct échouera avec une **erreur de validation**. - -> **Note pratique** : En cas d'échec de connexion avec `XMPP_USE_TLS=true` sur le port 5222, vérifiez si votre serveur XMPP supporte le TLS direct sur ce port ou s'il attend STARTTLS. Dans ce dernier cas, vous devrez peut-être adapter la configuration du port ou utiliser le port 5223 (TLS direct). - ---- - -## Destinataire (`XMPP_TO`) -- **`XMPP_TO`** est le JID du destinataire des notifications (ex: le compte XMPP du parent). -- **Format** : `utilisateur@domaine.tld` (sans ressource). -- **Prérequis** : Le destinataire doit accepter les messages de l'expéditeur (`XMPP_JID`), selon la configuration du serveur ou du client XMPP. - ---- - -## Exemple de configuration -### XMPP activé -```ini -# Activation et configuration complète -XMPP_ENABLED=true -XMPP_JID=pronote-sync@example.com -XMPP_PASSWORD=mot_de_passe_xmpp -XMPP_HOST=xmpp.example.com -XMPP_PORT=5222 -XMPP_TO=parent@example.com -XMPP_RESOURCE=pronote-sync -XMPP_USE_TLS=true -XMPP_TIMEOUT=30 -``` - -### XMPP désactivé (par défaut) -```ini -# Désactivation (comportement par défaut) -XMPP_ENABLED=false -# Les autres variables XMPP sont ignorées -``` ---- -→ [Configuration](Configuration) — tableau des variables -→ [Sécurité](Sécurité) — gestion des secrets \ No newline at end of file