lua - 为什么“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() -- bot is ready
print("Logged in")
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.. ">**, you do not have permission to use this command.**")
return
end
message.guild:getChannel(message.channel.id):bulkDelete(3)
end
end)
解决方案
因为此方法需要一个 MessageID 可解析对象表,例如 Message 对象本身或其 ID 作为字符串。
在此处阅读文档:https ://github.com/SinisterRectus/Discordia/wiki/GuildTextChannel#bulkdeletemessages
推荐阅读
- python - flask search pagination is not working for next page
- drake - Visualization Error Shown during Linearization/LQR for Acrobot but not for Double Pendulum
- javascript - How can I disable the parent screen when I have a modal displaying?
- reactjs - Using register method on field in other file
- r - 热绘制表中数据的ggplot?
- linux - CoTURN 服务器在一段时间后停止
- python - docker push需要用户名推送到hub
- c# - 从现有数据库和 .sql 文件创建上下文初始化程序
- shell - grep 将命令的输出分配给具有适当转义的变量?
- javascript - 返回具有最多道具的数组中的对象