148 lines
4.4 KiB
Markdown
148 lines
4.4 KiB
Markdown
# Récapitulatif hebdomadaire Plex pour Discord
|
|
|
|
Ce script génère et envoie automatiquement un récapitulatif hebdomadaire des nouveautés de votre serveur Plex sur Discord.
|
|
|
|
## Installation
|
|
|
|
Les dépendances Python (`requests` et `urllib3`) sont généralement déjà installées avec Python3. Si ce n'est pas le cas, installez-les :
|
|
|
|
```bash
|
|
# Option 1 : Via apt (recommandé sur Debian/Ubuntu)
|
|
apt install python3-pip
|
|
pip3 install -r /opt/container/scripts/requirements.txt
|
|
|
|
# Option 2 : Vérifier si les modules sont déjà disponibles
|
|
python3 -c "import requests, urllib3; print('Dépendances OK')"
|
|
```
|
|
|
|
## Configuration
|
|
|
|
1. **Créer un webhook Discord** :
|
|
- Allez dans les paramètres de votre salon Discord
|
|
- Intégrations > Webhooks > Nouveau Webhook
|
|
- Copiez l'URL du webhook
|
|
|
|
2. **Configurer le fichier de configuration** :
|
|
- Éditez `/opt/container/scripts/plex-recap-config.json`
|
|
- Ajoutez l'URL du webhook Discord dans `discord.webhook_url`
|
|
- Vérifiez que les URLs et clés API sont correctes
|
|
|
|
## Utilisation
|
|
|
|
Le script peut être utilisé de plusieurs façons pour envoyer des récapitulatifs séparés :
|
|
|
|
### Méthode 1 : Scripts wrapper (recommandé pour cronmaster)
|
|
|
|
Des scripts wrapper sont disponibles pour simplifier l'utilisation :
|
|
|
|
**Envoyer uniquement les films** :
|
|
```bash
|
|
/opt/container/scripts/plex-recap-movies.sh
|
|
```
|
|
|
|
**Envoyer uniquement les séries** :
|
|
```bash
|
|
/opt/container/scripts/plex-recap-series.sh
|
|
```
|
|
|
|
**Envoyer uniquement les demandes approuvées** :
|
|
```bash
|
|
/opt/container/scripts/plex-recap-requests.sh
|
|
```
|
|
|
|
### Méthode 2 : Arguments en ligne de commande
|
|
|
|
**Envoyer uniquement les films** :
|
|
```bash
|
|
python3 /opt/container/scripts/plex-weekly-recap.py --movies
|
|
```
|
|
|
|
**Envoyer uniquement les séries** :
|
|
```bash
|
|
python3 /opt/container/scripts/plex-weekly-recap.py --series
|
|
```
|
|
|
|
**Envoyer uniquement les demandes approuvées** :
|
|
```bash
|
|
python3 /opt/container/scripts/plex-weekly-recap.py --requests
|
|
```
|
|
|
|
**Envoyer tout (films, séries, demandes) - par défaut** :
|
|
```bash
|
|
python3 /opt/container/scripts/plex-weekly-recap.py --all
|
|
# ou simplement
|
|
python3 /opt/container/scripts/plex-weekly-recap.py
|
|
```
|
|
|
|
**Personnaliser le nombre de jours** :
|
|
```bash
|
|
python3 /opt/container/scripts/plex-weekly-recap.py --movies --days 14
|
|
```
|
|
|
|
## Planification
|
|
|
|
### Option 1 : Via cronmaster (recommandé)
|
|
|
|
Vous pouvez créer plusieurs tâches séparées dans cronmaster :
|
|
|
|
**Films uniquement** (chaque dimanche à 18h00) :
|
|
- **Commande** : `/opt/container/scripts/plex-recap-movies.sh` (ou `python3 /opt/container/scripts/plex-weekly-recap.py --movies`)
|
|
- **Planification** : `0 18 * * 0`
|
|
|
|
**Séries uniquement** (chaque lundi à 18h00) :
|
|
- **Commande** : `/opt/container/scripts/plex-recap-series.sh` (ou `python3 /opt/container/scripts/plex-weekly-recap.py --series`)
|
|
- **Planification** : `0 18 * * 1`
|
|
|
|
**Demandes uniquement** (chaque mardi à 18h00) :
|
|
- **Commande** : `/opt/container/scripts/plex-recap-requests.sh` (ou `python3 /opt/container/scripts/plex-weekly-recap.py --requests`)
|
|
- **Planification** : `0 18 * * 2`
|
|
|
|
**Tout** (chaque dimanche à 19h00) :
|
|
- **Commande** : `python3 /opt/container/scripts/plex-weekly-recap.py --all`
|
|
- **Planification** : `0 19 * * 0`
|
|
|
|
### Option 2 : Via crontab système
|
|
|
|
Ajoutez ces lignes dans votre crontab (`crontab -e`) :
|
|
```
|
|
# Films chaque dimanche à 18h00
|
|
0 18 * * 0 /opt/container/scripts/plex-recap-movies.sh
|
|
|
|
# Séries chaque lundi à 18h00
|
|
0 18 * * 1 /opt/container/scripts/plex-recap-series.sh
|
|
|
|
# Demandes chaque mardi à 18h00
|
|
0 18 * * 2 /opt/container/scripts/plex-recap-requests.sh
|
|
```
|
|
|
|
### Option 3 : Test manuel
|
|
|
|
Pour tester le script manuellement :
|
|
```bash
|
|
# Tester les films
|
|
python3 /opt/container/scripts/plex-weekly-recap.py --movies
|
|
|
|
# Tester les séries
|
|
python3 /opt/container/scripts/plex-weekly-recap.py --series
|
|
|
|
# Tester les demandes
|
|
python3 /opt/container/scripts/plex-weekly-recap.py --requests
|
|
```
|
|
|
|
## Format du message Discord
|
|
|
|
Le message Discord contiendra :
|
|
- 📺 **Nouveaux Films** : Liste des films ajoutés via Radarr
|
|
- 📺 **Nouvelles Séries** : Liste des séries ajoutées via Sonarr
|
|
- ✅ **Demandes approuvées** : Liste des demandes approuvées dans Jellyseerr
|
|
|
|
## Logs
|
|
|
|
Les logs sont écrits dans `/opt/container/scripts/plex-recap.log`
|
|
|
|
## Dépannage
|
|
|
|
- Vérifiez que les APIs de Jellyseerr, Radarr et Sonarr sont accessibles
|
|
- Vérifiez que l'URL du webhook Discord est correcte
|
|
- Consultez le fichier de log pour les erreurs détaillées
|