Re: User agent context for rendering the presentation

On Wed, Aug 20, 2014 at 5:04 PM, Mark Watson <watsonm@netflix.com> wrote:
> It often takes time to start from a fresh state, so there could be a UX
> impact for some applications if the presentation side is not allowed to
> store persistent state.
>
> The situation can get quite complex: suppose I have two laptops (L1 and L2)
> and each laptop has two user accounts (A1, ..., A4) and on each user account
> there are two browser instances running (B1, ..., B8) and each browser
> instance is logged in to www.netflix.com using a different Netflix account
> (N1, ..., N8). And everyone is on the same wifi with a single SmartTV, which
> doesn't have multiple accounts or multiple browsers and which is logged in
> to Netflix on a further account N9 ?
>
> The Presentation API model is that by virtue of being on the wifi at all the
> user of any of the devices is empowered to give permission for a site to
> present on the SmartTV. The question is, then, when the person using B3 and
> logged in with N3 tries to present on the TV, does the TV browser use the
> pre-existing state and stay logged in as N9?

It depends. If netflix chooses to pass a user-account specific
identified when calling requestSession, then no, it would not use the
pre-existing state. It would instead create a new session.

If netflix instead choose to pass a blank identifier whenever calling
requestSession then the identifier would match and we'd connect to the
existing N9 session.

Netflix could then use whatever application logic it wants to do
whatever it wants. It could let the existing movie keep playing, or it
could stop the currently running movie and resume whatever N3 was last
watching. Or it could show UI to the user allowing the user to choose
what to do.

> Or does it log out and log in
> as N3, explicitly clearing the N9 state ?

It's up to the TV hardware and software to choose if it wants to
support keeping existing sessions running or not. If the TV is capable
of allowing the N9 state to stay in the background, then it could do
so.

> I would suggest this is a question
> for the web developer. Perhaps we should give the web developer the option
> to avoid this complexity by requesting that the remote browsing content be
> "fresh" like an incognito one ? But for my part I would prefer to deal with
> this complexity in return for the improved UX in the common case where there
> is only L1, A1, B1 and N1.

That's already possible. Session IDs is an optional convenience
feature which just makes it easier to create a safe application. But
you can choose not to use it and use application logic to accomplish
whatever you want.

/ Jonas

Received on Thursday, 21 August 2014 00:18:01 UTC