From 7c4ea13e3cbe6ee5eb4200291695db899c68b3e8 Mon Sep 17 00:00:00 2001 From: Nekojimi Date: Fri, 3 Mar 2023 23:01:30 +0000 Subject: [PATCH] Change local address handling to also apply to JDA's HTTPClient. --- src/main/java/moe/nekojimi/chords/Chords.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/main/java/moe/nekojimi/chords/Chords.java b/src/main/java/moe/nekojimi/chords/Chords.java index 759e46c..57427c2 100644 --- a/src/main/java/moe/nekojimi/chords/Chords.java +++ b/src/main/java/moe/nekojimi/chords/Chords.java @@ -34,6 +34,8 @@ import net.dv8tion.jda.api.managers.AudioManager; import net.dv8tion.jda.api.requests.GatewayIntent; import net.dv8tion.jda.api.utils.Compression; import net.dv8tion.jda.api.utils.cache.CacheFlag; +import net.dv8tion.jda.internal.utils.IOUtil; +import okhttp3.OkHttpClient; /** * The Chords music Discord bot. @@ -108,6 +110,9 @@ public final class Chords extends ListenerAdapter { final WebSocketFactory webSocketFactory = new WebSocketFactory(); final LocalBindSocketFactory localBindSocketFactory = new LocalBindSocketFactory(); + OkHttpClient.Builder httpBuilder = IOUtil.newHttpClientBuilder(); + httpBuilder.socketFactory(localBindSocketFactory); + localBindSocketFactory.setLocalAddress(InetAddress.getByName(settings.getLocalAddr())); webSocketFactory.setSocketFactory(localBindSocketFactory); builder.setWebsocketFactory(webSocketFactory);