/** * The old avatar url * * @return The old avatar url */ public String getOldAvatarUrl() { return previous == null ? null : String.format(AVATAR_URL, getSelfUser().getId(), previous, previous.startsWith("a_") ? ".gif" : ".png"); }
/** * The new avatar url * * @return The new avatar url */ public String getNewAvatarUrl() { return next == null ? null : String.format(AVATAR_URL, getSelfUser().getId(), next, next.startsWith("a_") ? ".gif" : ".png"); } }
private void identify() { JSONObject connectObj = new JSONObject() .put("server_id", guild.getId()) .put("user_id", getJDA().getSelfUser().getId()) .put("session_id", sessionId) .put("token", token); send(VoiceCode.IDENTIFY, connectObj); }
private boolean isValidVoteRequest(VoteRequest request) { if (request == null) { return false; } if (request.bot == null || request.user == null || request.type == null) { return false; } if (!request.bot.equals(metrics.getAvaire().getSelfUser().getId())) { return false; } return request.type.equalsIgnoreCase("upvote"); }
public static String getInvite() { return String.format("https://discordapp.com/oauth2/authorize?client_id=%s&scope=bot&permissions=%s", Getters.getSelfUser().getId(), Permission.getRaw(Permission.MESSAGE_WRITE, Permission.MESSAGE_READ, Permission.MANAGE_ROLES, Permission.MESSAGE_MANAGE, Permission.VOICE_CONNECT, Permission.VOICE_SPEAK, Permission.VOICE_MOVE_OTHERS, Permission.KICK_MEMBERS, Permission.BAN_MEMBERS, Permission.MANAGE_CHANNEL, Permission.MESSAGE_EMBED_LINKS, Permission.NICKNAME_CHANGE, Permission.MANAGE_PERMISSIONS, Permission.VIEW_AUDIT_LOGS, Permission.MESSAGE_HISTORY, Permission.MANAGE_WEBHOOKS, Permission.MANAGE_SERVER, Permission.MESSAGE_ADD_REACTION)); }
@Override public void run() { if (config.getString("botlists.botlist").isPresent()) { postToBotList(config.getString("botlists.botlist").get(), String .format("https://discordbots.org/api/bots/%s/stats", Getters.getSelfUser().getId())); } } }.repeat(10, TimeUnit.MINUTES.toMillis(10));
@Override public void run() { if (config.getString("botlists.discordBots").isPresent()) { postToBotList(config.getString("botlists.discordBots").get(), String .format("https://bots.discord.pw/api/bots/%s/stats", Getters.getSelfUser().getId())); } } }.repeat(10, TimeUnit.MINUTES.toMillis(10));
@Override public String execute(DiscordBot bot, String[] args, MessageChannel channel, User author, Message inputMessage) { return "I am honored you'd want to invite me! :hugging:\n" + "You can add me to your guild/server with the following link:\n" + "https://discordapp.com/oauth2/authorize?client_id=" + channel.getJDA().getSelfUser().getId() + "&scope=bot&permissions=339209287"; } }
@Override public void run() { SelfUser selfUser = avaire.getSelfUser(); if (selfUser == null) { return; } Request.Builder request = new Request.Builder() .addHeader("User-Agent", "AvaIre v" + AppInfo.getAppInfo().version) .url("https://beacon.avairebot.com/v1/bot/" + selfUser.getId()) .post(RequestBody.create(json, buildPayload(selfUser))); Response response = null; try { response = client.newCall(request.build()).execute(); } catch (IOException e) { log.error("Failed sending sync with beacon request: " + e.getMessage()); } finally { if (response != null) { response.close(); } } }
private boolean isMentionableAction(MessageReceivedEvent event) { if (!event.getMessage().isMentioned(avaire.getSelfUser())) { return false; } String[] args = event.getMessage().getContentRaw().split(" "); return args.length >= 2 && userRegEX.matcher(args[0]).matches() && event.getMessage().getMentionedUsers().get(0).getId().equals(avaire.getSelfUser().getId()); }
public void sendStatsToDiscordbotsOrg() { if (BotConfig.BOT_TOKEN_DISCORDBOTS_ORG.length() < 10) { return; } JSONObject data = new JSONObject(); data.put("server_count", getJda().getGuilds().size()); if (totShards > 1) { data.put("shard_id", shardId); data.put("shard_count", totShards); } Unirest.post("https://discordbots.org/api/bots/" + getJda().getSelfUser().getId() + "/stats") .header("Authorization", BotConfig.BOT_TOKEN_DISCORDBOTS_ORG) .header("Content-Type", "application/json") .body(data.toString()) .asJsonAsync(); }
public void sendStatsToDiscordPw() { if (!BotConfig.BOT_STATS_DISCORD_PW_ENABLED) { return; } JSONObject data = new JSONObject(); data.put("server_count", getJda().getGuilds().size()); if (totShards > 1) { data.put("shard_id", shardId); data.put("shard_count", totShards); } Unirest.post("https://bots.discord.pw/api/bots/" + getJda().getSelfUser().getId() + "/stats") .header("Authorization", BotConfig.BOT_TOKEN_BOTS_DISCORD_PW) .header("Content-Type", "application/json") .body(data.toString()) .asJsonAsync(); }
private String processMessage(MessageReceivedEvent e) { String message = e.getMessage().getContentStripped(); if (e.getAuthor().getId().equals(e.getJDA().getSelfUser().getId()) || e.getAuthor().isFake()) return ""; if (message == null && e.getMessage().getAttachments().size() == 0 || message.trim().isEmpty() && e.getMessage().getAttachments().size() == 0) return ""; if (MagiBridge.getConfig().CORE.CUT_MESSAGES) { if (message.length() > 120) { message = message.substring(0, 120); } } if (message.startsWith("```")) { message = message.substring(0, message.length() - 3).substring(3); } if (message.startsWith("`")) { message = message.substring(0, message.length() - 1).substring(1); } return ReplacerUtil.replaceEach(EmojiParser.parseToAliases(message), MagiBridge.getConfig().REPLACER.REPLACER); }
private boolean isValidMessage(MessageReceivedEvent e) { String message = e.getMessage().getContentStripped(); if (e.getAuthor().getId().equals(e.getJDA().getSelfUser().getId()) || e.getAuthor().isFake()) return false; if (message == null && e.getMessage().getAttachments().size() == 0 || message.trim().isEmpty() && e.getMessage().getAttachments().size() == 0) return false; return true; } }
public boolean isInVoiceWith(Guild guild, User author) { VoiceChannel channel = guild.getMember(author).getVoiceState().getChannel(); if (channel == null) { return false; } for (Member user : channel.getMembers()) { if (user.getUser().getId().equals(guild.getJDA().getSelfUser().getId())) { return true; } } return false; }
private boolean isInVoiceWith(Guild guild, User author) { VoiceChannel channel = guild.getMember(author).getVoiceState().getChannel(); if (channel == null) { return false; } for (Member user : channel.getMembers()) { if (user.getUser().getId().equals(guild.getJDA().getSelfUser().getId())) { return true; } } return false; }
/** * Mark the shard as ready, the bot will start working once all shards are marked as ready */ public void markReady() { if (isReady) { return; } mentionMe = "<@" + this.getJda().getSelfUser().getId() + ">"; mentionMeAlias = "<@!" + this.getJda().getSelfUser().getId() + ">"; sendStatsToDiscordPw(); sendStatsToDiscordbotsOrg(); isReady = true; RoleRankings.fixRoles(this.getJda().getGuilds()); container.allShardsReady(); }
public static void deleteMessage(@Nonnull Message message, int delay, TimeUnit timeUnit) { if (message.getJDA().getSelfUser().getId().equals(message.getAuthor().getId())) { handleDeleteMessage(message, delay, timeUnit); } else if (message.getGuild() != null && message.getGuild().getSelfMember().hasPermission(message.getTextChannel(), Permission.MESSAGE_MANAGE)) { handleDeleteMessage(message, delay, timeUnit); } }
@Override public String execute(DiscordBot bot, String[] args, MessageChannel channel, User author, Message inputMessage) { SimpleRank rank = bot.security.getSimpleRank(author, channel); if (!rank.isAtLeast(SimpleRank.USER)) { return Templates.no_permission.formatGuild(channel); } if (args.length > 1) { User targetUser = DisUtil.findUser((TextChannel) channel, args[0]); if (targetUser != null && !targetUser.getId().equals(channel.getJDA().getSelfUser().getId())) { String message = ""; for (int i = 1; i < args.length; i++) { message += " " + args[i]; } bot.out.sendPrivateMessage(targetUser, "You got a message from " + author.getAsMention() + ": " + message); return Templates.command.pm_success.formatGuild(channel); } else { return Templates.command.pm_cant_find_user.formatGuild(channel); } } return Templates.invalid_use.formatGuild(channel); } }