No description
Find a file
uzurka 105038a62b
All checks were successful
Docker Build / Build Docker image (push) Successful in 2m37s
Update for docker
2026-05-04 23:45:39 +02:00
.forgejo/workflows Added docker 2026-05-04 23:40:22 +02:00
commands Second commit lmao 2026-05-04 23:28:31 +02:00
events Second commit lmao 2026-05-04 23:28:31 +02:00
utils Update for docker 2026-05-04 23:45:39 +02:00
.env.example Second commit lmao 2026-05-04 23:28:31 +02:00
.gitignore Update for docker 2026-05-04 23:45:39 +02:00
deploy-commands.js Second commit lmao 2026-05-04 23:28:31 +02:00
Dockerfile Added docker 2026-05-04 23:40:22 +02:00
index.js Second commit lmao 2026-05-04 23:28:31 +02:00
package-lock.json First commit 2026-05-04 22:36:56 +02:00
package.json Second commit lmao 2026-05-04 23:28:31 +02:00
README.md Second commit lmao 2026-05-04 23:28:31 +02:00

🎤 Karaoké Bot Discord

Un bot Discord qui permet de gérer des sessions de karaoké interactives avec plusieurs fonctionnalités avancées.

🌟 Fonctionnalités

  • Commande /lancerkaraoke : Démarre une session de karaoké dans le salon vocal actuel
  • MP automatique : Envoie un message privé aux nouveaux arrivants avec choix entre chanter ou écouter
  • Gestion de la liste : Affiche la liste des chanteurs avec le chanteur actuel mis en évidence
  • Boutons interactifs :
    • ⏭️ Suivant : Passer au chanteur suivant
    • 🎤 Rejoindre : S'ajouter à la liste des chanteurs
    • 🚪 Quitter : Se retirer de la liste des chanteurs
    • 🛑 Finir : Terminer la session de karaoké
  • Gestion intelligente des absences :
    • Si un utilisateur quitte et revient, il reste dans la liste
    • Si un utilisateur est absent depuis plus de 10 minutes, il est automatiquement retiré avec notification
  • Multi-serveur : Fonctionne sur plusieurs serveurs Discord simultanément

📋 Prérequis

  • Node.js (v16 ou supérieur)
  • Un compte Discord Bot avec les permissions suivantes :
    • Send Messages (Envoyer des messages)
    • Embed Links (Intégrer des liens)
    • Read Message History (Lire l'historique des messages)
    • View Channel (Voir le canal)

🚀 Installation

  1. Cloner le repository

    git clone <votre-repo>
    cd discordbot-karaobot
    
  2. Installer les dépendances

    npm install
    
  3. Configurer le bot

    • Créez un fichier .env à la racine du projet
    • Copiez le contenu de .env.example dans .env
    • Remplacez votre_token_ici par votre token Discord Bot
    • Remplacez votre_client_id_ici par votre Client ID (disponible dans le Discord Developer Portal)
    DISCORD_TOKEN=votre_token_ici
    CLIENT_ID=votre_client_id_ici
    
  4. Déployer les commandes slash

    • Avant de démarrer le bot, déployez les commandes slash :
    npm run deploy
    
    • Cela déploiera les commandes globalement ET sur tous les serveurs où le bot est présent
  5. Inviter le bot sur votre serveur

    • Allez sur le Discord Developer Portal
    • Créez une application et ajoutez un bot
    • Générez un token et copiez-le dans votre fichier .env
    • Invitez le bot avec les permissions nécessaires
  6. Démarrer le bot

    npm start
    

🎮 Utilisation

Démarrer une session de karaoké

  1. Rejoignez un salon vocal
  2. Utilisez la commande /lancerkaraoke
  3. Le bot enverra un embed dans le salon vocal avec les boutons de contrôle

Pour les participants

  • Nouveaux arrivants : Recevront automatiquement un MP avec le choix de chanter ou écouter
  • Chanteurs : Apparaissent dans la liste avec leur statut (🎤 en vocal, ⏸️ absent)
  • Boutons : Utilisez les boutons pour rejoindre/quitter la liste ou passer au suivant

Gestion de la session

  • Le bouton Suivant fait passer au chanteur suivant dans la liste
  • Le bouton Finir termine la session et supprime l'embed
  • Les utilisateurs peuvent rejoindre ou quitter à tout moment via les boutons

⚙️ Configuration

Le bot est configuré pour fonctionner avec les paramètres suivants :

  • Timeout d'absence : 10 minutes avant qu'un chanteur absent soit retiré
  • Délai de réponse au MP : 5 minutes pour répondre au choix initial
  • Multi-serveur : Chaque serveur peut avoir sa propre session de karaoké

📝 Structure du projet

discordbot-karaobot/
├── commands/
│   └── lancerkaraoke.js    # Commande slash pour démarrer le karaoké
├── events/
│   ├── ready.js            # Événement de démarrage du bot
│   ├── voiceStateUpdate.js # Gestion des entrées/sorties vocales
│   └── interactionCreate.js # Gestion des boutons et commandes
├── utils/
│   ├── embed.js            # Création des embeds
│   └── buttons.js          # Création des boutons
├── index.js                # Point d'entrée du bot
├── package.json            # Dépendances du projet
├── .env                    # Configuration (token)
└── .env.example            # Exemple de configuration

🐛 Dépannage

Le bot ne répond pas aux commandes

  • Vérifiez que le token est correct dans le fichier .env
  • Assurez-vous que le bot a les permissions nécessaires
  • Vérifiez que les intents sont activés dans le Discord Developer Portal

Les MP ne s'envoient pas

  • Vérifiez que le bot a la permission d'envoyer des MPs
  • Certains utilisateurs peuvent avoir désactivé les MPs

Le bot ne détecte pas les entrées/sorties vocales

  • Assurez-vous que l'intent GuildVoiceStates est activé
  • Vérifiez que le bot a accès au salon vocal

🤝 Contribution

Les contributions sont les bienvenues ! N'hésitez pas à ouvrir une issue ou un pull request.

📄 Licence

ISC

🎉 Amusez-vous bien !

Profitez de vos sessions de karaoké avec vos amis ! 🎤🎶