No description
Find a file
2025-12-04 19:55:08 +01:00
src Modification des intégrations vidéos youtube 2025-12-04 19:54:46 +01:00
.eslintrc.json Refonte du code 2025-10-12 16:57:30 +02:00
.gitignore Update .gitignore 2025-10-12 16:58:59 +02:00
.npmrc Create .npmrc 2025-10-09 16:33:22 +02:00
config.json Refonte du code 2025-10-12 16:57:30 +02:00
package.json Mise à jour de la version 2025-12-04 19:54:55 +01:00
README.md Mise à jour de la version 2025-12-04 19:54:55 +01:00
tsconfig.json Update tsconfig.json 2025-10-12 17:12:32 +02:00

bsfr-agent

Version License: ISC Twitter: BltAntoine

Bot d'administration pour le Discord Beat Saber FR

Pré-requis

  • FFMPEG (pour le téléchargement des clips/vidéos Twitch)
  • Serveur NextCloud (pour l'hébergement des clips Twitch)
  • Clé d'API Twitch (pour le téléchargement des clips Twitch postés dans le salon #clips)
  • Clé d'API Google (pour la publication des nouvelles vidéos sur la chaîne YouTube BSFR)

Installation

npm install
npm run build

Configuration

Compléter le fichier src/config.json avec les données correspondantes au serveur.

Liste des commandes

  • /ping : Test si le bot fonctionne

Permet de tester si le bot est en ligne.

Exemples :

/ping

  • /lister : Listes diverses

Permet de lister les mots à bannir, les messages d'anniversaire ou les URL malveillants.

Paramètres :

Nom Obligatoire Contenu
sujet Choix parmis Message d'anniversaire, URL malveillant
page Numéro de page à afficher

Exemples :

/list sujet:Message d'anniversaire
/list sujet:URL malveillant page:3

  • /ajouter : Ajouts divers

Permet d'ajouter des messages d'anniversaire ou des URL malveillants.

Paramètres :

Nom Obligatoire Contenu
sujet Choix parmis Message d'anniversaire, URL malveillant

Exemples :

/add sujet:Message d'anniversaire
/add sujet:URL malveillant

  • /supprimer : Suppressions diverses

Permet de supprimer des mots à bannir, des messages d'anniversaire ou des URL malveillants.

Paramètres :

Nom Obligatoire Contenu
sujet Choix parmis Message d'anniversaire, URL malveillant
texte Liste des identifiants pour les messages d'anniversaire ou URL malveillants à supprimer séparés par un point virgule ;

Exemples :

/remove sujet:Message d'anniversaire ids:1
/remove sujet:URLs malveillants ids:1;2;3;4;5

  • /avatar : Récupère l'avatar d'un membre

Permet d'afficher votre avatar ou celui d'un membre.

Nom Obligatoire Contenu
membre Membre de la guild
extension Extension de l'image (défaut: png)
taille Taille de l'image (défaut: 1024)
statique Force l'affichage statique de l'image (défaut: True)

Exemples :

/avatar
/avatar extension:png taille:512
/avatar membre:@Hei5enberg#6969 statique:True

  • /anniversaire ajouter : Ajoute votre date d'anniversaire

Permet d'ajouter votre date d'anniversaire à la base de données afin que le bot vous le souhaite le jour J.

Paramètres :

Nom Obligatoire Contenu
date Date au format JJ/MM/AAAA

Exemples :

/anniversaire ajouter date:02/11/1995

  • /anniversaire supprimer : Supprime votre date d'anniversaire

Permet de supprimer votre date d'anniversaire de la base de données.

Exemples :

/anniversaire supprimer

  • /envoyer : Envoie un message dans un salon

Permet d'envoyer un message par l'Agent dans un salon.

Paramètres :

Nom Obligatoire Contenu
salon Salon dans lequel envoyer le message
message Message à envoyer

Exemples :

/envoyer salon:#général message:Coucou !

  • /log : Récupère un fichier de log

Permet d'afficher les logs du bot pour une date donnée.

Paramètres :

Nom Obligatoire Contenu
date Date du fichier de log à afficher au format JJ/MM/AAAA

Exemples :

/log
/log date:28/04/2022

  • /roles liste : Liste vos rôles

Permet de récupérer la liste de vos rôles auto-assignables.

Exemples :

/roles liste

  • /roles ajouter <catégorie> : Ajoute un rôle pour la catégorie <catégorie>

Permet de vous attribuer un rôle auto-assignables pour la catégorie donnée.

Paramètres :

Nom Obligatoire Contenu
role Rôle pour la catégorie <catégorie> à ajouter

Exemples :

/roles ajouter notification role:Annonce

  • /roles supprimer <catégorie> : Supprime un rôle pour la catégorie <catégorie>

Permet de vous retirer un rôle auto-assignables pour la catégorie donnée.

Paramètres :

Nom Obligatoire Contenu
role Rôle pour la catégorie <catégorie> à supprimer

Exemples :

/roles supprimer notification role:Annonce

  • /dm : Envoie un message privé à un membre

Permet d'envoyer un message privé de la part de l'Agent à un membre de la guild.

Paramètres :

Nom Obligatoire Contenu
membre Membre de la guild
message Message

Exemples :

/dm membre:@Hei5enberg#6969 message:Coucou !

  • /r : Répond à un message privé

Permet de répondre à un message privé via un thread de messages privés.

Paramètres :

Nom Obligatoire Contenu
message Message

Exemples :

/r message:Coucou !

  • /ville ajouter : Ajoute votre ville de résidence

Permet d'ajouter votre ville de résidence à la base de données.

Paramètres :

Nom Obligatoire Contenu
nom_ville Nom de la ville

Exemples :

/ville ajouter nom_ville:Nantes

  • /ville supprimer : Supprime votre ville de résidence

Permet de supprimer votre ville de résidence de la base de données.

Exemples :

/ville supprimer

  • /twitch ajouter : Lie un compte Twitch à membre

Lie un compte Twitch afin d'activer les notifications lorsque le streameur est en live.

Paramètres :

Nom Obligatoire Contenu
chaine Nom de la chaîne Twitch à lier au membre

Exemples :

/twitch ajouter chaine:hei5enberg44

  • /twitch supprimer : Délie un compte Twitch d'un membre

Délie le compte Twitch afin de désactiver les notifications lorsque le streameur est en live.

Exemples :

/twitch supprimer

  • /sondage : Créé un sondage

Permet de créer un sondage et d'afficher les résultats en temps réel.

Paramètres :

Nom Obligatoire Contenu
titre Titre du sondage
liste Liste des propositions séparées par un point virgule
date_fin Date de fin du sondage au format JJ/MM/AAAA HH:II (ex: 07/09/2022 15:30)
emojis Emojis personnalisés séparés par un point virgule (doit correspondre au nombre de propositions)

Exemples :

/sondage titre:Sondage de test liste:Proposition 1;Proposition 2;Proposition 3 date_fin:06/09/2022 20:00
/sondage titre:Sondage de test liste:Proposition 1;Proposition 2;Proposition 3 date_fin:07/09/2022 15:30 emojis:💀;💩;😂

  • /cooldown ajouter : Ajoute un membre à la liste des cooldowns

Permet d'ajouter un membre à la liste des cooldowns afin que celui-ci soit mute en cas de spam de messages.

Paramètres :

Nom Obligatoire Contenu
membre Membre de la guild
seuil_temps Seuil de temps entre le premier et le dernier message envoyé (en secondes)
seuil_nombre Nombre de messages envoyés dans le seuil de temps
durée_mute Durée du mute du membre (en secondes)

Exemples :

/cooldown ajouter membre:@Hei5enberg#6969
/cooldown ajouter membre:@Hei5enberg#6969 seuil_temps:10 seuil_nombre:3 durée_mute:10

  • /cooldown supprimer : Supprime un membre de la liste des cooldowns

Permet de supprimer un membre de la liste des cooldowns. Celui-ci ne sera plus mute en cas de spam de messages.

Paramètres :

Nom Obligatoire Contenu
membre Membre de la guild

Exemples :

/cooldown supprimer membre:@Hei5enberg#6969

  • /cooldown liste : Liste les membres en cooldown

Permet de lister les membres en cooldown.

Paramètres :

Nom Obligatoire Contenu
page Numéro de page à afficher

Exemples :

/cooldown liste
/cooldown liste page:3

  • /rejoindre : Rejoindre à salon vocal

Permet d'envoyer Agent dans un salon vocal.

Paramètres :

Nom Obligatoire Contenu
salon Salon dans lequel envoyer @Agent

Exemples :

/rejoindre salon:🔊Vocal

  • /partir : Partir d'un salon vocal

Permet de faire partir Agent d'un salon vocal.

Exemples :

/partir

  • /parler : Parler dans un salon vocal

Permet de faire prononcer une phrase à @Agent via tts.

Paramètres :

Nom Obligatoire Contenu
message Message vocal à envoyer
salon Salon dans lequel envoyer le message vocal
voix Voix à utiliser

Exemples :

/parler message:Salut !
/parler salon:🔊Vocal message:Coucou !
/parler salon:🔊Vocal message:Bonjour à tous ! voix:Femme — Français

Auteur

👤 hei5enberg