Bonjour,
Voila je rencontre un petit problème avec mon code.
Décrivez ici votre code ou ce que vous cherchez à faire
const Discord = require('discord.js');
exports.run = (client, message, args) => {
let text = args.join(" ");
let o02 = message.guild.channels.find(x => x.name === "inter-serveur");
if(!o02) {return message.channel.send("Le channel inter-serveur est introuvable")}
if(!text) {return message.channel.send("Merci d'écrire un message qui sera envoyé à tous les serveurs où je suis.")}
if(message.channel.name != "inter-serveur") { return message.reply("Commande a effectuer dans un channel inter-serveur")}
client.channels.get(x => x.name === "inter-serveur").map[channel => channel.send("COUGHTEST")]
}
exports.help = {
name: 'is'
};
que quand on fait !is <monmessage> il soit envoyé dans tous les channels possédant le nom inter-serveur
TypeError: client.channels.find(...).map is not a function
at Object.exports.run (c:\Users\raph6\OneDrive\Bureau\ComBot\Commandes\interserveur.js:9:63)
at module.exports (c:\Users\raph6\OneDrive\Bureau\ComBot\Events\message.js:14:17)
at Client.emit (events.js:210:5)
at MessageCreateHandler.handle (c:\Users\raph6\OneDrive\Bureau\ComBot\node_modules\discord.js\src\client\websocket\packets\handlers\MessageCreate.js:9:34)
at WebSocketPacketManager.handle (c:\Users\raph6\OneDrive\Bureau\ComBot\node_modules\discord.js\src\client\websocket\packets\WebSocketPacketManager.js:105:65)
at WebSocketConnection.onPacket (c:\Users\raph6\OneDrive\Bureau\ComBot\node_modules\discord.js\src\client\websocket\WebSocketConnection.js:333:35)
at WebSocketConnection.onMessage (c:\Users\raph6\OneDrive\Bureau\ComBot\node_modules\discord.js\src\client\websocket\WebSocketConnection.js:296:17)
at WebSocket.onMessage (c:\Users\raph6\OneDrive\Bureau\ComBot\node_modules\ws\lib\event-target.js:120:16)
at WebSocket.emit (events.js:210:5)
at Receiver.receiverOnMessage (c:\Users\raph6\OneDrive\Bureau\ComBot\node_modules\ws\lib\websocket.js:789:20)
Vous l'aurez compris,c'est un problème avec le .map
Ce que dit le code d'erreur, c'est que ton client.channels.get()
retourne undefined
, ce qui fait que ça plante derrière.
As-tu essayé avec la méthode "filter", plutôt ?
Discord.js - Collection Filter
Merci infiniement :D
Juste,j'ai mis message.content et le bot redit la commande d'invocation,à savoir !is. c'est possible de supprimer celle-ci pour juste garder le message sans la commande ?
Merci d'avance
Il te suffit de split ton content à l'espace et de supprimer le premier élément.
const parts = message.content.split(' ');
parts.shift();
const content = parts.join(' ');