- From: Francois Daoust <fd@w3.org>
- Date: Tue, 10 Mar 2015 13:00:35 +0100
- To: Jon Piesing <Jon.Piesing@tpvision.com>, Paul Higgs <paul.higgs@ericsson.com>, "public-tvapi@w3.org" <public-tvapi@w3.org>
On 2015-03-04 18:37, Francois Daoust wrote: > On 2015-03-04 16:41, Jon Piesing wrote: >>> -----Original Message----- >>> From: Francois Daoust [mailto:fd@w3.org] >>> Sent: Wednesday 4 March 2015 10:40 AM >>> To: Jon Piesing; Paul Higgs; public-tvapi@w3.org >>> Subject: Re: tvapi-ACTION-24: use of Media Capture to realize recording >>> requirements >>> [...] >>> 1. Within Web browsers, Service Workers provide the basic foundation to >>> handle the "standby" mode: >>> https://slightlyoff.github.io/ServiceWorker/spec/service_worker/ >>> >> >> I've gone back and re-read this spec. Can you add a little more detail >> about how you see this handling standby mode? It's not at all obvious >> to me. > > Note the Service Workers spec does not handle the standby mode in > itself, only when combined with other specs. In other words, as the > abstract of the spec says, "the service worker is a generic entry point > for event-driven background processing in the Web Platform that is > extensible by other specifications". > > Events can be triggered by a running Web app (defined in the Service > Workers spec and not what you're looking for), by the Push API (incoming > messages are delivered to a registered Service Worker), or by the > Background Synchronization spec (synchronization events are dispatched > to the underlying Service Worker code), and I think that's about it for > now. Well, no, it turns out that there is also a draft spec called Task Scheduler API developed by the SysApps working group, that also runs on top of Service Workers and that would do precisely what you are looking for: http://www.w3.org/2012/sysapps/web-alarms/ Quoting the abstract: "This specification defines an API to schedule a task at a specified time. When the indicated time is reached, the application that scheduled the task will be notified via a functional event on a service worker. A task event will be delivered to a service worker, regardless of whether the application is active on user agent. Applications such as an alarm clock or an auto-updater may utilize this API to perform certain action at a specified time." Also from section 5: "ScheduledTask API actually does more than setTimeout() because it can actively wake the system from sleeping and scheduled task are not lost when closing the application or restarting the system." The duration of the recording task remains an issue that would need to be further investigated. Service Workers are defined as "time-limited" script contexts, so not meant to run for a long period of time. Francois.
Received on Tuesday, 10 March 2015 12:00:47 UTC