Skip to content

Commit

Permalink
Updated to JDA 3.1.1_210 and Lavaplayer 1.2.39
Browse files Browse the repository at this point in the history
Added support for < > escaped links for music.
  • Loading branch information
DV8FromTheWorld committed May 31, 2017
1 parent 38f7999 commit 8003d41
Show file tree
Hide file tree
Showing 6 changed files with 48 additions and 45 deletions.
4 changes: 2 additions & 2 deletions build.gradle
Expand Up @@ -81,8 +81,8 @@ repositories {
}

dependencies {
compile "net.dv8tion:JDA:3.0.BETA2_122"
compile 'com.sedmelluq:lavaplayer:1.1.42'
compile "net.dv8tion:JDA:3.1.1_210"
compile 'com.sedmelluq:lavaplayer:1.2.39'
compile "net.lingala.zip4j:zip4j:1.3.2"
compile "com.google.code.gson:gson:2.4"
compile "org.xerial:sqlite-jdbc:3.8.11.2"
Expand Down
28 changes: 14 additions & 14 deletions src/main/java/net/dv8tion/discord/Yui.java
Expand Up @@ -112,29 +112,29 @@ private static void setupBot()
ircConnections = new ArrayList<IrcConnection>();

HelpCommand help = new HelpCommand();
jdaBuilder.addListener(help.registerCommand(help));
jdaBuilder.addEventListener(help.registerCommand(help));
if (settings.getGoogleApiKey() != null && !settings.getGoogleApiKey().isEmpty())
{
GoogleSearch.setup(settings.getGoogleApiKey());
jdaBuilder.addListener(help.registerCommand(new SearchCommand()));
jdaBuilder.addListener(help.registerCommand(new NyaaCommand()));
jdaBuilder.addListener(help.registerCommand(new MyAnimeListCommand()));
jdaBuilder.addListener(help.registerCommand(new AnimeNewsNetworkCommand()));
jdaBuilder.addEventListener(help.registerCommand(new SearchCommand()));
jdaBuilder.addEventListener(help.registerCommand(new NyaaCommand()));
jdaBuilder.addEventListener(help.registerCommand(new MyAnimeListCommand()));
jdaBuilder.addEventListener(help.registerCommand(new AnimeNewsNetworkCommand()));
}
else
{
System.out.println("No Google API Key provided, all search commands disabled");
}
jdaBuilder.addListener(help.registerCommand(new ReloadCommand()));
jdaBuilder.addListener(help.registerCommand(new UpdateCommand()));
jdaBuilder.addListener(help.registerCommand(new PermissionsCommand()));
jdaBuilder.addListener(help.registerCommand(new EvalCommand()));
jdaBuilder.addListener(help.registerCommand(new RollCommand()));
jdaBuilder.addListener(help.registerCommand(new InfoCommand()));
jdaBuilder.addListener(help.registerCommand(new UptimeCommand()));
jdaBuilder.addEventListener(help.registerCommand(new ReloadCommand()));
jdaBuilder.addEventListener(help.registerCommand(new UpdateCommand()));
jdaBuilder.addEventListener(help.registerCommand(new PermissionsCommand()));
jdaBuilder.addEventListener(help.registerCommand(new EvalCommand()));
jdaBuilder.addEventListener(help.registerCommand(new RollCommand()));
jdaBuilder.addEventListener(help.registerCommand(new InfoCommand()));
jdaBuilder.addEventListener(help.registerCommand(new UptimeCommand()));

//Audio stuff
jdaBuilder.addListener(new PlayerControl());
jdaBuilder.addEventListener(new PlayerControl());

for (IrcConnectInfo info : settings.getIrcConnectInfos())
{
Expand All @@ -150,7 +150,7 @@ private static void setupBot()
}
IrcConnection irc = new IrcConnection(info);
ircConnections.add(irc);
jdaBuilder.addListener(irc);
jdaBuilder.addEventListener(irc);
}

