JDA - 向特定频道发送消息

JDA - Send message to specific channel

我目前正在使用 Java 和 jda 为 discord 创建一个机器人。我想让机器人向特定频道发送消息。我该怎么做?

该问题已在 Whosebug 社区中提出。

如果您在 Whosebug 中搜索它,您会找到

这里是简单的答案! ;)

TextChannel textChannel = event.getGuild().getTextChannelsByName("CHANNEL_NAME",true).get(0);
textChannel.sendMessage("MESSAGE").queue();

您可以像这样通过 ID 获取频道:

TextChannel txtChannel = event.getJDA().getTextChannelById("348110542667251712");

if (txtChannel.canTalk()) {
    txtChannel.sendMessage("Your message here.").queue();
}

使用.canTalk()方法可以验证,机器人有权在该频道中读取和发送消息。