If I may I have a question too in the following post
var streamer_id = payload.channel_id;
var streamer_id = payload.opaque_user_id.replace('U', '');
A broadcaster’s token is set with “U” + his Twitch user ID, to avoid confusing his opaque ID with his user ID when he is a viewer.
Can also cross check that
payload.role == 'broadcaster'
To see if the ID’s below to the streamer that the extension is installed on
@BarryCarlyon & @Alca thank you very much. I had seen “onAuthorized” in the docs, but had assumed that it was an event that fired after the streamer carried out an authorization handled via the EBS due to the docs stating it fired when the JWT was updated. I have tested and am able to get the data I was expecting so thank you very much for explaining!
Not sure if it was my poor understanding or unclear documentation that lead to the confusion, but thought I would explain my train of thought in case someone else has a similar case and comes across this thread.
Would I be right in saying I can also use a window.Twitch.ext.listen() to automatically receive Twitch’s own PubSub events (e.g. bit donation) without needing to auth the streamer in any way?
The docs say you can listen: Extensions Reference | Twitch Developers
Non-extensions PubSub topics also are supported with this function; for example:
I have not tested it myself, the example event of “channel-bits-events-v1.” you are supposed to provide an oauth/scope according to the pubsub docs, but there’s no way to provide an oauth/scope under listen. So perhaps calls to listen in extensions bypass the need for the auth here, as the JWT/Twitch listener handles that.
But a given JWT/listen combo has a specific channelID in the decoded payload anyway.