discordjs / Commando

Official command framework for discord.js
Apache License 2.0
497 stars 243 forks source link

Registers channel ID for arguments when it cant send messages in channels. #399

Open ghost opened 3 years ago

ghost commented 3 years ago

So, the client saves the channel id to provide it args, but, when you use the bot in a channel where it cannot type, it sends a message to the user privately.

Now, it doesn't register this new channel to ask for args, which resulted in the command locking

Essentially, i did a command in a channel where the bot couldnt send a message, then the bot sent be a private dm with the question at hand, but did not respond since the channel that was supposed to be receiving those arguments (before it obv failed to send) was the listener, should be an easy fix. Sorry if i explained badly, i can take a video if you need the bug reproduced.

S222em commented 3 years ago

Yes, that's true. But there is no way (that I know of) to get the dm channel for another purpose of using the send() method. That means that the command should be cancelled when that happens, that's the only way we can solve this. Agreed?