From 0c6435facb468e15c5ac0ebc65c2e6f37fb98c74 Mon Sep 17 00:00:00 2001 From: Yukai Shan Date: Wed, 12 Apr 2023 21:53:02 -0700 Subject: Add Live_Viewer count to currently live embeds --- src/main/java/builders/ScheduleMessageBuilder.java | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/main/java/builders/ScheduleMessageBuilder.java b/src/main/java/builders/ScheduleMessageBuilder.java index eb47118..4f5f78c 100644 --- a/src/main/java/builders/ScheduleMessageBuilder.java +++ b/src/main/java/builders/ScheduleMessageBuilder.java @@ -3,6 +3,7 @@ package builders; import com.pina.datatypes.SimpleVideo; import net.dv8tion.jda.api.EmbedBuilder; import net.dv8tion.jda.api.entities.MessageEmbed; +import java.text.NumberFormat; import java.awt.*; import java.time.OffsetDateTime; @@ -11,6 +12,7 @@ import java.util.List; public class ScheduleMessageBuilder { private int COLOR = 8805674; + private NumberFormat numberFormat = NumberFormat.getInstance(); public MessageEmbed buildLiveAndUpcomingMessage(List videos){ if (videos.size() == 0){ return new EmbedBuilder() @@ -31,7 +33,7 @@ public class ScheduleMessageBuilder { for (SimpleVideo video : videos){ String gmtStartTime = video.start_scheduled; long unixTime = OffsetDateTime.parse(gmtStartTime).toEpochSecond(); - String unixTimeStr = " ⏰"; + String unixTimeStr = " ⏰"; if (video.status.equals("live")){ unixTimeStr = "LIVE \uD83D\uDD34"; } @@ -40,7 +42,7 @@ public class ScheduleMessageBuilder { titleText = video.channel.name + " - " + unixTimeStr; } String videoURL = "https://www.youtube.com/watch?v=" + video.id; - messageBuilder.addField(titleText, "["+video.title+"]"+"("+videoURL+")", false); + messageBuilder.addField(titleText, "["+video.title+"]"+"("+videoURL+")", true); } return messageBuilder.build(); @@ -55,19 +57,24 @@ public class ScheduleMessageBuilder { } String title = channel_name + " is streaming soon! ⏰"; String fieldTitle = "Scheduled Start Time"; + String viewerText = "Not Live Yet"; if (video.status.equals("live")){ title = channel_name + " is live! \uD83D\uDD34"; fieldTitle = "Live Since"; + viewerText = "Live Viewers"; } String gmtStartTime = video.start_scheduled; long unixTime = OffsetDateTime.parse(gmtStartTime).toEpochSecond(); EmbedBuilder embedBuilder = new EmbedBuilder() .setTitle(title) .setDescription("["+video.title+"]"+"(https://www.youtube.com/watch?v="+video.id+")") - .addField(fieldTitle, "", false) + .addField(fieldTitle, "", true) .setThumbnail(video.channel.photo) .setImage("https://img.youtube.com/vi/"+video.id+"/maxresdefault.jpg") .setTimestamp(OffsetDateTime.now()); + if (video.status.equals("live")){ //uhhhhhh boilerplate but oh well + embedBuilder.addField(viewerText, numberFormat.format(video.live_viewers), true); + } messageEmbeds.add(embedBuilder.build()); } return messageEmbeds; -- cgit v1.2.3