Note: Below there are a few highlights where links need to be added into other documents, as they're written.
In order to make use of the social API (whether you're writing a new social service provider or working with an existing provider), there are a number of terms you need to know. This glossary will help!
- Client-to-user notification
- Client-to-user notification is the API that is made available to a service worker to indicate that data and interactions are pending for the user on this particular device, and that the service is ready to provide them. Subject to the browser's configuration, these notifications may be used to trigger a variety of attention-getting interface elements, including "toast" or "Growl"-style ephemeral windows, ambient notifications (e.g. glowing, hopping, pulsing), or collections (e.g. pull-down notification panels, lists of pending events). These Notifications are constructed to allow the service worker to receive notification when the user indicates interest in one of them, allowing the data presentation or interaction to proceed immediately.
- A user-interface region (typically rectangular) that is temporarily displayed above content and browser chrome; these are used for short-lived interactions that are user-initiated or very important.
- The user-initiated act of indicating that a piece of web content (typically a URL) should be marked as being of interest to a user. No input other than than the URL is expected. A recommend can be completed with no widget; it has no user interface other than the button, menu bar, or command that indicates "recommend this".
- Server-to-client notification
Server-to-client notification is a system by which a service arranges for notifications to be delivered promptly and efficiently to a client. It is not a feature of this proposal, though existing web techniques including WebSockets, Server-sent events,
XMLHttpRequestwith long polling (or infrequently quick polling) can all be used from service workers. It is expected that a service worker that has received a server-to-client notification will often relay this data into a client-to-user notification.
- Service message
- A message is a JSON-encoded string that is either sent by the browser to the service worker, or sent by the service worker to the browser. These messages are used to coordinate the display of browser-managed user interface elements and to respond to user and content interactions. See Message Serialization for encoding details.
- Service worker
The user-initiated act of sending a piece of web content (typically a URL) with an optional comment, explanation, or other data, to a user address, list of user addresses, social network, or other destination. The details of a share interaction are service-specific and a
ShareWidgetis required to render the user interface to complete a share.
- A vertical rectangle of screen space, positioned to the side of normal browser content in a tabbed browser window, which is stable across brower navigation and tab-focus changes. A sidebar may be minimized, which causes it to be rendered entirely in "above-the-content/not-overlaid-over-content" layout space.
- Social service provider
- A user-interface element, created by the browser, which provides a visual region for the display of content produced by the service provider.