gpt4 book ai didi

java - 如何通过 JDA 向 Discord 上的某人发送 DM(私信)

转载 作者:行者123 更新时间:2023-12-02 08:56:32 36 4
gpt4 key购买 nike

我希望机器人向某人发送直接消息,但我不知道该怎么做。

event.getChannel().sendMessage("Hello World").queue();

我想知道是否可以将 channel 更改为 DM 或以任何其他方式发送 DM,我希望将其直接发送给用户或只有他可以看到。

最佳答案

您永远不必猜测如何使用库 - 这就是文档的用途。任何有值(value)的库都有文档列出您需要担心的每个类、方法和属性。

快速谷歌搜索“discord-jda docs”将我们带到javadoc:https://ci.dv8tion.net/job/JDA/javadoc/index.html

您想向用户发送消息,对吧?因此,让我们使用搜索栏并查找 User。类型下的第一个结果是 net.dv8tion.jda.api.entities.User。我们现在位于https://ci.dv8tion.net/job/JDA/javadoc/net/dv8tion/jda/api/entities/User.html

如果您想知道如何与用户一起做某事,我们会查看每个用户拥有的方法。有两个立即引起了我的注意:User.hasPrivateChannel()User.openPrivateChannel()。我们将点击第二个,因为它看起来相关。

你瞧,文档中有示例用法!我将在下面引用它:

// Send message without response handling
public void sendMessage(User user, String content) {
user.openPrivateChannel()
.flatMap(channel -> channel.sendMessage(content))
.queue();
}

这看起来非常简单。因此,您正在寻找的基本用法(假设 eventMessageReceivedEvent)是这样的:

event.getAuthor().openPrivateChannel().flatMap(channel -> channel.sendMessage("hello")).queue();

关于java - 如何通过 JDA 向 Discord 上的某人发送 DM(私信),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60455254/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com