0

about the requirement "Timeout Gracefully" and "screensaver support"

Hi all,

I am going through the acceptance criteria and have a few questions about the required features.

Our application is mostly a video player along with a playlist. In our case, the fullscreen view will be the
video player playing our videos, which will unlikely have user interaction when playing.
So, may we skip the screensaver feature in this case? Also, I understand the feature "Timeout Gracefully"
as only applying to the sidebar as hiding it after idling for a minute. Does this timeout apply for
other widget? (timing out the video player seems to be unreasonable, again.) also is there any other
behavior required besides hiding the widget?


Thank you.

Yuhan

by
6 Replies
  • All (including the Yahoo team),

    I'm interested in the answer to this question also - it is critical information for our risk analysis. We cannot afford to lose several weeks to find out if the widget fails to meet the acceptance criteria.

    After presenting the opening snippet, our widget presents the user with a full screen (not a sidebar and not a snippet) carousel of video posters representing video content. When the user selects a video from the carousel they are presented with a detail view, also a full screen view, with a poster and a description of the video. When a user selects "play" from the detail they see the video, as expected. Neither the carousel nor detail views ever timeout and return to the TV.

    Does that mean the widget will not meet the acceptance criteria?

    It is my understanding that the screensaver is automatically handled in the video player. In our widget it has been activated for full screen views. It doesn't appear to be working.

    Here is the text from the Yahoo Acceptance Criteria document:

    "The screensaver timeout must be implemented for the fullscreen view if there is no user-interaction. The screensaver timeout should be triggered appropriately and cleared when user interaction occurs. For video widgets, the screensaver timeout is handled by the KONtx Framework."

    What exactly does that mean?

    Thanks in advance for your help.

    I think the Yahoo team does a great job supporting the forums, and I appreciate that.

    James



    QUOTE (YuhanZ @ Apr 12 2011, 05:00 PM) <{POST_SNAPBACK}>
    Hi all,

    I am going through the acceptance criteria and have a few questions about the required features.

    Our application is mostly a video player along with a playlist. In our case, the fullscreen view will be the
    video player playing our videos, which will unlikely have user interaction when playing.
    So, may we skip the screensaver feature in this case? Also, I understand the feature "Timeout Gracefully"
    as only applying to the sidebar as hiding it after idling for a minute. Does this timeout apply for
    other widget? (timing out the video player seems to be unreasonable, again.) also is there any other
    behavior required besides hiding the widget?


    Thank you.

    Yuhan
    0
  • A correction and additions, in the form of questions, to my own post:

    I meant to say "opening sidebar", not "opening snippet".

    What is the recommended time period, if any, before a timeout is triggered?

    What is the expected behavior of the timeout?

    Should the application return to the TV or the application?

    Thanks - Jim


    QUOTE (James @ Apr 19 2011, 11:08 AM) <{POST_SNAPBACK}>
    All (including the Yahoo team),

    I'm interested in the answer to this question also - it is critical information for our risk analysis. We cannot afford to lose several weeks to find out if the widget fails to meet the acceptance criteria.

    After presenting the opening snippet, our widget presents the user with a full screen (not a sidebar and not a snippet) carousel of video posters representing video content. When the user selects a video from the carousel they are presented with a detail view, also a full screen view, with a poster and a description of the video. When a user selects "play" from the detail they see the video, as expected. Neither the carousel nor detail views ever timeout and return to the TV.

    Does that mean the widget will not meet the acceptance criteria?

    It is my understanding that the screensaver is automatically handled in the video player. In our widget it has been activated for full screen views. It doesn't appear to be working.

    Here is the text from the Yahoo Acceptance Criteria document:

    "The screensaver timeout must be implemented for the fullscreen view if there is no user-interaction. The screensaver timeout should be triggered appropriately and cleared when user interaction occurs. For video widgets, the screensaver timeout is handled by the KONtx Framework."

    What exactly does that mean?

    Thanks in advance for your help.

    I think the Yahoo team does a great job supporting the forums, and I appreciate that.

    James
    0
  • I found out that this is configurable via the user profile: Profile>administrative settings>screensaver. The options are "off(recommended), 1 hr, 2 hrs, 3 hrs." I'm guessing "off" is the default. I set it for one hour and the screen returned to the TV. If that is what the acceptance criteria document is talking about it's less of a big deal than I thought.

    Anyway, I thought I'd share my experience to save someone else a little time.

    Jim


    QUOTE (Benjamin Toll @ Apr 20 2011, 05:31 PM) <{POST_SNAPBACK}>
    Hey guys,
    Sorry for the delay on this. I'm looking into this and will post something soon.
    0
  • QUOTE (YuhanZ @ Apr 12 2011, 05:00 PM) <{POST_SNAPBACK}>
    Our application is mostly a video player along with a playlist. In our case, the fullscreen view will be the
    video player playing our videos, which will unlikely have user interaction when playing.
    So, may we skip the screensaver feature in this case?

    For the most part, the framework handles turning the screensaver on and off for you, so you won't have to add anything to your widget. For example, any time the widget is paused or stopped the screensaver is enabled, and it is disabled for all other states. So, generally, in the simplest of cases, the framework handles this for you.

    There are some use cases that are not covered by this simple model. For example, if your fullscreen view was playing a viewported video and there were UI controls also on the view which were never hidden or faded the screensaver would not be enabled by the framework. Also, the framework throws a dialog when the mediaplayer receives an unknown or error state while playing video, and in this scenario the screensaver also would not have been enabled by the framework (again, it's only enabled when the state is pause or stop). So, plan accordingly.

    QUOTE (YuhanZ @ Apr 12 2011, 05:00 PM) <{POST_SNAPBACK}>
    Also, I understand the feature "Timeout Gracefully"
    as only applying to the sidebar as hiding it after idling for a minute. Does this timeout apply for
    other widget? (timing out the video player seems to be unreasonable, again.) also is there any other
    behavior required besides hiding the widget?

    This is referring to ajax requests. Just make sure that you're calling KONtx.application.setNetworkRequestFailed when you make a request for when it either succeeds or fails. The API docs cover this.
    0
  • QUOTE (James @ Apr 19 2011, 11:08 AM) <{POST_SNAPBACK}>
    Here is the text from the Yahoo Acceptance Criteria document:

    "The screensaver timeout must be implemented for the fullscreen view if there is no user-interaction. The screensaver timeout should be triggered appropriately and cleared when user interaction occurs. For video widgets, the screensaver timeout is handled by the KONtx Framework."

    What exactly does that mean?

    So, yes, as I explained in my previous post, the framework does handle some simplistic use cases for enabling and disabling the screensaver. However, if your fullscreen view doesn't have video or has UI components that are always onscreen, you're expected to enable the screensaver yourself for when there hasn't been any user interaction.

    For example, if there is no video in your fullscreen view, you could do this by registering a listener on the widget that would listen for key presses. You could set a timer that says if there haven't been any key presses in 'x' seconds, enable the screensaver. If the widget then receives a key press, disable the screensaver.

    Also, if you have some UI components that are only onscreen for some time before being removed, you could disable the screensaver when they are shown and then re-enable the screensaver when they're removed (b/c there are still other static components in the view that could cause screen burn-in).

    QUOTE (James @ Apr 19 2011, 11:08 AM) <{POST_SNAPBACK}>
    After presenting the opening snippet, our widget presents the user with a full screen (not a sidebar and not a snippet) carousel of video posters representing video content. When the user selects a video from the carousel they are presented with a detail view, also a full screen view, with a poster and a description of the video. When a user selects "play" from the detail they see the video, as expected. Neither the carousel nor detail views ever timeout and return to the TV.

    Does that mean the widget will not meet the acceptance criteria?

    Most likely it will, but you should handle the use cases that I outlined above.

    QUOTE (James @ Apr 19 2011, 11:08 AM) <{POST_SNAPBACK}>
    It is my understanding that the screensaver is automatically handled in the video player. In our widget it has been activated for full screen views. It doesn't appear to be working.

    What makes you think that? Enabling it means that it will be roughly 15 minutes before you see the widget fade and then exit (assuming you don't disable it in the meantime, of course).
    0
  • QUOTE (James @ Apr 19 2011, 11:29 AM) <{POST_SNAPBACK}>
    What is the recommended time period, if any, before a timeout is triggered?

    I'm assuming you're talking about network requests? They should fail after 60 seconds (assuming you haven't specified a time), and at this point you should pop up a dialog.

    QUOTE (James @ Apr 19 2011, 11:29 AM) <{POST_SNAPBACK}>
    What is the expected behavior of the timeout?
    Should the application return to the TV or the application?

    This depends on the developer. Some have the widget close and return to the dock, others close the dialog yet stay in the widget. You can determine this behavior by listening for the onNetworkHideDialog event.
    0

Recent Posts

in Getting Started / Beginners - Yahoo! TV Widgets