palico-bot/README.md

1.5 KiB

palico-bot

Configuration

La configuration sensible est stockée dans un fichier .env exclu de Git. Chaque environnement (poste local ou VM de production) possède son propre fichier .env avec les valeurs appropriées.

Le fichier .env.example documente les variables attendues sans contenir de secret. Les fichiers réels doivent rester hors du dépôt.

Générer une clé d'API robuste avec :

openssl rand -hex 32
# Lancer le bot
npm start

# Déployer les commandes Discord
npm run deploy

Node.js 22.12 ou supérieur est nécessaire pour la prise en charge du protocole vocal DAVE de Discord.

Prérequis

  • Node.js 24 LTS ;
  • FFmpeg et FFprobe disponibles dans le PATH ;
  • accès UDP sortant vers les serveurs vocaux Discord.

Sur Debian ou Ubuntu :

sudo apt install ffmpeg
npm ci
npm run check

Données persistantes

Le dossier storage/ est une donnée applicative et ne doit pas être remplacé pendant un déploiement. Sauvegarder régulièrement :

  • storage/runtime/library.json ;
  • storage/permanent/.

Les fichiers placés dans storage/temp/ sont temporaires et nettoyés après 24 heures.

La liste des serveurs de jeux est locale. La créer à partir du modèle :

cp src/static/gameservers-list.example.json src/static/gameservers-list.json

Déploiement

Un push sur main exécute les contrôles syntaxiques, les tests et l'audit npm avant d'appeler /usr/local/bin/deploy-palico-bot sur le serveur. Le workflow vérifie ensuite la route publique /healthz.