#javascript #node.js #discord #discord.js
Вопрос:
Я переделываю музыкального бота Discord, которого сделал некоторое время назад в Discord.js v12.5.3
и когда я пытаюсь использовать любую команду слэша, кроме play, она выдает мне эту ошибку:
C:UsersAlexDocumentsProgrammingNodeJSDiscord ботыDJeff Newnode_modulesdiscord.jssrcrestRequestHandler.js:154 выбросить новую ошибку DiscordAPIError(запрос.путь, данные, запрос.метод, рез.статус); ^
DiscordAPIError: 404: Не найден по запросу.выполнить (C:UsersAlexDocumentsProgrammingNodeJSDiscord ботыDJeff Новыеnode_modulesdiscord.jssrcrestRequestHandler.js:154:13) при обработке запросов и запросов (узел:внутренний/процесс/запросы задач:96:5) при асинхронном запросе.push (C:UsersAlexDocumentsProgrammingNodeJSDiscord ботыDJeff Новыеnode_modulesdiscord.jssrcrestRequestHandler.js:39:14) { метод: ‘сообщение’, путь: ‘/взаимодействия/обратный вызов’, код: 0, HttpStatus: 404 }
Вот как я передаю аргументы и другие вещи:
interaction.reply = (client, response) => {
client.api.interactions(this.id, this.token).callback.post({
data: {
type: 4,
data: {
content: response,
},
},
});
};
command.execute(client, interaction, interaction.data.options || []);
И вот мой skip.js файл для справки:
module.exports = {
name: "skip",
usage: null,
options: null,
async execute(client, interaction, args) {
var serverQueue = client.queue.get(interaction.guild_id);
const guild = await client.guilds.fetch(interaction.guild_id);
const userVoiceChannel = guild.members.cache.get(
interaction.member.user.id
).voice.channel;
if (!userVoiceChannel)
return interaction.reply(
client,
"You need to be in a voice channel to use this command."
);
var clientVoiceChannel = client.voice.connections.get(
interaction.guild_id
);
if (!clientVoiceChannel)
return interaction.reply(
client,
"I need to be in a voice channel to execute this command."
);
if (
clientVoiceChannel.channel.id !==
guild.members.cache.get(interaction.member.user.id).voice.channel.id
)
return interaction.reply(
client,
"You need to be in the same voice channel as me to use this command."
);
if (!serverQueue)
return interaction.reply(client, "Nothing is playing.");
serverQueue.connection.dispatcher.end("Skipped the current video.");
return interaction.reply(
client,
":fast_forward: **|** Skipped the current video."
);
},
};