Issue with JWT token for overlay extension in stream-manager

Hello!

In my extension streamer must open their own stream to see their own broadcast and create poll variants in necessary position.

All works fine on https://twitch.tv/mbobrova
and doesn’t work in stream manager https://dashboard.twitch.tv/u/mbobrova/stream-manager

After some investigation I find the reason. By some reason overlay extension on stream manager always initialised with anonymous viewer identity. I’ve got JWT with “opaqueUserId”: “AzQkmmuxCnTqFXkZiQvxK”, “role”: “viewer”.

Expected behaviour for extension loaded in stream manager to be initialised with “role”: broadcaster and real broadcaster ID.
If broadcaster open their own stream by https://twitch.tv/mbobrova all works as exepcted.

Can it be fixed?
Thank you.

I’ve talk about overlay extension. Not about config or live config.

I’ve also reported this there https://github.com/twitchdev/issues/issues/123

You should register a “live config” view.

Which creates a view a broadcaster can use to click on to open the view and create your poll in there.

Last I checked the stream manager live stream/preview didn’t support extensions, and you should be using a “live config” instead

Then the streamer doesn’t have to play/view their own stream (wasting bandwidth and potentially causing LOUD NOISES) to setup the poll, and additionally you increase security by not leaking your admin code to general viewers as you can segregate/protect your admin code in another view.

I’m not disagreeing that it’s a bug, I’m suggesting you shouldn’t be doing it like this.

Thank you for answer!
Most of streamers always have opened stream manager with live stream.
By now stream manager supported overlay extension, but only problem is wrong JWT initialisation.

In my extension it is a necessary to create a poll in overlay (not in live config). Just becouse you created poll variant in right position like this.

Just to summarise.

Right now overlays is working in stream manager but initialised with wrong credentials (role:“viewer”, opaqueID: “Ai1823anajsdn”)

If broadcaster open their stream by link Twitch all work correctly and role: “broadcaster”, “opaqueID”: “channelID”

I think it is a bug that overlays initialised with wrong credentials in stream manager.

And I don’t catch your point about security. I’ve used twitch JWT to authorise the request. There is no security problems.

You just repeated everything you just said/put on the ticket.

Not really no. Course I have no metrics to support this, but for streamers with a single monitor they won’t want to alt tab to their own stream on stream. And playing back your own stream can lead to audio leaks

Streamers should create in live config, so that you don’t leave your admin code in the front end for viewers to see.
And means your front end loads more quickly as it only loads the viewer code and not the admin code too, and removes an attack vector. As your admin code is obscured

In my opinion you are doing it wrong by putting it in the main view, and should create a optimised view for streamers to setup the poll in, rather than having to load the stream preview all the time and the extension on top of that, (and the other extensions that may be installed and active)

I’ve used the same components of vue.js for admin and viewer so there is small overhead for code size.

In my extension broadcaster need to see its own stream to create poll. It is much more faster to create poll by just click to the position where broadcaster let user to put their voices. He can stop\play stream to save the bandwidth.

Anyway i’ve tested my extension and streamers okay with open Twitch to manage their polls. But it is hard to describe to streamers that the extension only work if they open Twitch, not stream manager.

In my extension streamers can create polls like this by seconds. Not necessary even to name your poll variants. It is good when you have no too much time.

Then this just works better if the casters visits their own stream, since the stream preview, is by default a small size.

Again not disagring it’s a bug, hopefully they’ll fix it

it’s just a full “I wouldn’t of done it like that”