Allow getting realtime updates on polls/predictions/channel points redemptions through websockets for all users
If would be very useful for chat clients or chat overlays to be able to show live updates on these features. Currently they are only available for the broadcaster (redemptions) or not at all through websockets (polls/predictions).
Ideally this would be available for all users to receive, just like chat is (which allows more simple integration into all kinds of tools), but even just mods using third-party moderation tools would already benefit greatly from this.
I included all three of those features, since they all seem to follow the same idea of only allowing the broadcaster access to that information which is otherwise publicly available in chat. If you want me to separate the features into different posts I'd be happy to do it.
-
JDAintFree
commented
let chatterino live
-
TwiggehTV
commented
As a viewer and streamer who is an avid user of the chat client Chatterino2 i am SORELY missing the functionality o see pinned messages, polls & hype trains.
Getting an API access to this data would be an amazing improvement to how i use Twitch on a daily basis.
-
nerixyz
commented
Since PubSub is getting shut down soon, it would be great if this was looked at.
An example use-case for a third party chat client:
Currently, `channel-points-channel-v1.<channel_id>` provides information on the reward without the requirement to be a moderator.
It's used to display the icon, cost, and name of the redeemed reward in the UI (similar to what's shown in the native chat UI).With EventSub, this isn't possible anymore. `channel.chat.message` only provides the reward ID. Without moderator authentication (which a third party chat client doesn't necessarily have), there's no way of getting the required information.
Two ideas:
- Relax the requirement on the auth for these subscriptions in EventSub
- Extend `channel.chat.notification` to provide info on channel points, polls, and predictions. -
ckohen
commented
Its incredibly frustrating that this hasn't been implemented yet.
This information is inherently public information, it is distributed out to every viewer of the stream. This isn't asking for a way to start predictions or polls without authentication, its just the GET (or the equivalent topic) that we want to be freely accessible.
An example use case: When a prediction starts, a user pings a group of users in discord for those that stepped away for a moment. That's great and all, but if a user can do it without even being logged in, why can't an application do it with its own auth token (or even none at all)?
Locking down these endpoints / topics is incredibly restricting for no reason. I guess that's what happens when the website doesn't use the same API that we have to. I guarantee this is why people are staying on older API versions for much longer than Twitch would like.
-
tduva
commented
Thanks for your reply. A central point of my request is that regular users have access to that information as well, not just with a broadcaster token, which would make it feasible to show poll/prediction/redemptions information for more types of applications.
Whether that information is available through chat/IRC (kind of like it already is for points redemptions with a message attached, although unfortunately with few usable tags about which redemption it is) or websocket, both would be good, but an important part is *who* has access to it as well. Older APIs used to be a bit less restrictive (or of course new features available through IRC), which allows providing all of my users (e.g. mods) with more features, instead of just broadcasters.
-
AdminEric Cressey
(Admin, Twitch)
commented
Hi tduva, thank you for the feedback. It sounds like you're asking for two enhancements:
1) Moderator-facing scopes to allow moderators to authorize third-party chat applications to manage polls/predictions. We are considering this request and may add these scopes in the future.
2) Support for realtime notifications via WebSockets for Polls/Predictions. We are adding WebSocket support to EventSub, so this will be the solution when it is available.