lavalink-devs / youtube-source

A rewritten YouTube source manager for Lavaplayer.
MIT License
163 stars 28 forks source link

Support specifying poToken for WEB client. #43

Closed devoxin closed 3 months ago

devoxin commented 3 months ago

This PR implements support for setting a poToken and accompanying visitorData values which currently apply to the WEB client. As of a recent change to YT's API, the WEB client may trigger 403 errors which can not be bypassed without specifying a poToken (proof-of-origin token).

On a longer timeline, I would like to make this an automatic process that is handled automatically by the source manager however due to the complexity of that, and with current time constraints, this should suffice.

From what I gather, this has been successfully used in production environments by a handful of users. Token lifetime is currently unknown but seems to be quite a while. With that, the only real drawback to this feature is potentially having to periodically update tokens manually.