【问题标题】:Got an error in my Discord bot I dont know我不知道我的 Discord 机器人出现错误
【发布时间】:2022-12-07 04:34:59
【问题描述】:

当时我正在尝试学习如何制作一个不和谐的机器人,但我遇到了一个错误,我不知道这意味着什么或如何修复它。我用 youtube 教程发出了欢迎消息的命令,现在它停止工作了。

错误:

DiscordAPIError[50035]: Invalid Form Body
7.options[0].name[APPLICATION_COMMAND_INVALID_NAME]: Command name is invalid
    at SequentialHandler.runRequest (C:\Users\hp\OneDrive\Desktop\Manager\node_modules\@discordjs\rest\dist\index.js:659:15)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async SequentialHandler.queueRequest (C:\Users\hp\OneDrive\Desktop\Manager\node_modules\@discordjs\rest\dist\index.js:458:14)
    at async REST.request (C:\Users\hp\OneDrive\Desktop\Manager\node_modules\@discordjs\rest\dist\index.js:902:22)
    at async GuildApplicationCommandManager.set (C:\Users\hp\OneDrive\Desktop\Manager\node_modules\discord.js\src\managers\ApplicationCommandManager.js:173:18)

代码:

const {Message, Client, SlashCommandBuilder, PermissionFlagsBits} = require("discord.js");
const welcomeSchema = require("../../Models/Welcome");
const {model, Schema} = require("mongoose");

module.exports = {
    name:"setup-welcome",
    description:"Set up your welcome message for the discord bot.",
    UserPerms:["BanMembers"],
    category:"Moderation",
    options: [
        {
            name:"Channel",
            description:"Channel for welcome messages.",
            type:7,
            required:true
        },

        {
            name:"welcome-message",
            description:"Enter your welcome message.",
            type:3,
            reqired:true
        },

        {
            name:"welcome-role",
            description:"Enter your welcome role.",
            type:8,
            required:true
        }
    

    ],
                
    async execute(interaction) {
        const {channel, options} = interaction;

        const welcomeChannel = options.getChannel("channel");
        const welcomeMessage = options.getString("welcome-message");
        const roleId = options.getRole("welcome-role");

        if(!interaction.guild.members.me.permissions.has(PermissionFlagsBits.SendMessages)) {
            interaction.reply({content: "I don't have permissions for this.", ephemeral: true});
        }

        welcomeSchema.findOne({Guild: interaction.guild.id}, async (err, data) => {
            if(!data) {
                const newWelcome = await welcomeSchema.create({
                    Guild: interaction.guild.id,
                    Channel: welcomeChannel.id,
                    Msg: welcomeMessage,
                    Role: roleId.id
                });
            }
            interaction.reply({content: 'Succesfully created a welcome message', ephemeral: true});
        })
    }
}

我尝试了一些事情,比如改变机器人的结构或改变一些东西,比如命令选项。
提前致谢!

【问题讨论】:

    标签: javascript discord discord.js


    【解决方案1】:

    您的 Channel 命令无效,因为所有名称都必须是小写。例如,将其更改为channel 即可。

    【讨论】:

      猜你喜欢
      • 2021-01-11
      • 1970-01-01
      • 2020-09-24
      • 1970-01-01
      • 1970-01-01
      • 2021-11-24
      • 1970-01-01
      • 2021-07-18
      • 2019-08-10
      相关资源
      最近更新 更多