【问题标题】:Resolving invite and getting guild id解析邀请并获取公会ID
【发布时间】:2023-04-05 09:54:01
【问题描述】:

我正在研究解决已发布邀请的可能性。 使用 java 和 JDA(Java Discord API)

这是我目前得到的:

    private boolean checkPinewoodInviteFilter(Message message) {
        final boolean[] isPinewoodGuild = {false};
        Invite.resolve(message.getJDA(), message.getInvites().get(0)).queue(v-> {
            System.out.println("GUILD NAME: " + v.getGuild().getName());
            System.out.println("GUILD MEMBERS: " + v.getGuild().getMemberCount());
            System.out.println("GUILD ONLINE: " + v.getGuild().getOnlineCount());

            if (Constants.guilds.contains(v.getGuild().getId())) {
                System.out.println("PINEWOOD GUILD FOUND ");
                isPinewoodGuild[0] = true;
            }
        });
        return isPinewoodGuild[0];
    }

但它现在没有发出任何邀请(使用 JDA 3)

【问题讨论】:

    标签: java discord-jda


    【解决方案1】:

    几周后,我找到了一个可行的解决方案:

    private void checkPinewoodInviteFilter(Message message, DatabaseEventHolder databaseEventHolder) {
        for (String i : message.getInvites()) {
            Invite.resolve(message.getJDA(), i).queue(v-> {
                if (!Constants.guilds.contains(v.getGuild().getId())) {
                    message.delete().queue();
                    warnUser(message, databaseEventHolder.getGuild(), "**AUTOMOD**: Filter was activated!\n**Type**: " + "``INVITE``\n" +
                        "**Guild**: " + v.getGuild().getName() + "\n" +
                        "**Invite**: [Click here!](" + v.getURL() + ")\n" +
                        "**Inviter**:" + v.getInviter());
                }
            });
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2021-09-24
      • 2021-09-05
      • 2012-01-08
      • 2021-03-11
      • 2020-09-24
      • 1970-01-01
      • 2022-01-15
      • 2020-10-31
      相关资源
      最近更新 更多