net.dv8tion.jda.core.OnlineStatus Java Examples
The following examples show how to use
net.dv8tion.jda.core.OnlineStatus.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: Stats.java From DiscordBot with Apache License 2.0 | 6 votes |
private GuildStats(Guild g) { List<Member> l = g.getMembers(); this.name = g.getName(); this.id = g.getId(); this.region = g.getRegion().getName(); this.avatar = g.getIconUrl() == null ? "not set" : g.getIconUrl(); this.textChans = g.getTextChannels().size(); this.voiceChans = g.getVoiceChannels().size(); this.categories = g.getCategories().size(); this.rolesCount = g.getRoles().size(); this.afk = g.getAfkChannel() == null ? "not set" : g.getAfkChannel().getName(); this.owner = g.getOwner(); this.all = l.size(); this.users = l.stream().filter(m -> !m.getUser().isBot()).count(); this.onlineUsers = l.stream().filter(m -> !m.getUser().isBot() && !m.getOnlineStatus().equals(OnlineStatus.OFFLINE)).count(); this.bots = l.stream().filter(m -> m.getUser().isBot()).count(); this.onlineBots = l.stream().filter(m -> m.getUser().isBot() && !m.getOnlineStatus().equals(OnlineStatus.OFFLINE)).count(); this.roles = g.getRoles().stream() .filter(r -> !r.getName().contains("everyone")) .map(r -> String.format("%s (`%d`)", r.getName(), getMembsInRole(r))) .collect(Collectors.joining(", ")); }
Example #2
Source File: ServerCommand.java From DiscordBlueBot with MIT License | 6 votes |
@Override public void action(String[] args, MessageReceivedEvent event) { EmbedBuilder builder = new EmbedBuilder(); builder.setAuthor("Server Info", null, "http://i.imgur.com/880AyL6.png"); builder.setColor(Color.decode(MainBot.getConfig().getEmbedColor())); builder.setThumbnail(event.getGuild().getIconUrl()); builder.addField("Name", event.getGuild().getName(), true); builder.addBlankField(true); builder.addField("Owner", event.getGuild().getOwner().getUser().getName() + "#" + event.getGuild().getOwner().getUser().getDiscriminator() , true); builder.addField("Server ID", event.getGuild().getId(), true); builder.addField("Region", event.getGuild().getRegion().name(), true); DateTimeFormatter formatter = DateTimeFormatter.ofPattern("MM/dd/yyyy h:mm a"); builder.addField("Creation Date", event.getGuild().getCreationTime().format(formatter), true); builder.addField("Total Members", String.valueOf(event.getGuild().getMembers().size()), true); int online = 0; for(Member member : event.getGuild().getMembers()) { if(!member.getOnlineStatus().equals(OnlineStatus.OFFLINE)) { ++online; } } builder.addField("Online Members", String.valueOf(online), true); event.getTextChannel().sendMessage(builder.build()).queue(); }
Example #3
Source File: Guilds.java From DiscordBot with Apache License 2.0 | 4 votes |
@Override public void action(String[] args, MessageReceivedEvent event) throws ParseException, IOException { if (!Perms.isOwner(event.getAuthor(), event.getTextChannel())) return; if ((args.length > 1 ? args[0] : "").equalsIgnoreCase("info")) { Guild g; try { g = event.getJDA().getGuildById(args[1]); } catch (Exception e) { event.getTextChannel().sendMessage(MSGS.error().setDescription("There is no guild with the entered ID.").build()).queue(); return; } event.getTextChannel().sendMessage(new EmbedBuilder() .setTitle("Guild information for guild " + g.getName(), null) .setThumbnail(g.getIconUrl()) .setDescription("\n\n") .addField("Name", g.getName(), false) .addField("ID", g.getId(), false) .addField("Owner", g.getOwner().getAsMention(), false) .addField("Members", g.getMembers().size() + " (Online: " + g.getMembers().stream().filter(m -> !m.getOnlineStatus().equals(OnlineStatus.OFFLINE)).count() + ")", false) .addField("Prefix on server", "`" + SSSS.getPREFIX(g) + "`", false) .build() ).queue(); return; } StringBuilder sb = new StringBuilder(); sb.append("**Running on `" + event.getJDA().getGuilds().size() + "` guilds.**\n\n"); event.getJDA().getGuilds().stream() .sorted(Comparator.comparingInt(s -> s.getMembers().size())) .forEach(g -> sb.append( "*[" + g.getMembers().size() + "]* - **" + g.getName() + "** - `" + g.getId() + "`\n" )); if (sb.toString().length() > 2000) event.getTextChannel().sendMessage("**Guilds:**\n\n" + sb.toString()).queue(); else event.getTextChannel().sendMessage(new EmbedBuilder().setTitle("Guilds", null).setDescription(sb.toString()).build()).queue(); }
Example #4
Source File: ServerInfoCommand.java From FlareBot with MIT License | 4 votes |
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" + "**Online:** " + guild.getMembers().stream().filter(member -> !member.getOnlineStatus().equals(OnlineStatus.OFFLINE)).count() + "\n" + "\n" + "**Owner:** " + MessageUtils.getTag(guild.getOwner().getUser()), true); String afk = guild.getAfkChannel() == null ? "" : "**AFK:**\n" + "Channel: " + guild.getAfkChannel().getName() + "\n" + "\n" + "Timeout: " + FormatUtils.formatTime(guild.getAfkTimeout().getSeconds(), TimeUnit.SECONDS, true, false); eb.addField("Channels", "**Text**\n" + "Total: " + guild.getTextChannels().size() + "\n" + "\n" + "**Voice**\n" + "Total: " + guild.getVoiceChannels().size() + "\n" + "\n" + "Active: " + 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" + "**Roles:** " + guild.getRoles().size() + "\n" + "\n" + "**Server region:** " + guild.getRegion().getName() + "\n" + "\n" + "**Verification Level:** " + GeneralUtils.getVerificationString(guild.getVerificationLevel()), true); eb.setFooter("ID: " + guild.getId(), null); eb.setColor(Color.CYAN); channel.sendMessage(eb.build()).queue(); }
Example #5
Source File: Events.java From FlareBot with MIT License | 4 votes |
@Override public void onUserUpdateOnlineStatus(UserUpdateOnlineStatusEvent event) { if (event.getOldOnlineStatus() == OnlineStatus.OFFLINE) flareBot.getPlayerCache(event.getUser().getId()).setLastSeen(LocalDateTime.now()); }
Example #6
Source File: Config.java From Selfbot with Apache License 2.0 | 4 votes |
public Config() throws Exception { List<String> lines = Files.readAllLines(Paths.get("config.txt")); for(String str : lines) { String[] parts = str.split("=",2); String key = parts[0].trim().toLowerCase(); String value = parts.length>1 ? parts[1].trim() : null; switch(key) { case "token": userToken = value; break; case "prefix": if(value==null) { prefix = ""; LOG.warn("The prefix was defined as empty!"); } else prefix = value; break; case "timezone": if(value==null) { zone = ZoneId.systemDefault(); LOG.warn("An empty timezone was provided; using the system default!"); } else { try { zone = ZoneId.of(value); } catch(Exception e) { zone = ZoneId.systemDefault(); LOG.warn("\""+value+"\" is not a valid timezone; using the system default!"); } } break; case "status": status = OnlineStatus.fromKey(value); if(status == OnlineStatus.UNKNOWN) { status = OnlineStatus.IDLE; LOG.warn("\""+value+"\" is not a valid status; using the default IDLE! Valid statuses are ONLINE, IDLE, DND, and INVISIBLE."); } break; case "bot": bot = "true".equalsIgnoreCase(value); } } if(userToken==null) throw new Exception("No token provided int he config file!"); if(prefix==null) throw new Exception("No prefix provided in the config file!"); if(zone==null) { zone = ZoneId.systemDefault(); LOG.warn("No timezone provided; using the system default!"); } if(status==null) { status = OnlineStatus.IDLE; LOG.warn("No status provided; using IDLE!"); } }
Example #7
Source File: Config.java From Selfbot with Apache License 2.0 | 4 votes |
public OnlineStatus getStatus() { return status; }