java discord4j 如何使用 GatewayDiscordClient 发送频道消息
以下是使用 GatewayDiscordClient 发送频道消息的示例代码:
import discord4j.core.DiscordClientBuilder;
import discord4j.core.GatewayDiscordClient;
import discord4j.core.event.domain.message.MessageCreateEvent;
public class DiscordBot {
public static void main(String[] args) {
String token = "YOUR_BOT_TOKEN";
GatewayDiscordClient client = DiscordClientBuilder.create(token)
.build()
.gateway()
.login()
.block();
client.getEventDispatcher().on(MessageCreateEvent.class)
.subscribe(event -> {
String messageContent = event.getMessage().getContent();
if (messageContent.equalsIgnoreCase("!hello")) {
event.getMessage().getChannel().block().createMessage("Hello, World!").block();
}
});
client.onDisconnect().block();
}
}
这个示例代码中,我们创建了一个 Discord 客户端,并使用 GatewayDiscordClient 对象来登录到 Discord API。然后,我们使用 getEventDispatcher() 方法来订阅 MessageCreateEvent 事件。在事件处理程序中,我们检查消息内容是否为 "!hello",如果是,我们使用 createMessage() 方法来发送 "Hello, World!" 消息到相同的频道。
请注意:在使用 block() 方法时需要进行异常处理,确保您的代码在发生异常时能够正常退出。
原文地址: https://www.cveoy.top/t/topic/bqhY 著作权归作者所有。请勿转载和采集!