public static EmbedBuilder createEmbeddedBuilder() { return new EmbedBuilder(); }
public MessageBuilder(EmbedBuilder builder) { if (builder != null) this.embed = builder.build(); }
public EmbedBuilder(EmbedBuilder builder) { if (builder != null) { setDescription(builder.description.toString()); this.fields.addAll(builder.fields); this.url = builder.url; this.title = builder.title; this.timestamp = builder.timestamp; this.color = builder.color; this.thumbnail = builder.thumbnail; this.author = builder.author; this.footer = builder.footer; this.image = builder.image; } }
@Override public void onCommand(User sender, GuildWrapper guild, TextChannel channel, Message message, String[] args, Member member) { EmbedBuilder builder = MessageUtils.getEmbed(sender); builder.setColor(Color.CYAN); builder.setDescription("Thank for you taking the time to see how you can donate to the project! This project relies heavily upon user donations so every little helps! \uD83D\uDE0A"); builder.addField("Patreon", "The most common way to donate is through our [Patreon page](https://www.patreon.com/flarebot)! Through here you can donate the amount you want and also get rewarded for it!", false); builder.addField("PayPal", "If you cannot donate through Patreon or don't like the idea of a monthly subscription then this option is for you! Simply join our [support server](" + Constants.INVITE_URL + ") and our amazing staff will assist you in doing this!\n\nShould you want to donate anonymously or you don't want to receive a reward, you can simply send money to `walshydev@gmail.com` via PayPal to donate!", false); channel.sendMessage(builder.build()).queue(); }
@Override public void onGuildLeave(GuildLeaveEvent event) { Constants.getGuildLogChannel().sendMessage(new EmbedBuilder() .setColor(new Color(244, 23, 23)) .setThumbnail(event.getGuild().getIconUrl()) .setFooter(event.getGuild().getId(), event.getGuild().getIconUrl()) .setTimestamp(OffsetDateTime.now()) .setAuthor(event.getGuild().getName(), null, event.getGuild().getIconUrl()) .setDescription("Guild Deleted: `" + event.getGuild().getName() + "` L :broken_heart:\n" + "Guild Owner: " + (event.getGuild().getOwner() != null ? event.getGuild().getOwner().getUser().getName() : "Non-existent, they had to much L")).build()).queue(); }
public static MessageEmbed buildCase(Guild guild, OModerationCase modcase) { EmbedBuilder b = new EmbedBuilder(); b.setTitle(String.format("%s | case #%s", modcase.punishment.getKeyword(), modcase.id), null); b.setColor(modcase.punishment.getColor()); b.addField("User", modcase.userName + "\n" + CUser.getCachedDiscordId(modcase.userId) + "\n", true); b.addField("Moderator", modcase.moderatorName + "\n" + CUser.getCachedDiscordId(modcase.moderatorId), true); b.addField("Issued", banDateFormat.format(modcase.createdAt), true); if (modcase.expires != null) { b.addField("Expires", modcase.expires.toString(), true); } String reason = modcase.reason; if (reason == null || reason.isEmpty()) { reason = "Reason not set! use `" + DisUtil.getCommandPrefix(guild) + "case reason " + modcase.id + " <message>` to set the reason"; } b.addField("Reason", reason, false); return b.build(); } }
EmbedBuilder e = new EmbedBuilder(); e.setAuthor(c.getName(), null, getImage(c.getImage())); e.setThumbnail(getImage(c.getImage())); e.setTitle(c.getTitle(), null); description.append(Joiner.on(", ").join(c.getTags())); description.append("\n\n"); skillNum++; e.setDescription(description.toString()); bot.queue.add(channel.sendMessage(e.build()));
EmbedBuilder b = new EmbedBuilder(); b.setAuthor(guild.getName(), guild.getIconUrl(), guild.getIconUrl()); b.setThumbnail(guild.getIconUrl()); b.setDescription( "Discord-id `" + guild.getId() + "`\n" + "On shard `" + bot.getShardId() + "`\n" + ImmutableSet<OnlineStatus> onlineStatus = Sets.immutableEnumSet(OnlineStatus.ONLINE, OnlineStatus.IDLE, OnlineStatus.DO_NOT_DISTURB); long online = guild.getMembers().stream().filter(member -> onlineStatus.contains(member.getOnlineStatus())).count(); b.setColor(GfxUtil.getAverageColor(guild.getIconUrl())); b.addField("Members", String.format("%s online\n%s in total", online, guild.getMembers().size()), true); b.addField("Channels", String.format("%s text channels\n%s voice channels", guild.getTextChannels().size(), guild.getVoiceChannels().size()), true); b.addField("Created by", String.format("%s\\#%s", guild.getOwner().getUser().getName(), guild.getOwner().getUser().getDiscriminator()), true); b.addField("My prefix", String.format("`%s`", DisUtil.getCommandPrefix(guild)), true); b.addField("Created On", new SimpleDateFormat("dd MMMM yyyy").format(new Date(guild.getCreationTime().toInstant().toEpochMilli())), true); b.setFooter(guild.getSelfMember().getEffectiveName(), channel.getJDA().getSelfUser().getAvatarUrl()); bot.queue.add(channel.sendMessage(b.build())); return "";
MessageBuilder mb = new MessageBuilder(); mb.append(FormatUtil.filter(manager.getBot().getConfig().getSuccess()+" **Now Playing in "+guild.getSelfMember().getVoiceState().getChannel().getName()+"...**")); EmbedBuilder eb = new EmbedBuilder(); eb.setColor(guild.getSelfMember().getColor()); if(getRequester() != 0) eb.setAuthor("Unknown (ID:"+getRequester()+")", null, null); else eb.setAuthor(u.getName()+"#"+u.getDiscriminator(), null, u.getEffectiveAvatarUrl()); eb.setTitle(track.getInfo().title, track.getInfo().uri); eb.setTitle(track.getInfo().title); eb.setThumbnail("https://img.youtube.com/vi/"+track.getIdentifier()+"/mqdefault.jpg"); eb.setFooter("Source: " + track.getInfo().author, null); eb.setDescription((audioPlayer.isPaused() ? JMusicBot.PAUSE_EMOJI : JMusicBot.PLAY_EMOJI) + " "+FormatUtil.progressBar(progress) + " `[" + FormatUtil.formatTime(track.getPosition()) + "/" + FormatUtil.formatTime(track.getDuration()) + "]` " + FormatUtil.volumeIcon(audioPlayer.getVolume())); return mb.setEmbed(eb.build()).build();
private void handleSendGuildLeaveWebhook(Guild guild) { AvaIre.getLogger().info(ConsoleColor.format( "%redLeft guild with an ID of " + guild.getId() + " called: " + guild.getName() + "%reset" )); if (!avaire.areWeReadyYet()) { return; } Metrics.guilds.dec(); Metrics.geoTracker.labels(guild.getRegion().getName()).dec(); TextChannel channel = avaire.getShardManager().getTextChannelById(DiscordConstants.ACTIVITY_LOG_CHANNEL_ID); if (channel == null) { return; } channel.sendMessage( new EmbedBuilder() .setColor(Color.decode("#EF5350")) .setTimestamp(Instant.now()) .addField("Removed", String.format("%s (ID: %s)", guild.getName(), guild.getId() ), false) .build() ).queue(null, RestActionUtil.ignore); }
EmbedBuilder embed = new EmbedBuilder(); Guild guild = player.getJDA().getGuildById(player.getGuild()); embed.setThumbnail("https://i.ytimg.com/vi/" + record.youtubecode + "/0.jpg"); embed.setTitle("\uD83C\uDFB6 " + record.youtubeTitle, null); embed.setDescription("[source](https://www.youtube.com/watch?v=" + record.youtubecode + ") | `" + DisUtil.getCommandPrefix(player.getGuild()) + "pl` - " + player.getPlaylist().title); embed.addField("duration", Misc.getDurationString(player.player.getPlayingTrack().getPosition() / 1000) + " / " + Misc.getDurationString(record.duration), true); String optionsField = ""; if (player.getRequiredVotes() != 1) { optionsField += "Stop after queue"; embed.addField("Options:", optionsField, true); List<OMusic> queue = player.getQueue(); int show = 3; x.append(".. and **").append(queue.size() - 3).append("** more"); embed.addField("Next up", x.toString(), true); embed.setFooter("requested by " + member.getEffectiveName(), member.getUser().getAvatarUrl()); } else { embed.setFooter("You add to your playlist and vote to skip with reactions", null); return embed.build();
private static MessageEmbed makeEmbedConfig(Guild guild, int activePage) { EmbedBuilder b = new EmbedBuilder(); List<String> keys = DefaultGuildSettings.getWritableKeys(); Collections.sort(keys); int maxPage = (int) Math.ceil((double) keys.size() / (double) CFG_PER_PAGE); activePage = Math.max(0, Math.min(maxPage - 1, activePage - 1)); int endIndex = activePage * CFG_PER_PAGE + CFG_PER_PAGE; int elements = 0; for (int i = activePage * CFG_PER_PAGE; i < keys.size() && i < endIndex; i++) { String key = keys.get(i); b.addField(key.toLowerCase(), GuildSettings.get(guild.getIdLong()).getDisplayValue(guild, key), true); elements++; } if (elements % 3 == 2) { b.addBlankField(true); } String commandPrefix = DisUtil.getCommandPrefix(guild); b.setFooter("Page " + (activePage + 1) + " / " + maxPage + " | Press the buttons for other pages", null); b.setDescription(String.format("To see more details about a setting:\n" + "`%1$scfg settingname`\n\n", commandPrefix)); b.setTitle("Current Settings for " + guild.getName() + " [" + (1 + activePage) + " / " + maxPage + "]", null); return b.build(); }
private void sendGuildInfo(Guild guild, TextChannel channel) { EmbedBuilder eb = new EmbedBuilder(); eb.setTitle(guild.getName()); eb.setThumbnail(guild.getIconUrl()); eb.addField("Users", "**Total:** " + guild.getMembers().size() + "\n" + "\n" + "Timeout: " + FormatUtils.formatTime(guild.getAfkTimeout().getSeconds(), TimeUnit.SECONDS, true, false); eb.addField("Channels", "**Text**\n" + "Total: " + guild.getTextChannels().size() + "\n" + guild.getVoiceChannels().stream().filter(voiceChannel -> voiceChannel.getMembers().size() > 0).count() + "\n" + "\n" + afk, true); eb.addField("Misc info", "**Creation time:** " + guild.getCreationTime().toLocalDateTime().atOffset(ZoneOffset.UTC).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + " UTC\n" + "\n" + "**Verification Level:** " + GeneralUtils.getVerificationString(guild.getVerificationLevel()), true); eb.setFooter("ID: " + guild.getId(), null); eb.setColor(Color.CYAN); channel.sendMessage(eb.build()).queue();
public EmbedBuilder getEventEmbed(User user, User responsible, String reason) { if (user == null && responsible == null) { throw new IllegalArgumentException("User or the responsible user has to be not-null! Event: " + this.getName()); } EmbedBuilder eb = new EmbedBuilder() .setAuthor(WordUtils.capitalize(getTitle()), null, user == null ? responsible.getEffectiveAvatarUrl() : user.getEffectiveAvatarUrl()); if (user != null) eb.addField("User", user.getAsMention() + " | " + MessageUtils.getTag(user), true); eb.setFooter("User ID: " + (user == null ? responsible.getId() : user.getId()), null) .setTimestamp(OffsetDateTime.now(ZoneOffset.UTC)); if (responsible != null) { eb.addField("Responsible", MessageUtils.getTag(responsible), true); } if (showReason) { eb.addField("Reason", (reason == null || reason.isEmpty() ? "No Reason Given!" : reason), true); } eb.setColor(color); // Custom event changes. if (this == ModlogEvent.FLAREBOT_PURGE) eb.setAuthor(user != null ? "User Purge" : "Chat Purge", null, user == null ? responsible.getEffectiveAvatarUrl() : user.getEffectiveAvatarUrl()); return eb; }
EmbedBuilder embed = new EmbedBuilder() .setTitle(context.i18n("exampleTitle", background.getName())) .setFooter(context.i18n("exampleFooter", background.getName(), background.getCost()), null) .setImage("attachment://rank-background.png") .setColor(background.getBackgroundColors().getExperienceForegroundColor()); message.setEmbed(embed.build());
color = Color.decode('#' + hex); int unsignedInt = Integer.parseUnsignedInt(hex, 16); EmbedBuilder eb = MessageUtils.getEmbed().setColor(color).setTitle("#" + hex) .addField("RGB", color.getRed() + ", " + color.getGreen() + ", " + color.getBlue(), true) .addField("Numbers", String.format("Binary: %s\nDecimal: %d", Integer.toBinaryString(unsignedInt), unsignedInt), true) .setThumbnail("https://api.flarebot.stream/image.png?color=" + hex); channel.sendMessage(eb.build()).queue(); } else { channel.sendMessage("Send me a color name, rgb value or hex code for all the infos!").queue();
@Override public MessageEmbed buildEmbed() { return builder.setDescription(formatMessage()).build(); }
.setTitle(I18n.format("{0} {1} | Case #{2}", action.getType().getEmote(), action.getType().getName(), transformer.getModlogCase() )) .setColor(action.getType().getColor()) .setTimestamp(Instant.now()); case UNBAN: builder .addField("User", action.getStringifiedTarget(), true) .addField("Moderator", action.getStringifiedModerator(), true) .addField("Reason", formatReason(transformer, action.getMessage()), false); break; .addField("Moderator", action.getStringifiedModerator(), true) .addField("Action", action.getMessage(), true) .addField("Reason", formatReason(transformer, null), false); action.setMessage(null); break; .addField("User", action.getStringifiedTarget(), true) .addField("Moderator", action.getStringifiedModerator(), true) .addField("Voice Channel", split[0], false) .addField("Reason", formatReason(transformer, String.join("\n", Arrays.copyOfRange(split, 1, split.length) )), false); String[] modlogParts = split[0].split(":");
String description = array[0].split("\r\n")[1]; EmbedBuilder embed = new EmbedBuilder(); embed.setTitle(title, null); embed.setDescription(description); embed.addField(header, value.substring(0, value.substring(0, 1024).lastIndexOf("\n")), false); value = value.substring(value.substring(0, 1024).lastIndexOf("\n") + 1); header += " - Continued"; embed.addField(header, value, false);
public static void updateSongMessage(User sender, Message message, TextChannel channel) { Track track = FlareBot.instance().getMusicManager().getPlayer(channel.getGuild().getId()).getPlayingTrack(); if (track == null) return; EmbedBuilder eb = MessageUtils.getEmbed(sender) .addField("Current Song", getLink(track), false) .setThumbnail("https://img.youtube.com/vi/" + track.getTrack().getIdentifier() + "/hqdefault.jpg"); if (track.getTrack().getInfo().isStream) eb.addField("Amount Played", "Issa livestream ;)", false); else eb.addField("Amount Played", GeneralUtils.getProgressBar(track), true) .addField("Time", String.format("%s / %s", FormatUtils.formatDuration(track.getTrack().getPosition()), FormatUtils.formatDuration(track.getTrack().getDuration())), false); message.editMessage(eb.build()).queue(); }