Vesion 0.1.0 - Initial Version with First Commands
This commit is contained in:
		
							
								
								
									
										20
									
								
								src/commands/_template.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								src/commands/_template.txt
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,20 @@
 | 
			
		||||
const { SlashCommandBuilder, EmbedBuilder } = require("discord.js");
 | 
			
		||||
const { __glob } = require("../modules/global-variables");
 | 
			
		||||
const { LogType } = require("../modules/sub-log");
 | 
			
		||||
const { List } = require("../modules/sub-list");
 | 
			
		||||
const subplayer = require(__glob.SUBPLAYER);
 | 
			
		||||
const packageJson = require(__glob.PACKAGE);
 | 
			
		||||
 | 
			
		||||
module.exports = {
 | 
			
		||||
 | 
			
		||||
    data: new SlashCommandBuilder()
 | 
			
		||||
    .setName("web")
 | 
			
		||||
    .setDescription("[NEW] Donne le lien vers le panel !"),
 | 
			
		||||
 | 
			
		||||
    async execute(client, interaction) {
 | 
			
		||||
 | 
			
		||||
    
 | 
			
		||||
    
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										29
									
								
								src/commands/about.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										29
									
								
								src/commands/about.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,29 @@
 | 
			
		||||
const { SlashCommandBuilder, EmbedBuilder } = require("discord.js");
 | 
			
		||||
const { __glob } = require("../modules/global-variables");
 | 
			
		||||
const packageJson = require(__glob.PACKAGE);
 | 
			
		||||
 | 
			
		||||
module.exports = {
 | 
			
		||||
 | 
			
		||||
    data: new SlashCommandBuilder()
 | 
			
		||||
    .setName("about")
 | 
			
		||||
    .setDescription("[NEW] Affiche les informations principales du bot !"),
 | 
			
		||||
 | 
			
		||||
    async execute(client, interaction) {
 | 
			
		||||
 | 
			
		||||
        const uptime = process.uptime();
 | 
			
		||||
        const hours = Math.floor(uptime / 3600);
 | 
			
		||||
        const minutes = Math.floor((uptime % 3600) / 60);
 | 
			
		||||
        const seconds = Math.floor(uptime % 60);
 | 
			
		||||
 | 
			
		||||
        const embed = new EmbedBuilder()
 | 
			
		||||
        .setColor(0xb0f542)
 | 
			
		||||
        .setThumbnail("https://cdn.discordapp.com/avatars/" + client.user.id + "/" + client.user.avatar + ".png")
 | 
			
		||||
        .setTitle('Subsonics - Web')
 | 
			
		||||
        .addFields({name: "Version ", value: packageJson.version},{name:"Uptime", value: hours + " heure(s), " +  minutes + " minute(s) et " + seconds + " seconde(s)"},{name: "Ping", value: client.ws.ping + " ms"},{name: "Un bot fait par un fan pour les fans !", value: ":heart:"})
 | 
			
		||||
        .setTimestamp();
 | 
			
		||||
       
 | 
			
		||||
        interaction.reply({embeds: [embed]})
 | 
			
		||||
    
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										33
									
								
								src/commands/help.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								src/commands/help.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,33 @@
 | 
			
		||||
const { SlashCommandBuilder, EmbedBuilder } = require("discord.js");
 | 
			
		||||
module.exports = {
 | 
			
		||||
 | 
			
		||||
    data:new SlashCommandBuilder()
 | 
			
		||||
    .setName("help")
 | 
			
		||||
    .setDescription("[NEW] Affiche toutes les commandes disponibles du bot"),
 | 
			
		||||
 | 
			
		||||
    async execute(client, interaction) {
 | 
			
		||||
 | 
			
		||||
            const embed = new EmbedBuilder()
 | 
			
		||||
            .setColor(0x03ff2d)
 | 
			
		||||
            .setTitle('Comment assister au concert ?')
 | 
			
		||||
            .setDescription("**Eh ! Tu as eu ton ticket ? Tant mieux ! Voici la liste des commandes à utiliser dans le salon <#664355637685256203>**")
 | 
			
		||||
            .addFields({name: "/play <nom/playlist>", value: "Cette commande te permet de lire des titres comme des playlists depuis Youtube / SoundCloud / Vimeo, n'importe quelle musique !"},
 | 
			
		||||
                       {name: "/leave", value: "Si tu ne veux plus du meilleur groupe du monde (faire partir le bot), cette commande le fera partir aussi vite qu'il est arrivé !"},
 | 
			
		||||
                       {name: "/pause", value: "Besoin d'un entracte ? Cette commande te permettera de mettre en pause ou de remettre le morceau en cours !"},
 | 
			
		||||
                       {name: "/state", value: "Donne le titre de la musique"},
 | 
			
		||||
                       {name: "/skip", value: "Passer à la chanson suivante."},
 | 
			
		||||
                       {name: "/previous", value: "Revenir à la chanson précédente."},
 | 
			
		||||
                       {name: "/about", value: "Affiche les informations principales !"},
 | 
			
		||||
                       {name: "/web", value: "Donne le lien vers le panel !"})
 | 
			
		||||
            .setTimestamp()
 | 
			
		||||
            .addFields({name: "La queue et la gestion du redémarrage se fait par le site https://subsonics.raphix.fr/", value: ":star:"})
 | 
			
		||||
            .setThumbnail("https://static.wikia.nocookie.net/codelyoko/images/9/95/Subdigitals.jpg/revision/latest/scale-to-width-down/180?cb=20120105180510&path-prefix=fr");
 | 
			
		||||
        
 | 
			
		||||
 | 
			
		||||
        
 | 
			
		||||
            interaction.reply({embeds: [embed]})
 | 
			
		||||
        
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										24
									
								
								src/commands/leave.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								src/commands/leave.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,24 @@
 | 
			
		||||
const { SlashCommandBuilder, EmbedBuilder } = require("discord.js");
 | 
			
		||||
const { __glob } = require("../modules/global-variables");
 | 
			
		||||
const subplayer = require(__glob.SUBPLAYER);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
module.exports = {
 | 
			
		||||
 | 
			
		||||
    data: new SlashCommandBuilder()
 | 
			
		||||
    .setName("leave")
 | 
			
		||||
    .setDescription("[NEW] Déconnecte le Bot !"),
 | 
			
		||||
 | 
			
		||||
    async execute(client, interaction) {
 | 
			
		||||
 | 
			
		||||
        // CHECK MEMBER IF IN VOICE CHANNEL
 | 
			
		||||
 | 
			
		||||
        if(!interaction.member.voice.channel) return interaction.reply({content:"Vous devez rejoindre un salon vocal pour contrôler le Bot !", ephemeral: true})
 | 
			
		||||
   
 | 
			
		||||
        subplayer.leave(client, interaction)
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										22
									
								
								src/commands/pause.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								src/commands/pause.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,22 @@
 | 
			
		||||
const { SlashCommandBuilder, EmbedBuilder } = require("discord.js");
 | 
			
		||||
const { __glob } = require("../modules/global-variables");
 | 
			
		||||
const { LogType } = require("../modules/sub-log");
 | 
			
		||||
const { List } = require("../modules/sub-list");
 | 
			
		||||
const subplayer = require(__glob.SUBPLAYER);
 | 
			
		||||
const packageJson = require(__glob.PACKAGE);
 | 
			
		||||
 | 
			
		||||
module.exports = {
 | 
			
		||||
 | 
			
		||||
    data: new SlashCommandBuilder()
 | 
			
		||||
    .setName("pause")
 | 
			
		||||
    .setDescription("[NEW] Cette commande te permettera de mettre en pause ou de remettre le morceau en cours !"),
 | 
			
		||||
 | 
			
		||||
    async execute(client, interaction) {
 | 
			
		||||
 | 
			
		||||
        if(!interaction.member.voice.channel) return interaction.reply({content:"Vous devez rejoindre un salon vocal pour contrôler le Bot !", ephemeral: true})
 | 
			
		||||
   
 | 
			
		||||
        subplayer.pause(client, interaction)
 | 
			
		||||
    
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										27
									
								
								src/commands/play.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								src/commands/play.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,27 @@
 | 
			
		||||
const { SlashCommandBuilder, EmbedBuilder } = require("discord.js");
 | 
			
		||||
const { __glob } = require("../modules/global-variables");
 | 
			
		||||
const subplayer = require(__glob.SUBPLAYER);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
module.exports = {
 | 
			
		||||
 | 
			
		||||
    data: new SlashCommandBuilder()
 | 
			
		||||
    .setName("play")
 | 
			
		||||
    .setDescription("[NEW] Permet de lire des titres comme des playlists depuis Youtube / SoundCloud / Vimeo !")
 | 
			
		||||
    .addStringOption(option => option.setName("nom_ou_lien").setDescription("Lien ou nom du titre ou de la playlist").setRequired(true)),
 | 
			
		||||
 | 
			
		||||
    async execute(client, interaction) {
 | 
			
		||||
 | 
			
		||||
        // CHECK MEMBER IF IN VOICE CHANNEL
 | 
			
		||||
 | 
			
		||||
        if(!interaction.member.voice.channel) return interaction.reply({content:"Vous devez rejoindre un salon vocal pour lire un(e) titre / playlist !", ephemeral: true})
 | 
			
		||||
 | 
			
		||||
        //CHECK OF PLAYER
 | 
			
		||||
 | 
			
		||||
        subplayer.play(client, interaction)
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								src/commands/previous.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								src/commands/previous.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
const { SlashCommandBuilder, EmbedBuilder } = require("discord.js");
 | 
			
		||||
const { __glob } = require("../modules/global-variables");
 | 
			
		||||
const { LogType } = require("../modules/sub-log");
 | 
			
		||||
const { List } = require("../modules/sub-list");
 | 
			
		||||
const subplayer = require(__glob.SUBPLAYER);
 | 
			
		||||
const packageJson = require(__glob.PACKAGE);
 | 
			
		||||
 | 
			
		||||
module.exports = {
 | 
			
		||||
 | 
			
		||||
    data: new SlashCommandBuilder()
 | 
			
		||||
    .setName("previous")
 | 
			
		||||
    .setDescription("[NEW] Revenir à la chanson précédente."),
 | 
			
		||||
 | 
			
		||||
    async execute(client, interaction) {
 | 
			
		||||
 | 
			
		||||
        subplayer.previous(client, interaction)
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										20
									
								
								src/commands/skip.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								src/commands/skip.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,20 @@
 | 
			
		||||
const { SlashCommandBuilder, EmbedBuilder } = require("discord.js");
 | 
			
		||||
const { __glob } = require("../modules/global-variables");
 | 
			
		||||
const { LogType } = require("../modules/sub-log");
 | 
			
		||||
const { List } = require("../modules/sub-list");
 | 
			
		||||
const subplayer = require(__glob.SUBPLAYER);
 | 
			
		||||
const packageJson = require(__glob.PACKAGE);
 | 
			
		||||
 | 
			
		||||
module.exports = {
 | 
			
		||||
 | 
			
		||||
    data: new SlashCommandBuilder()
 | 
			
		||||
    .setName("skip")
 | 
			
		||||
    .setDescription("[NEW] Passer à la chanson suivante."),
 | 
			
		||||
 | 
			
		||||
    async execute(client, interaction) {
 | 
			
		||||
 | 
			
		||||
    
 | 
			
		||||
        subplayer.skip(client, interaction)
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								src/commands/state.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								src/commands/state.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
const { SlashCommandBuilder, EmbedBuilder } = require("discord.js");
 | 
			
		||||
const { __glob } = require("../modules/global-variables");
 | 
			
		||||
const { LogType } = require("../modules/sub-log");
 | 
			
		||||
const { List } = require("../modules/sub-list");
 | 
			
		||||
const subplayer = require(__glob.SUBPLAYER);
 | 
			
		||||
const packageJson = require(__glob.PACKAGE);
 | 
			
		||||
 | 
			
		||||
module.exports = {
 | 
			
		||||
 | 
			
		||||
    data: new SlashCommandBuilder()
 | 
			
		||||
    .setName("state")
 | 
			
		||||
    .setDescription("[NEW] Donne le titre de la musique !"),
 | 
			
		||||
 | 
			
		||||
    async execute(client, interaction) {
 | 
			
		||||
 | 
			
		||||
        subplayer.getState(client, interaction)
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										24
									
								
								src/commands/web.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								src/commands/web.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,24 @@
 | 
			
		||||
const { SlashCommandBuilder, EmbedBuilder } = require("discord.js");
 | 
			
		||||
const { __glob } = require("../modules/global-variables");
 | 
			
		||||
const packageJson = require(__glob.PACKAGE);
 | 
			
		||||
 | 
			
		||||
module.exports = {
 | 
			
		||||
 | 
			
		||||
    data: new SlashCommandBuilder()
 | 
			
		||||
    .setName("web")
 | 
			
		||||
    .setDescription("[NEW] Donne le lien vers le panel !"),
 | 
			
		||||
 | 
			
		||||
    async execute(client, interaction) {
 | 
			
		||||
 | 
			
		||||
        const embed = new EmbedBuilder()
 | 
			
		||||
        .setColor(0xffffff)
 | 
			
		||||
        .setThumbnail("https://cdn.discordapp.com/avatars/" + client.user.id + "/" + client.user.avatar + ".png")
 | 
			
		||||
        .setTitle('Subsonics - Web')
 | 
			
		||||
        .addFields({name: "Lien", value:"https://subsonics.raphix.fr"})
 | 
			
		||||
        .setTimestamp();
 | 
			
		||||
       
 | 
			
		||||
        interaction.reply({embeds: [embed]})
 | 
			
		||||
    
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user