if (settings.getProxyHost() != null && !settings.getProxyHost().isEmpty())
Expand Down
32 changes: 18 additions & 14 deletions src/main/java/net/dv8tion/discord/bridge/IrcConnection.java
Expand Up @@ -20,10 +20,10 @@
import net.dv8tion.discord.bridge.endpoint.EndPointInfo;
import net.dv8tion.discord.bridge.endpoint.EndPointManager;
import net.dv8tion.discord.bridge.endpoint.EndPointMessage;
import net.dv8tion.jda.core.entities.Message;
import net.dv8tion.jda.core.entities.User;
import net.dv8tion.jda.core.events.Event;
import net.dv8tion.jda.core.events.message.guild.GenericGuildMessageEvent;
import net.dv8tion.jda.core.events.message.guild.GuildMessageDeleteEvent;
import net.dv8tion.jda.core.events.message.guild.GuildMessageEmbedEvent;
import net.dv8tion.jda.core.events.message.guild.*;
import net.dv8tion.jda.core.hooks.EventListener;
import org.apache.http.util.Args;
import org.pircbotx.Configuration.Builder;
Expand Down Expand Up @@ -144,25 +144,29 @@ public void onJoin(JoinEvent<PircBotX> event)
@Override
public void onEvent(Event event)
{
//We only deal with TextChannel Message events
if (!(event instanceof GenericGuildMessageEvent))
return;

//Don't care about deleted messages or embeds.
if (event instanceof GuildMessageDeleteEvent || event instanceof GuildMessageEmbedEvent)
Message msg;
if (event instanceof GuildMessageReceivedEvent)
{
msg = ((GuildMessageReceivedEvent) event).getMessage();
}
else if (event instanceof GuildMessageUpdateEvent)
{
msg = ((GuildMessageUpdateEvent) event).getMessage();
}
else
{
return;

GenericGuildMessageEvent e = (GenericGuildMessageEvent) event;
}

//Basically: If we are the ones that sent the message, don't send it to IRC.
if (event.getJDA().getSelfUser().getId().equals(e.getAuthor().getId()))
if (event.getJDA().getSelfUser().equals(msg.getAuthor()))
return;

//If this returns null, then this EndPoint isn't part of a bridge.
EndPoint endPoint = BridgeManager.getInstance().getOtherEndPoint(EndPointInfo.createFromDiscordChannel(e.getChannel()));
EndPoint endPoint = BridgeManager.getInstance().getOtherEndPoint(EndPointInfo.createFromDiscordChannel(msg.getTextChannel()));
if (endPoint != null)
{
EndPointMessage message = EndPointMessage.createFromDiscordEvent(e);
EndPointMessage message = EndPointMessage.createFromDiscordEvent(msg);
endPoint.sendMessage(message);
}
}
Expand Down
Expand Up @@ -28,7 +28,6 @@ public class EndPointMessage
private String message;

// -- Discord specific --
private GenericGuildMessageEvent discordEvent;
private User discordUser;
private Message discordMessage;

Expand All @@ -52,14 +51,13 @@ public static EndPointMessage create(EndPointType messageType, String senderName
return message;
}

public static EndPointMessage createFromDiscordEvent(GenericGuildMessageEvent event)
public static EndPointMessage createFromDiscordEvent(Message msg)
{
EndPointMessage message = new EndPointMessage();
message.messageType = EndPointType.DISCORD;
message.setDiscordMessage(event.getMessage());
message.senderName = event.getAuthor().getName();
message.discordEvent = event;
message.discordUser = event.getAuthor();
message.setDiscordMessage(msg);
message.senderName = msg.getAuthor().getName();
message.discordUser = msg.getAuthor();
return message;
}

Expand Down Expand Up @@ -103,13 +101,6 @@ public User getDiscordUser()
return discordUser;
}

public GenericGuildMessageEvent getDiscordEvent()
{
if (!messageType.equals(EndPointType.DISCORD))
throw new IllegalStateException("Attemped to get Discord event for non-Discord message");
return discordEvent;
}

public Message getDiscordMessage()
{
if (!messageType.equals(EndPointType.DISCORD))
Expand Down
Expand Up @@ -82,7 +82,7 @@ else if (args[1].startsWith("-"))
success = addTodo(StringUtils.join(args, " ", 1, args.length), e);

if (success)
e.getMessage().deleteMessage().queue();
e.getMessage().delete().queue();
}

private boolean addTodo(String todoMessage, MessageReceivedEvent e)
Expand Down
10 changes: 9 additions & 1 deletion src/main/java/net/dv8tion/discord/music/PlayerControl.java
Expand Up @@ -310,8 +310,16 @@ else if (".shuffle".equals(command[0]))
}
}

private void loadAndPlay(GuildMusicManager mng, final MessageChannel channel, final String trackUrl, final boolean addPlaylist)
private void loadAndPlay(GuildMusicManager mng, final MessageChannel channel, String url, final boolean addPlaylist)
{
final String trackUrl;

//Strip <>'s that prevent discord from embedding link resources
if (url.startsWith("<") && url.endsWith(">"))
trackUrl = url.substring(1, url.length() - 1);
else
trackUrl = url;

playerManager.loadItemOrdered(mng, trackUrl, new AudioLoadResultHandler()
{
@Override
Expand Down

0 comments on commit 8003d41

Please sign in to comment.