发送后 10 秒使用 JDA 删除消息
Posted
技术标签:
【中文标题】发送后 10 秒使用 JDA 删除消息【英文标题】:use JDA delete message 10 seconds after sending 【发布时间】:2019-12-25 03:51:38 【问题描述】:我正在制作一个不和谐的机器人,它发送一个嵌入来显示用户的库存(我正在制作一个游戏机器人)。为避免混乱,我想在 10-20 秒后删除该消息。任何人都知道我该怎么做(如果你完全理解这些问题,那么请不要说,“哦,你需要遵循等等等等格式”)。我正在将 Java Eclipse 与 JDA 一起使用。
是的,我已经查过了,但没有找到 JDA 的任何内容。
【问题讨论】:
【参考方案1】:您可以使用queueAfter
,这将延迟delete()
提供的RestAction
的执行。
public static void deleteAfter(Message message, int delay)
message.delete().queueAfter(delay, TimeUnit.SECONDS);
此方法可在您的 sendMessage
操作的成功回调中使用。
someMethod().queue((result) -> // the type for "result" is the T in RestAction<T>
System.out.println(result);
, (failure) -> // failure is always a Throwable
failure.printStackTrace();
);
我建议阅读文档和 wiki:
RestAction javadocs JDA wiki【讨论】:
谢谢伙计。如果我还在制作机器人,这会有所帮助,哈哈以上是关于发送后 10 秒使用 JDA 删除消息的主要内容,如果未能解决你的问题,请参考以下文章
如何根据反应发送消息,然后根据用户消息发送另一个消息?使用 JDA
Discord bot 无法使用 JDA 在 java 中发送消息
使用 JDA 制作的 Discord 机器人正在删除不正确的消息