Skip to content

Commit

Permalink
fix: set YoutubeOauth2Handler#enabled to true if refresh token is pro…
Browse files Browse the repository at this point in the history
…vided

(cherry picked from commit 5f2c0ab)
  • Loading branch information
Apehum committed Jul 23, 2024
1 parent 15306bc commit d5daa4c
Showing 1 changed file with 14 additions and 0 deletions.
14 changes: 14 additions & 0 deletions src/main/kotlin/su/plo/voice/discs/PlasmoAudioPlayerManager.kt
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ import su.plo.voice.lavaplayer.libs.com.sedmelluq.discord.lavaplayer.source.vime
import su.plo.voice.lavaplayer.libs.com.sedmelluq.discord.lavaplayer.tools.FriendlyException
import su.plo.voice.lavaplayer.libs.com.sedmelluq.discord.lavaplayer.track.*
import su.plo.voice.lavaplayer.libs.dev.lavalink.youtube.YoutubeAudioSourceManager
import su.plo.voice.lavaplayer.libs.dev.lavalink.youtube.http.YoutubeOauth2Handler
import java.io.File
import java.net.URI
import java.util.concurrent.CompletableFuture
Expand Down Expand Up @@ -141,6 +142,19 @@ class PlasmoAudioPlayerManager(
?.readText()
?.trim()
source.useOauth2(refreshToken, false)

if (refreshToken != null) {
// todo: token validation is not implemented yet,
// so for now I just forcibly set enabled to true in YoutubeOauth2Handler

val oauth2HandlerField = YoutubeAudioSourceManager::class.java.getDeclaredField("oauth2Handler")
oauth2HandlerField.isAccessible = true
val oauth2Handler = oauth2HandlerField.get(source) as YoutubeOauth2Handler

val enabledField = YoutubeOauth2Handler::class.java.getDeclaredField("enabled")
enabledField.isAccessible = true
enabledField.set(oauth2Handler, true)
}
}
}
)
Expand Down

0 comments on commit d5daa4c

Please sign in to comment.