Closed navarr closed 10 months ago
Connecting to multiple channels on the same platform isn't something I was planning on supporting, as it could become a privacy issue with users connecting to channels just to get their chat data. Sure, someone could just do that themselves with an anonymous Twurple connection, but I wouldn't want to make it easier for them to do via slime2, using my developer client ID. In the current state of slime2, you only have access to your own data.
Additionally, complete parity between the main streamer channel and the other listened channels wouldn't be possible. Certain API calls require explicit authentication from the streamer, such as getting channel point data (to handle chat messages from channel point redemptions that require text) and follow age (which chat widgets use to filter chat messages from users below a certain follow age). This will increase as slime2 expands to add more features, such as getting event data from follows, subscriptions, raids, etc.
I'm also working on YouTube support, and having parity for this feature on YouTube would be a lot of work itself. It would also multiply the amount of YouTube API calls, which is not ideal because Google limits API calls with a quota limit, so I'd like to minimize the amount of API calls made.
slime2 can already be made to show the chat from a single person. The base chat widget, slime chat, and others, has this user filters option in it. If everything in the "Show messages from these types of users" field is unselected, and a certain person's username is added to the "Always show messages from these users" field, then only that person's messages will be shown.
If they want to chat in their own channel instead of the broadcaster's channel, they could give the broadcaster their authentication key to render their channel's chat messages, along with all the security issues that could arise from sharing a key.
Additionally, in the case of mute streamers in collaborations, it might instead be easier to have an overlay from a different service that displays messages from a specific Discord channel
I appreciate your feedback, thank you zaytri! I'll go ahead and close this out.
I submit this PR not expecting it to be accepted, but to start a dialogue on some features I would love to utilize in widgets. Please bear in mind that unfortunately I barely understand what I'm doing in this particular case.
These are the goals I'd like to accomplish:
Right now my proposed code does have a BC break in that the broadcaster's channel is not automatically joined. If you're willing to entertain these ideas, I would be very excited to hear your thoughts!
(As of right now, code is currently untested - but I am confident that with your advice I could build, test, and contribute working code)
TODO