-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
YouTube simulcast support #1503
Comments
Implementation brainstorming: We already have the ability to bold external message sources into the IRC-client backend... for Twitch whispers, we have some processing to make it so incoming whispers are fed into the backend as private messages, and then any private messages the bot sends are turned into outgoing whispers before they're sent. So we know this is possible. So we could do something similar to integrate YT... have the bot connect to the YT chat, and feed any messages received into the IRC-client backend as though they were messages in, say, the |
My notes going through YT's API documentation:
LiveChatMessages: list and LiveChatMessages: insert
There doesn't seem to be a concept of joining. Basically you have to somehow find a chat ID and then start fetching messages. There's LiveBroadcasts: list with Alternative the Discord bot currently does this:
From the last step we could get the chat ID from There's also PubSubHubbub but I'm choosing to ignore it because it's XML.
I don't think so.
This is in the
I believe it's impossible to get subscribers in that direction (there is no 'who is subscribed to me' request, only 'who am I subscribed to'). I think the rest is in the chat message. BTW: members used to be called sponsors and the API hasn't been updated to reflect that.
There is a Implementation:
I think this needs a radical new concept of a user without a Twitch account. We should look around for Flask extensions that could do most of the account and auth stuff for us. I found Flask-Dance but maybe there's something even better. I considered doing it for Patreon but I decided not to do it because we still had votes and I didn't know what to do with those when merging users together when linking.
The channel name should contain the chat ID because I suspect there can be multiple active chats at a time, for example between streams the old chat is still active after a stream for a bit but also a new stream has started. Also the channel name schema should be such that if it accidentally gets sent to Twitch then Twitch would reject it. So maybe something like I don't know what to do with the lack of direct messaging. Although if we do nothing and just discard them then the experience would be pretty much the same as on Twitch where whisper delivery is basically guaranteed to not happen because of default permissions. (By default whispers from strangers are blocked and moderators in a chat where you just advertised your viewbotting service are considered strangers.) |
As an update on LRR youtube stuff, a priority would be to get youtube members integrated into LRRbot for sub welcomes. Not only because we want to thank those people, but also because we want to use "get a shout out on the stream" as the required youtube membership perk. Looking at the youtube API docs, there is an endpoint for listing the current youtube members (https://developers.google.com/youtube/v3/docs/members/list). Unfortunately, there isn't a notification system for new members, but the |
New events that will be added soon™:
|
I've merged and deployed the initial version of LRRbot's YouTube integration. Changes:
Roadmap:
|
wow, this looks great! It is so nice to have LRRbot integrating and normalizing the notifications from the different systems instead of having to build all that functionality into each overlay or widget that I make. Do you need anything from me to put this into production? Not sure if LRRbot needs to be given special permissions on the LRR Youtube account or something. Also, will these Youtube membership start showing up on the LRRbot.com/notifications page? |
A couple of questions: |
The only thing that the fallback changes is how LRRbot discovers streams. With the fallback LRRbot will join the chat when the stream goes public. With LRR's token LRRbot would join the chat when the stream is created. Or rather up to five minutes later because LRRbot checks streams every five minutes.
No. Fetching members outside of a stream with Members: list requires LRR's token and also LRR to contact their YouTube rep to give us access. |
Brainstorming what would be good for the chatbot to have, should LRR decide to go ahead with the youtube simulcast thing...
The text was updated successfully, but these errors were encountered: