【问题标题】:GuildMemberJoin PN Message公会会员加入 PN 留言
【发布时间】:2020-03-18 13:46:39
【问题描述】:

嘿,我想向新朋友发送欢迎信息。 这是我的代码。我是 Java 新手,请帮助我使此功能正常工作:

package de.backxtar.listener;

import java.time.OffsetDateTime;

import net.dv8tion.jda.api.EmbedBuilder;
import net.dv8tion.jda.api.entities.Member;
import net.dv8tion.jda.api.events.guild.member.GuildMemberJoinEvent;
import net.dv8tion.jda.api.hooks.ListenerAdapter;

public class JoinListener extends ListenerAdapter {

    @Override
    public void onGuildMemberJoin(GuildMemberJoinEvent event) {
        Member member = event.getMember();

        if((event.getGuild().getDefaultChannel()) != null) {

            EmbedBuilder builder = new EmbedBuilder();

            builder.setColor(0xf22613);
            builder.setThumbnail("http://image.png");
            builder.setTitle("Willkommen auf Da Hood!");
            builder.setFooter("Powered by Backxtar.");
            builder.setTimestamp(OffsetDateTime.now());
            builder.setDescription("Herzlich willkommen" + member.getAsMention() + "auf **Da Hood**!\n"
                    + "[**Da Hood - The Best Gaming-Discord!**](https://xyz.gg)");

            member.getUser().openPrivateChannel().queue((ch) -> {
                ch.sendMessage(builder.build()).queue();
            });
        }
    }
}

这个功能是怎样的? if((event.getGuild().getDefaultChannel()) != null) {

谢谢!!

【问题讨论】:

    标签: java discord-jda


    【解决方案1】:

    首先,event.getGuild().getDefaultChannel() 在服务器设置中返回为“系统消息频道”设置的频道,或者如果没有设置,则返回 Discord 服务器上的第一个文本频道。

    其次,很遗憾,我无法告诉您为什么您的代码无法正常工作,因为它对我来说非常完美,可能是因为您的 Discord 服务器没有 TextChannel 如果是这种情况,请尝试您的当您在 Discord 服务器上创建 TextChannel 时,代码可以工作。

    【讨论】:

      猜你喜欢
      • 2021-02-03
      • 1970-01-01
      • 2020-09-27
      • 1970-01-01
      • 2023-04-09
      • 2021-06-27
      • 2021-02-18
      • 1970-01-01
      • 2019-05-26
      相关资源
      最近更新 更多