Discord bot编辑消息太慢 [英] Discord bot editing messages too slow

查看:56
本文介绍了Discord bot编辑消息太慢的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我希望我的discordbot发送发送带有附件和文本的消息.然后,机器人必须编辑此文本几次,但是问题是,当机器人eddits消息5次后,它会等待一段时间,然后再次编辑5次,依此类推.如何使它编辑消息而不停止?

I want my discordbot to send send a message with an attached file in it and a text. Then the bot has to edit this text a couple of times but the problem is that when bot eddits message 5 times then it waits some time and then edits again 5 times etc etc. How can i make it edit messages without stopping?

if(msg.content.includes("letter")){                                       


msg.channel.send("alphabet", { files: ["/Users/48602/Videos/discordbot/aaa.png"]})}
      if(msg.content === 'alphabet'){


        msg.edit("**a**")
        msg.edit("**b**")
        msg.edit("**c**")
        msg.edit("**d**") // Here bot stop for a 2 seconds and i dont know why
        msg.edit("**e**")
        msg.edit("**f**")
        msg.edit("**g**")
        msg.edit("**h**")
        msg.edit("**i**")
        msg.edit("**j**")// Here bot stop for a 2 seconds and i dont know why
        msg.edit("**k**")
        msg.edit("**l**")
        msg.edit("**m**")
        msg.edit("**n**")
        msg.edit("**o**") // Here bot stop for a 2 seconds and i dont know why

      msg.delete()
      }

推荐答案

Discord具有

Discord has a rate limit of 5 in each request. Trying to bypass this would be considered API abuse (the solutions later is not API abuse).

超过此限制将暂停其他请求,直到经过一定的秒数为止.在进行研究的过程中,我遇到了以下简单解释:每服务器每5秒每5秒5个内容(如果您不明白我上面所说的话).

Exceeding this limit will pause other requests until a certain number of seconds has passed. Along with my research, I came across this simple explanation: 5 anything per 5 seconds per server (if you did not understand what I said above).

Discord的速率限制开发人员指南中,它告诉您:

关于共享相同速率限制的不同HTTP方法的上述规则[速率限制]当前只有一个例外,那就是删除消息.删除邮件受单独的较高速率限制,因此漫游器可以更快地从频道中删除内容(这对于审核漫游器很有用).

There is currently a single exception to the above rule [rate limits] regarding different HTTP methods sharing the same rate limit, and that is for the deletion of messages. Deleting messages falls under a separate, higher rate limit so that bots are able to more quickly delete content from channels (which is useful for moderation bots).

在不滥用API的情况下,一种解决方法是发送消息并删除以前的消息,因为删除消息的上限更高.

One workaround, without API abusing, would be to send messages, and delete the previous messages since there is a higher limit for deleting messages.

另一种解决方法是向动画添加中间超时.一个简单的方法,例如:

Another workaround would be to add intermediate timeouts to your animation. A simple method such as:

function async wait = { require("util").promisify(setTimeout); };
//syntax: await wait(1000); to "pause" for 1 second

您将需要根据时机进行调整,以使其符合您预期的动画速度,并且不会因速率限制而暂停.

You will need to play around with the timings so it fits your intended animation speed, and without pausing due to the rate limit.

这篇关于Discord bot编辑消息太慢的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