以下是使用 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() 方法时需要进行异常处理,确保您的代码在发生异常时能够正常退出。

java discord4j 如何使用 GatewayDiscordClient 发送频道消息

原文地址: https://www.cveoy.top/t/topic/bqhY 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录