当前位置: 首页 > 知识库问答 >
问题:

JDA-Send消息

钮高朗
2023-03-14

我有:作者(BOT)、令牌和频道号。

我的问题是:如何在没有事件的情况下将消息发送到这个通道?

共有1个答案

齐学文
2023-03-14

好吧,我想我明白你的意思了。您不需要有一个事件来获取通道的ID并发送消息。唯一需要做的是实例化JDA,调用awaitReady(),从实例中可以获得所有通道(MessageChannels、TextChannels、VoiceChannels,可以通过调用

  • 获取[Text]通道()
  • 获取[Text]ChannelById(id=..)
  • 获取[Text]channelsbyName(名称,忽略大小写))

所以1。实例化JDA

    JDABuilder builder; 
    JDA jda = builder.build();
    jda.awaitReady();
List<TextChannel> channels = jda.getTextChannelsByName("general", true);
for(TextChannel ch : channels)
{
    sendMessage(ch, "message");
}
static void sendMessage(TextChannel ch, String msg) 
{
    ch.sendMessage(msg).queue();
}
 类似资料:
  • 问题内容: 我有自己的基于JDA的Discord BOT。我需要向特定频道发送短信。我知道如何将消息作为onEvent响应发送,但是在我的情况下,我没有此类事件。 我有:作者(BOT),令牌和通道号。 我的问题是:如何在 没有事件的情况下 将消息发送到此频道? 问题答案: 好吧,我想我知道你的意思。您无需进行任何事件即可获取频道ID和发送消息。您唯一需要做的就是实例化JDA,调用awaitRead

  • 我的机器人不能发送嵌入或常规文本信息,代码执行,但没有什么是发送在不和谐的通道。我遵循了JDA维基的设置,我不知道我做错了什么。 机器人登录码

  • 我试图使用Discord JDA API发送消息,但是每当我发送一条消息时,它就会无限地发送。 JDA版本:4.2.1_255 我尝试过什么: 使用GuildMessageReceivedEvent而不是MessageReceivedEvent来研究此问题 伪代码: SendPrivate ateMessage():

  • 我目前正试图让我的JDA机器人写一条消息,如果它留下一个语音通道。然后在消息发送后3秒钟,它应该会跟着另一条消息。 我已经尝试过用RestAction来做这件事,但我只能弄清楚如何删除延迟消息。 代码如下所示: 我希望有人能在这里帮助我。非常感谢您的帮助!