# Administration ntfy Toutes les commandes s'exécutent depuis le dossier contenant le `docker-compose.yml`. --- ## Utilisateurs ### Lister les utilisateurs ```bash docker exec -it ntfy ntfy user list ``` ### Ajouter un utilisateur standard ```bash docker exec -it ntfy ntfy user add prenom_user # → saisir le mot de passe interactivement ``` ### Ajouter un administrateur ```bash docker exec -it ntfy ntfy user add --role=admin prenom_user ``` ### Changer le mot de passe ```bash docker exec -it ntfy ntfy user change-pass prenom_user ``` ### Promouvoir un user en admin (ou l'inverse) ```bash docker exec -it ntfy ntfy user change-role prenom_user admin docker exec -it ntfy ntfy user change-role prenom_user user ``` ### Supprimer un utilisateur ```bash docker exec -it ntfy ntfy user del prenom_user ``` --- ## Droits d'accès (ACL) Après avoir créé un utilisateur, il faut lui donner accès aux topics UnifiedPush. ### Donner accès à un nouvel utilisateur ```bash # Synapse peut publier sur les topics "up*" sans compte docker exec -it ntfy ntfy access '*' 'up*' write-only # Le user peut lire ses topics "up*" docker exec -it ntfy ntfy access prenom_user 'up*' read-only ``` > Ces deux commandes sont à exécuter pour **chaque nouvel utilisateur**. ### Voir toutes les ACL configurées ```bash docker exec -it ntfy ntfy access ``` ### Révoquer les droits d'un utilisateur sur un topic ```bash docker exec -it ntfy ntfy access --reset prenom_user 'up*' ``` ### Révoquer tous les droits d'un utilisateur ```bash docker exec -it ntfy ntfy access --reset prenom_user ``` --- ## Checklist : ajouter un nouvel utilisateur ```bash # 1. Créer le compte docker exec -it ntfy ntfy user add prenom_user # 2. Donner accès aux topics UnifiedPush docker exec -it ntfy ntfy access '*' 'up*' write-only docker exec -it ntfy ntfy access prenom_user 'up*' read-only # 3. Vérifier docker exec -it ntfy ntfy user list docker exec -it ntfy ntfy access ``` Ensuite, communiquer à l'utilisateur : - L'URL du serveur : `https://ntfy.mondomaine.fr` - Son login et mot de passe - Lui demander d'installer l'app ntfy (F-Droid ou Play Store) --- ## Dépannage ### Un utilisateur ne reçoit pas ses notifications 1. Vérifier que le Matrix gateway répond (voir Supervision) 2. Vérifier que Synapse peut joindre ntfy : ```bash # Depuis le conteneur Synapse docker exec -it synapse curl https://ntfy.mondomaine.fr/_matrix/push/v1/notify ``` 3. Vérifier les ACL de l'utilisateur : ```bash docker exec -it ntfy ntfy access prenom_user ``` 4. Dans Element-X : Paramètres → Notifications → Troubleshoot notifications ### Les logs montrent des 401 (Unauthorized) L'utilisateur n'a pas configuré ses identifiants dans l'app ntfy, ou les identifiants sont incorrects. Refaire un `change-pass` si besoin. ### Les logs montrent des 429 (Too Many Requests) Le rate limiting est déclenché. Si c'est un usage légitime, ajuste `visitor-message-daily-limit` dans `config/server.yml`. Si c'est un abus, l'IP source sera dans les logs.