为什么我的机器人命令中的"bulkDelete()"不起作用?

我目前正在使用lua编写Discord机器人,遇到了一些困难。我试图为我的机器人创建一个大量删除指令,但它似乎不起作用,仅在输入命令时返回"400-错误请求"。我做错了什么吗?我试图使用 message.channel:bulkDelete(3),但仍然不起作用。(我对lua编写Discord机器人相当新手。)

代码:

local discordia = require('discordia')
local client = discordia.Client()

local prefix = "+"
local adminid = 645671868728082432

client:on("ready", function() -- 机器人已准备完毕
    print("登录成功")
end)

client:on("messageCreate", function(message)
    local content = message.content
    local member = message.member
    local author = message.author
    local memberid = member.id
    local args = content:split(" ")

    if args[1] == prefix.. "delete" then
        if not member:hasRole(adminid) then
            message:reply("<@" ..author.id.. ">**,您无权使用此命令。**")
            return
        end
        message.guild:getChannel(message.channel.id):bulkDelete(3)
    end
end)
点赞
用户8621712
用户8621712

因为这种方法需要一个可解析的消息 ID 对象表,例如消息对象本身或其字符串 ID。

阅读文档:https://github.com/SinisterRectus/Discordia/wiki/GuildTextChannel#bulkdeletemessages

2020-11-23 17:16:16