Home > other >  I can't send a message to a specific channel discordjs
I can't send a message to a specific channel discordjs

Time:12-06

I was trying to send a message to a specific channel so I use the script below

let msg = "I am a message"
clients.channels.cache.get("902208249099612170").send(msg)

but all I got were this error

clients.channels.cache.get("902208249099612170").send(msg)
                                                 ^

TypeError: Cannot read properties of undefined (reading 'send')

I have no idea why can't it send a message, I am using discord js v13, anyone has any idea what is the problem? Thanks

CodePudding user response:

The channel might not exist in the client's cache. Try fetching the channel instead:

clients.channels.fetch("902208249099612170").then((channel) => channel.send(msg));

// Or with async/await
const channel = await clients.channels.fetch("902208249099612170");
channel.send(msg)

CodePudding user response:

It means that the channel either doesn't exist or the bot can't see the channel/server the channel is in. Try catching it :

let msg = "This is a message."
clients.channels.fetch("902208249099612170")
.then((channel) => channel.send(msg));
.catch(err => console.log("Could not find the channel."))

CodePudding user response:

Well, I found the problem. Actually, there are multiple clients on the file and the one logged in to the bot isn't the one sending the message to the specific channel so that's why I am unable to send it. Sorry if I wasted you guys' time

  • Related