SlideShare une entreprise Scribd logo
1  sur  32
Webinos APIs

 Presentation for Webinos launch day
 June 19 2012

 Claes Nilsson – Sony Mobile


Rev PA3          2012-06-19   1
Scope
 Javascript APIs for web application
  developers
   – Provides access to HW and SW
    capabilities
   – Also access to capabilities on
    remote devices in Personal Zones


 Rev PA3       2012-06-19   2
Inventing the wheel again?




Rev PA3      2012-06-19   3
API landscape
                                                         What WG

        DAP Web apps     Work with W3C standardization
                         – provide input to W3C
  System apps Web RTC    .
        Geolocation


Use existing APIs
when possible.
If necessary make
Webinos additions/      If needed specify new
modifications           Webinos APIs.


    WAC
                                                          WebAPI
     Rev PA3             2012-06-19   4
Phase 1 API specifications
 Done June 30 2011
 Link to phase 1 API specifications
 Link to phase 1 API specifications based
  on category




 Rev PA3         2012-06-19   5
New Webinos phase 1 API
specifications
    Webinos Core module
    Webinos Discovery module
    Webinos Sensor module
    Webinos TV Control module
    Webinos Vehicle module
    Webinos NFC module
    Webinos Payment module
    Webinos Event Handling module
    Webinos Attestation module (discontinued in phase 2)
    Webinos Authentication module
    Webinos Context module

    Rev PA3                   2012-06-19   6
New Webinos Phase 1 API
specifications modified from
existing W3C, WAC and
Bondi specifications
 Webinos Device Status Vocabulary - WAC 2.0 devicestatus module
  with added Webinos aspects
 Webinos Messaging module - WAC 2.0 Messaging module with
  Webinos modifications
 Webinos Widget module - Based on W3C Widget Interface
 Webinos AppLauncher module - Based on BONDI 1.1
 Webinos Userprofile module - Based on W3C DAP Contacts and
  Portablecontacts (discontinued in phase 2)

 Rev PA3                  2012-06-19   7
Unmodified referenced
APIs from W3C or WAC
    W3C Geolocation API
    W3C DeviceOrientation Event
    W3C Media Capture (discontinued in phase 2)
    WAC 2.0 devicestatus module
    WAC waikiki deviceinteraction module
    W3C Contacts API
    W3C Calendar API
    W3C File API: Reader
    W3C File API: Writer
    W3C File API: Directories and System
    W3C Gallery API

    Rev PA3                  2012-06-19   8
Access to capabilities on
remote devices
 Webinos Service Discovery API
   – Discover local or remote services without any
     previous knowledge of the service. API hides details
     of underlying low level discovery and communication
     protocols.

   – Discovered and selected service accessed through
     standard or Webinos APIs

   – New API needed as existing low level Service
     Discovery mechanisms such as Bluetooth service
     discovery, Universal Plug & Play, mDNS, DNS
     Service Discovery, etc are not exposed to web
     application developers.

 Rev PA3               2012-06-19   9
Example - access to
geolocation service on
remote device
                                                                                 Peter: PZP
                                                                               (Personal Zone Proxy)
                        Peter: PZH
                        (Personal Zone Hub)                       TLS

                         Security Policy


                                                                                 Geo-location
                                                                                   Contacts
                                                                                     File


                                                 1. Application calls Webinos Service discovery API
 Peter: PZP                                         to search geolocation service
(Personal Zone Proxy)
                         Geo-location            2. User selects mobile’s geolocation service
                          Contacts
                                                 3. Application binds to selected service
                             File
                                                 4. Application uses W3C Geolocation API to
                                                    access geolocation service
 Rev PA3                                      2012-06-19   10
Webinos APIs, phase 2
 Due August 31 2012
 Updating phase 1 API specifications based
  on:
   – Webinos Phase 1 implementation experiences
   – Progress in W3C standardization
 New phase 2 APIs based on:
   – Additional use cases
   – Further Webinos development
   – Progress in W3C standardization

 Rev PA3           2012-06-19   11
New proposed phase 2
APIs
    Actuator API
    Telephone API
    Privacy aware Location and Proximity API
    Tethering API
    oAuth API
    Sensor API – pulse meter sensor type
    W3C Web Realtime communication
     (getUserMedia and PeerConnection APIs)

    Rev PA3         2012-06-19   12
More?

 Audience is encouraged to
  consider and propose more
  APIs that need to be
  supported!


Rev PA3    2012-06-19   13
Investigating Web Intents
for Webinos
• Service discovery/application launcher
  mechanism for web applications
   • ”Similar to Android Intents but for Web
     Applications”
 Web Intents has strong momentum in
  W3C
 Work in W3C on extending model to
  support local network, e.g. UPnP, services

 Rev PA3             2012-06-19   14
Demo of Web Intents for
local network service
discovery and access
 Video player application supporting video
  play on remote UPnP media rendered
  discovered through Web Intents




 Rev PA3          2012-06-19   15
SUPPORTING SLIDES FOLLOW..

THE SLIDES CONTAIN TABLES OF ALL APIS
WITH DESCRIPTION AND RATIONALE FOR
SPECIFYING THE API OR REUSING AN EXISTING
API.




Rev PA3         2012-06-19   16
Introduction
Webinos API specifications are divided into the following categories:

   Webinos base and generic objects/interfaces: Common interfaces for all Webinos
    APIs.
   APIs for service discovery and remote API access: APIs to discover local and
    remote services.
   HW Resources APIs: APIs allowing access to device HW resources such as GPS,
    camera, microphone, sensors, etc.
   Application Data APIs: APIs allowing access to application capabilites such as
    contact items, calender information, messages, media files, etc.
   Communication APIs: APIs allowing communication with other applications in the
    same or another device.
   Application execution APIs: APIs allowing Webinos applications to launch other
    Webinos and native applications.
   User profile and context APIs: APIs allowing access to user profile data and user
    context.
   Security and Privacy APIs: APIs related to the security model for Webinos.

     Rev PA3                        2012-06-19   17
Access to capabilities on
  remote devices
 Example: Access to Geolocation on remote device.
// 1. Initiate a search query for a service of the type geolocation
findHandle = window.webinos.discovery.findServices(
                 {api:'http://www.w3.org/ns/api-perms/geolocation'},
                 {onFound:serviceFoundCB, onLost:serviceLostCB});

// 2. Bind to selected service
serviceHandle = service.bind({onBind:bindCB});

// 3. Use Geolocation API to access service
myLocationService.navigator.geolocation.getCurrentPosition(showMap);


    Rev PA3                    2012-06-19   18
APIs per category
Webinos base and generic objects/interfaces
API name      Description                            Rationale
Webinos       Basically it defined the Webinos       A specific Webinos namespace
Core module   namespace, i.e. the common interface   needs to be defined in order to
              from which all Webinos APIs can be     not pollute the global
              accessed.                              namespace.




 Rev PA3                       2012-06-19   19
APIs per category
Discovery and access to remote services
API name    Description                             Rationale
Webinos     Provides web applications with an API   New API needed as existing low
Discovery   to discover local or remote services    level Service Discovery
module      without any previous knowledge of       mechanisms such as Bluetooth
            the service. The API hides details of   service discovery, Universal Plug
            underlying low level discovery and      & Play, mDNS, DNS Service
            communication protocols.                Discovery, etc are not exposed
                                                    to web application developers.




 Rev PA3                      2012-06-19   20
APIs per category
HW resource APIs
API name     Description                                  Rationale
Webinos      Generic access to data from sensors in the   New API needed as there
Sensor       device, connected to the device or in        was no existing generic
module       another device. Webinos Service              sensor API that fulfilled the
             Discovery API used to find and bind to       Webinos requirements, e.g.
             sensors and is agnostic to underlying low    on sensor discovery.
             level methods for sensor discovery and
             communication with sensors.
Webinos TV   Interface for TV control and management      New API needed as existing
Control      including channel management and             APIs did not fulfill Webinos
module       display of TV streams that can be plugged    requirements on
             into a HTML5 VideoElement .                  embedding TV stream into a
                                                          web page.

 Rev PA3                       2012-06-19   21
APIs per category
HW resource APIs
API name      Description                           Rationale
Webinos       Provides access to specific vehicle   New API needed as there was no
Vehicle       data including trip computer data,    existing vehicle API for web
module        gears or park sensors.                applications and it was not feasible
              Furthermore it offers methods for     to extend an existing general
              interacting with the on-board         system information/device status
              navigation system.                    API.
Webinos NFC Supports read/write of identifier  New API needed as there was no
module      and/or the contents of an NFC tag. existing NFC API for Web
                                               Applications, only Java or native
                                               APIs existed.



 Rev PA3                         2012-06-19   22
APIs per category
HW resource APIs
API name      Description                                 Rationale
W3C           Provides Web Applications with              W3C API fulfills Webinos
Geolocation   geographical location.                      requirements.
API
W3C Device    Provides Web Applicatiions with             W3C API fulfills Webinos
Orientation   information about the device                requirements.
Event         orientation and motion
W3C Media     Provides access to the audio, image and     W3C Media Capture was
Capture       video capture capabilities of the device.   selected in favor of the more
              Note, only useful for capturing media       simple W3C HTML Media
              files, doesn't give access to live          Capture API due to security
              streams.                                    and remote access reasons.

 Rev PA3                         2012-06-19   23
APIs per category
HW resource APIs
API name       Description                                 Rationale
WAC 2.0        API for retrieving device status information Corresponding W3C APIs
devicestatus   such as battery status, network              not yet mature.
module         information and display properties.
Webinos       Vocabulary used by WAC 2.0 Device Status     WAC 2.0 Device Status
Device Status module. The WAC 2.0 devicestatus             module fulfills Webinos
Vocabulary    vocabulary has been extended with            requirements but some
              additional Webinos aspects.                  new aspects need to be
                                                           added to the vocabulary.
WAC device     Provides a mechanism to interact with the   Corresponding W3C API
interaction    end-user through features such as           not yet mature.
module         device vibrator, device notifier, screen
               backlight and device Wallpaper.
 Rev PA3                         2012-06-19   24
APIs per category
Application Data APIs
API name    Description                                      Rationale
Webinos     A generic and simple shopping basket based       New API needed as
Payment     API that can be mapped to different underlying   none of the existing
module      payment systems to provide a system that can     solutions provided a
            address payments on platform bound payment       sufficiently generic
            solutions as well as open payment services.      payment solution.
Webinos     Extension of WAC 2.0 Messaging module.           WAC API selected due
Messaging   Supports sending messages through different      to the availability of
module      technologies: SMS, MMS, Email and Instant        receiving messages,
            Messages. Search for messages in the different   which currently is
            folders. Subscribe for being notified upon       missing in the W3C
            incoming message events. Webinos extension       Messaging API.
            is support for Instant Messages.

 Rev PA3                      2012-06-19   25
APIs per category
Application Data APIs
API name       Description                                       Rationale
W3C            High-level API to read a user's unified address   W3C API fulfills
Contacts API   book.                                             Webinos requirements.
W3C            High-level API to read a user's calendaring       W3C API fulfills
Calendar API   service.                                          Webinos requirements.
W3C File API   An API for representing file objects in web       W3C API fulfills
               applications, as well as programmatically         Webinos requirements.
               selecting them and accessing their data.
W3C File API: An API for writing to files from web               W3C API fulfills
Writer        applications.                                      Webinos requirements.



 Rev PA3                          2012-06-19   26
APIs per category
Application Data APIs
API name       Description                                   Rationale
W3C File API: An API to navigate file system hierarchies.    W3C API fulfills
Directories                                                  Webinos requirements.
and System
W3C Gallery    Provides access to media gallery located on the W3C API fulfills
API            device                                          Webinos requirements.




 Rev PA3                          2012-06-19   27
APIs per category
Communication APIs
API name   Description                                   Rationale
Webinos    Provides means to exchange data in terms of   A low level event
Event      events among addressable entities (e.g.,      handling API needed to
Handling   applications, services), either locally or    send/receive/forward
module     remotely.                                     arbitrary data among any
                                                         entity, in particular being
                                                         suited for developing
                                                         higher level APIs relying
                                                         on data exchange
                                                         featuring Webinos
                                                         overlay networking and
                                                         discovery.


 Rev PA3                    2012-06-19   28
APIs per category
Application Execution APIs
API name      Description                                   Rationale
Webinos       Defines the common widget interface. It is    W3C Widgets
Widget        is based on W3C Widget Specifications and     speciifcations are
module        specifies webinos specific extensions, e.g.   established for installable
              methods to put widgets in background and      web applications but
              issue notifications to the user.              Webinos needed to
                                                            specifiy extensions to
                                                            fulfill requirements.
Webinos     Modelled after BONDI v1.1 AppLauncher API       Applications are
AppLauncher and modified by Webinos. Allows activation      identified differently in
module      of webinos applications installed locally on    Webinos compared to
            the device.                                     Bondi.


 Rev PA3                        2012-06-19   29
APIs per category
Security and Privacy APIs
API name        Description                                  Rationale
Webinos         Provides a secure method of querying the There was no existing API
Attestation     underlying device hardware to find out the providing this
module          identity and integrity of running software. functionality.
Webinos        Provides information to applications about    There was no existing API
Authentication the current authentication status of users,   providing this
module         as well as allowing applications to request   functionality.
               re-authentication.




 Rev PA3                         2012-06-19   30
APIs per category
User Profile and Context APIs
API name      Description                                      Rationale
Webinos       Offers access to information on the user. The    W3C Contacts API
Userprofile   API is based on W3C Contacts API to gather       do not provide social
module        basic information about the user (e.g. name,     network attributes.
              nickname, gender, birthday, etc.). Webinos
              extends it with social network attributes from
              Portablecontacts.




 Rev PA3                       2012-06-19   31
APIs per category
User Profile and Context APIs
API name   Description                                         Rationale
Webinos    Defines high-level interfaces to obtain access to   There was no
Context    a user's context data by two methods:               existing API
module     • Executing a query against the context data        providing this
           storage and retrieving context data through the     functionality.
           query results.
           • Subscribing to receive real time context data
           updates as soon as a context related event
           happens.




 Rev PA3                    2012-06-19   32

Contenu connexe

En vedette

IoT Mashup - webinos APIs - Nilsson
IoT Mashup - webinos APIs - NilssonIoT Mashup - webinos APIs - Nilsson
IoT Mashup - webinos APIs - Nilssonwebinos project
 
IoT Mashup - Webinos architecture 101 - Baldwin
IoT Mashup - Webinos architecture 101 - BaldwinIoT Mashup - Webinos architecture 101 - Baldwin
IoT Mashup - Webinos architecture 101 - Baldwinwebinos project
 
webinos Security privacy
webinos Security privacywebinos Security privacy
webinos Security privacywebinos project
 
webinos and Open Ecosystems Open Governance
webinos and Open Ecosystems Open Governancewebinos and Open Ecosystems Open Governance
webinos and Open Ecosystems Open Governancewebinos project
 
IoT Mashup - webinos iot and m2m - Allott
IoT Mashup - webinos iot and m2m - AllottIoT Mashup - webinos iot and m2m - Allott
IoT Mashup - webinos iot and m2m - Allottwebinos project
 
IoT Mashup - Security for internet connected devices - Lyle
IoT Mashup - Security for internet connected devices - LyleIoT Mashup - Security for internet connected devices - Lyle
IoT Mashup - Security for internet connected devices - Lylewebinos project
 
webinos Use Cases - Open Day
webinos Use Cases - Open Daywebinos Use Cases - Open Day
webinos Use Cases - Open Daywebinos project
 
iotmashup - Webinos architecture 101 - baldwin
iotmashup - Webinos architecture 101 - baldwiniotmashup - Webinos architecture 101 - baldwin
iotmashup - Webinos architecture 101 - baldwinwebinos project
 
IoT Mashup - Webinos iot-2013-07-23 Raggett
IoT Mashup - Webinos iot-2013-07-23 RaggettIoT Mashup - Webinos iot-2013-07-23 Raggett
IoT Mashup - Webinos iot-2013-07-23 Raggettwebinos project
 
iotmaship - Webinos iot and m2m - allott
iotmaship - Webinos iot and m2m - allottiotmaship - Webinos iot and m2m - allott
iotmaship - Webinos iot and m2m - allottwebinos project
 
webinos Open Day Introduction
webinos Open Day Introductionwebinos Open Day Introduction
webinos Open Day Introductionwebinos project
 
[Hello world]git internal
[Hello world]git internal[Hello world]git internal
[Hello world]git internalNAVER D2
 

En vedette (15)

Iot mashup intro
Iot mashup introIot mashup intro
Iot mashup intro
 
IoT Mashup - webinos APIs - Nilsson
IoT Mashup - webinos APIs - NilssonIoT Mashup - webinos APIs - Nilsson
IoT Mashup - webinos APIs - Nilsson
 
IoT Mashup - Webinos architecture 101 - Baldwin
IoT Mashup - Webinos architecture 101 - BaldwinIoT Mashup - Webinos architecture 101 - Baldwin
IoT Mashup - Webinos architecture 101 - Baldwin
 
webinos Security privacy
webinos Security privacywebinos Security privacy
webinos Security privacy
 
webinos and Open Ecosystems Open Governance
webinos and Open Ecosystems Open Governancewebinos and Open Ecosystems Open Governance
webinos and Open Ecosystems Open Governance
 
IoT Mashup - webinos iot and m2m - Allott
IoT Mashup - webinos iot and m2m - AllottIoT Mashup - webinos iot and m2m - Allott
IoT Mashup - webinos iot and m2m - Allott
 
IoT Mashup - Security for internet connected devices - Lyle
IoT Mashup - Security for internet connected devices - LyleIoT Mashup - Security for internet connected devices - Lyle
IoT Mashup - Security for internet connected devices - Lyle
 
webinos Use Cases - Open Day
webinos Use Cases - Open Daywebinos Use Cases - Open Day
webinos Use Cases - Open Day
 
iotmashup - Webinos architecture 101 - baldwin
iotmashup - Webinos architecture 101 - baldwiniotmashup - Webinos architecture 101 - baldwin
iotmashup - Webinos architecture 101 - baldwin
 
IoT Mashup - Webinos iot-2013-07-23 Raggett
IoT Mashup - Webinos iot-2013-07-23 RaggettIoT Mashup - Webinos iot-2013-07-23 Raggett
IoT Mashup - Webinos iot-2013-07-23 Raggett
 
IoT Mashup - Welcome
IoT Mashup - WelcomeIoT Mashup - Welcome
IoT Mashup - Welcome
 
iotmaship - Webinos iot and m2m - allott
iotmaship - Webinos iot and m2m - allottiotmaship - Webinos iot and m2m - allott
iotmaship - Webinos iot and m2m - allott
 
webinos Open Day Introduction
webinos Open Day Introductionwebinos Open Day Introduction
webinos Open Day Introduction
 
[Hello world]git internal
[Hello world]git internal[Hello world]git internal
[Hello world]git internal
 
Getting Git
Getting GitGetting Git
Getting Git
 

Similaire à webinos APIs

MoMoAthens Cross-Screen_Introduction to Webinos by Webinos
MoMoAthens Cross-Screen_Introduction to Webinos by WebinosMoMoAthens Cross-Screen_Introduction to Webinos by Webinos
MoMoAthens Cross-Screen_Introduction to Webinos by WebinosMobile Monday Athens
 
LCU13: Discussion: ODP relationship to NFV
LCU13: Discussion: ODP relationship to NFVLCU13: Discussion: ODP relationship to NFV
LCU13: Discussion: ODP relationship to NFVLinaro
 
Single sign-on Across Mobile Applications from RSAConference
Single sign-on Across Mobile Applications from RSAConferenceSingle sign-on Across Mobile Applications from RSAConference
Single sign-on Across Mobile Applications from RSAConferenceCA API Management
 
CF Summit 2016 - Review
CF Summit 2016 - ReviewCF Summit 2016 - Review
CF Summit 2016 - ReviewEnikö Török
 
OWIN (Open Web Interface for .NET)
OWIN (Open Web Interface for .NET)OWIN (Open Web Interface for .NET)
OWIN (Open Web Interface for .NET)Folio3 Software
 
Voice and Video on the Web
Voice and Video on the WebVoice and Video on the Web
Voice and Video on the WebKundan Singh
 
Taking Control of Your Future: Own Your Service Platforms
Taking Control of Your Future: Own Your Service PlatformsTaking Control of Your Future: Own Your Service Platforms
Taking Control of Your Future: Own Your Service PlatformsAlan Quayle
 
RestThing: A Restful Web Service Infrastructure for Mash-up Physical and Web ...
RestThing: A Restful Web Service Infrastructure for Mash-up Physical and Web ...RestThing: A Restful Web Service Infrastructure for Mash-up Physical and Web ...
RestThing: A Restful Web Service Infrastructure for Mash-up Physical and Web ...Weijun Qin
 
Creating microservices architectures using node.js and Kubernetes
Creating microservices architectures using node.js and KubernetesCreating microservices architectures using node.js and Kubernetes
Creating microservices architectures using node.js and KubernetesPaul Goldbaum
 
Melbourne API Management Seminar
Melbourne API Management SeminarMelbourne API Management Seminar
Melbourne API Management SeminarCA API Management
 
Mike Taulty MIX10 Silverlight 4 Patterns Frameworks
Mike Taulty MIX10 Silverlight 4 Patterns FrameworksMike Taulty MIX10 Silverlight 4 Patterns Frameworks
Mike Taulty MIX10 Silverlight 4 Patterns Frameworksukdpe
 
KeyRock and Wilma - Openstack-based Identity Management in FIWARE
KeyRock and Wilma - Openstack-based Identity Management in FIWAREKeyRock and Wilma - Openstack-based Identity Management in FIWARE
KeyRock and Wilma - Openstack-based Identity Management in FIWAREÁlvaro Alonso González
 
Mobots and gloo at emadrid
Mobots and gloo at emadrid Mobots and gloo at emadrid
Mobots and gloo at emadrid Miguel Lizondo
 
2010-09-10 (uned) eMadrid MLizondo Deimos MoBots+Gloo
2010-09-10 (uned) eMadrid MLizondo Deimos MoBots+Gloo2010-09-10 (uned) eMadrid MLizondo Deimos MoBots+Gloo
2010-09-10 (uned) eMadrid MLizondo Deimos MoBots+GlooeMadrid network
 

Similaire à webinos APIs (20)

MoMoAthens Cross-Screen_Introduction to Webinos by Webinos
MoMoAthens Cross-Screen_Introduction to Webinos by WebinosMoMoAthens Cross-Screen_Introduction to Webinos by Webinos
MoMoAthens Cross-Screen_Introduction to Webinos by Webinos
 
LCU13: Discussion: ODP relationship to NFV
LCU13: Discussion: ODP relationship to NFVLCU13: Discussion: ODP relationship to NFV
LCU13: Discussion: ODP relationship to NFV
 
Single sign-on Across Mobile Applications from RSAConference
Single sign-on Across Mobile Applications from RSAConferenceSingle sign-on Across Mobile Applications from RSAConference
Single sign-on Across Mobile Applications from RSAConference
 
CF Summit 2016 - Review
CF Summit 2016 - ReviewCF Summit 2016 - Review
CF Summit 2016 - Review
 
OWIN (Open Web Interface for .NET)
OWIN (Open Web Interface for .NET)OWIN (Open Web Interface for .NET)
OWIN (Open Web Interface for .NET)
 
Voice and Video on the Web
Voice and Video on the WebVoice and Video on the Web
Voice and Video on the Web
 
Oauth2.0
Oauth2.0Oauth2.0
Oauth2.0
 
MoBots & Gloo
MoBots & GlooMoBots & Gloo
MoBots & Gloo
 
MoBots & Gloo
MoBots & GlooMoBots & Gloo
MoBots & Gloo
 
Taking Control of Your Future: Own Your Service Platforms
Taking Control of Your Future: Own Your Service PlatformsTaking Control of Your Future: Own Your Service Platforms
Taking Control of Your Future: Own Your Service Platforms
 
Api
ApiApi
Api
 
RestThing: A Restful Web Service Infrastructure for Mash-up Physical and Web ...
RestThing: A Restful Web Service Infrastructure for Mash-up Physical and Web ...RestThing: A Restful Web Service Infrastructure for Mash-up Physical and Web ...
RestThing: A Restful Web Service Infrastructure for Mash-up Physical and Web ...
 
Chapter2 application
Chapter2 applicationChapter2 application
Chapter2 application
 
Fiware, the future internet
Fiware, the future internetFiware, the future internet
Fiware, the future internet
 
Creating microservices architectures using node.js and Kubernetes
Creating microservices architectures using node.js and KubernetesCreating microservices architectures using node.js and Kubernetes
Creating microservices architectures using node.js and Kubernetes
 
Melbourne API Management Seminar
Melbourne API Management SeminarMelbourne API Management Seminar
Melbourne API Management Seminar
 
Mike Taulty MIX10 Silverlight 4 Patterns Frameworks
Mike Taulty MIX10 Silverlight 4 Patterns FrameworksMike Taulty MIX10 Silverlight 4 Patterns Frameworks
Mike Taulty MIX10 Silverlight 4 Patterns Frameworks
 
KeyRock and Wilma - Openstack-based Identity Management in FIWARE
KeyRock and Wilma - Openstack-based Identity Management in FIWAREKeyRock and Wilma - Openstack-based Identity Management in FIWARE
KeyRock and Wilma - Openstack-based Identity Management in FIWARE
 
Mobots and gloo at emadrid
Mobots and gloo at emadrid Mobots and gloo at emadrid
Mobots and gloo at emadrid
 
2010-09-10 (uned) eMadrid MLizondo Deimos MoBots+Gloo
2010-09-10 (uned) eMadrid MLizondo Deimos MoBots+Gloo2010-09-10 (uned) eMadrid MLizondo Deimos MoBots+Gloo
2010-09-10 (uned) eMadrid MLizondo Deimos MoBots+Gloo
 

Dernier

Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 

Dernier (20)

DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 

webinos APIs

  • 1. Webinos APIs Presentation for Webinos launch day June 19 2012 Claes Nilsson – Sony Mobile Rev PA3 2012-06-19 1
  • 2. Scope  Javascript APIs for web application developers – Provides access to HW and SW capabilities – Also access to capabilities on remote devices in Personal Zones Rev PA3 2012-06-19 2
  • 3. Inventing the wheel again? Rev PA3 2012-06-19 3
  • 4. API landscape What WG DAP Web apps Work with W3C standardization – provide input to W3C System apps Web RTC . Geolocation Use existing APIs when possible. If necessary make Webinos additions/ If needed specify new modifications Webinos APIs. WAC WebAPI Rev PA3 2012-06-19 4
  • 5. Phase 1 API specifications  Done June 30 2011  Link to phase 1 API specifications  Link to phase 1 API specifications based on category Rev PA3 2012-06-19 5
  • 6. New Webinos phase 1 API specifications  Webinos Core module  Webinos Discovery module  Webinos Sensor module  Webinos TV Control module  Webinos Vehicle module  Webinos NFC module  Webinos Payment module  Webinos Event Handling module  Webinos Attestation module (discontinued in phase 2)  Webinos Authentication module  Webinos Context module Rev PA3 2012-06-19 6
  • 7. New Webinos Phase 1 API specifications modified from existing W3C, WAC and Bondi specifications  Webinos Device Status Vocabulary - WAC 2.0 devicestatus module with added Webinos aspects  Webinos Messaging module - WAC 2.0 Messaging module with Webinos modifications  Webinos Widget module - Based on W3C Widget Interface  Webinos AppLauncher module - Based on BONDI 1.1  Webinos Userprofile module - Based on W3C DAP Contacts and Portablecontacts (discontinued in phase 2) Rev PA3 2012-06-19 7
  • 8. Unmodified referenced APIs from W3C or WAC  W3C Geolocation API  W3C DeviceOrientation Event  W3C Media Capture (discontinued in phase 2)  WAC 2.0 devicestatus module  WAC waikiki deviceinteraction module  W3C Contacts API  W3C Calendar API  W3C File API: Reader  W3C File API: Writer  W3C File API: Directories and System  W3C Gallery API Rev PA3 2012-06-19 8
  • 9. Access to capabilities on remote devices  Webinos Service Discovery API – Discover local or remote services without any previous knowledge of the service. API hides details of underlying low level discovery and communication protocols. – Discovered and selected service accessed through standard or Webinos APIs – New API needed as existing low level Service Discovery mechanisms such as Bluetooth service discovery, Universal Plug & Play, mDNS, DNS Service Discovery, etc are not exposed to web application developers. Rev PA3 2012-06-19 9
  • 10. Example - access to geolocation service on remote device Peter: PZP (Personal Zone Proxy) Peter: PZH (Personal Zone Hub)  TLS Security Policy Geo-location Contacts File 1. Application calls Webinos Service discovery API Peter: PZP to search geolocation service (Personal Zone Proxy) Geo-location 2. User selects mobile’s geolocation service Contacts 3. Application binds to selected service File 4. Application uses W3C Geolocation API to access geolocation service Rev PA3 2012-06-19 10
  • 11. Webinos APIs, phase 2  Due August 31 2012  Updating phase 1 API specifications based on: – Webinos Phase 1 implementation experiences – Progress in W3C standardization  New phase 2 APIs based on: – Additional use cases – Further Webinos development – Progress in W3C standardization Rev PA3 2012-06-19 11
  • 12. New proposed phase 2 APIs  Actuator API  Telephone API  Privacy aware Location and Proximity API  Tethering API  oAuth API  Sensor API – pulse meter sensor type  W3C Web Realtime communication (getUserMedia and PeerConnection APIs) Rev PA3 2012-06-19 12
  • 13. More?  Audience is encouraged to consider and propose more APIs that need to be supported! Rev PA3 2012-06-19 13
  • 14. Investigating Web Intents for Webinos • Service discovery/application launcher mechanism for web applications • ”Similar to Android Intents but for Web Applications”  Web Intents has strong momentum in W3C  Work in W3C on extending model to support local network, e.g. UPnP, services Rev PA3 2012-06-19 14
  • 15. Demo of Web Intents for local network service discovery and access  Video player application supporting video play on remote UPnP media rendered discovered through Web Intents Rev PA3 2012-06-19 15
  • 16. SUPPORTING SLIDES FOLLOW.. THE SLIDES CONTAIN TABLES OF ALL APIS WITH DESCRIPTION AND RATIONALE FOR SPECIFYING THE API OR REUSING AN EXISTING API. Rev PA3 2012-06-19 16
  • 17. Introduction Webinos API specifications are divided into the following categories:  Webinos base and generic objects/interfaces: Common interfaces for all Webinos APIs.  APIs for service discovery and remote API access: APIs to discover local and remote services.  HW Resources APIs: APIs allowing access to device HW resources such as GPS, camera, microphone, sensors, etc.  Application Data APIs: APIs allowing access to application capabilites such as contact items, calender information, messages, media files, etc.  Communication APIs: APIs allowing communication with other applications in the same or another device.  Application execution APIs: APIs allowing Webinos applications to launch other Webinos and native applications.  User profile and context APIs: APIs allowing access to user profile data and user context.  Security and Privacy APIs: APIs related to the security model for Webinos. Rev PA3 2012-06-19 17
  • 18. Access to capabilities on remote devices  Example: Access to Geolocation on remote device. // 1. Initiate a search query for a service of the type geolocation findHandle = window.webinos.discovery.findServices( {api:'http://www.w3.org/ns/api-perms/geolocation'}, {onFound:serviceFoundCB, onLost:serviceLostCB}); // 2. Bind to selected service serviceHandle = service.bind({onBind:bindCB}); // 3. Use Geolocation API to access service myLocationService.navigator.geolocation.getCurrentPosition(showMap); Rev PA3 2012-06-19 18
  • 19. APIs per category Webinos base and generic objects/interfaces API name Description Rationale Webinos Basically it defined the Webinos A specific Webinos namespace Core module namespace, i.e. the common interface needs to be defined in order to from which all Webinos APIs can be not pollute the global accessed. namespace. Rev PA3 2012-06-19 19
  • 20. APIs per category Discovery and access to remote services API name Description Rationale Webinos Provides web applications with an API New API needed as existing low Discovery to discover local or remote services level Service Discovery module without any previous knowledge of mechanisms such as Bluetooth the service. The API hides details of service discovery, Universal Plug underlying low level discovery and & Play, mDNS, DNS Service communication protocols. Discovery, etc are not exposed to web application developers. Rev PA3 2012-06-19 20
  • 21. APIs per category HW resource APIs API name Description Rationale Webinos Generic access to data from sensors in the New API needed as there Sensor device, connected to the device or in was no existing generic module another device. Webinos Service sensor API that fulfilled the Discovery API used to find and bind to Webinos requirements, e.g. sensors and is agnostic to underlying low on sensor discovery. level methods for sensor discovery and communication with sensors. Webinos TV Interface for TV control and management New API needed as existing Control including channel management and APIs did not fulfill Webinos module display of TV streams that can be plugged requirements on into a HTML5 VideoElement . embedding TV stream into a web page. Rev PA3 2012-06-19 21
  • 22. APIs per category HW resource APIs API name Description Rationale Webinos Provides access to specific vehicle New API needed as there was no Vehicle data including trip computer data, existing vehicle API for web module gears or park sensors. applications and it was not feasible Furthermore it offers methods for to extend an existing general interacting with the on-board system information/device status navigation system. API. Webinos NFC Supports read/write of identifier New API needed as there was no module and/or the contents of an NFC tag. existing NFC API for Web Applications, only Java or native APIs existed. Rev PA3 2012-06-19 22
  • 23. APIs per category HW resource APIs API name Description Rationale W3C Provides Web Applications with W3C API fulfills Webinos Geolocation geographical location. requirements. API W3C Device Provides Web Applicatiions with W3C API fulfills Webinos Orientation information about the device requirements. Event orientation and motion W3C Media Provides access to the audio, image and W3C Media Capture was Capture video capture capabilities of the device. selected in favor of the more Note, only useful for capturing media simple W3C HTML Media files, doesn't give access to live Capture API due to security streams. and remote access reasons. Rev PA3 2012-06-19 23
  • 24. APIs per category HW resource APIs API name Description Rationale WAC 2.0 API for retrieving device status information Corresponding W3C APIs devicestatus such as battery status, network not yet mature. module information and display properties. Webinos Vocabulary used by WAC 2.0 Device Status WAC 2.0 Device Status Device Status module. The WAC 2.0 devicestatus module fulfills Webinos Vocabulary vocabulary has been extended with requirements but some additional Webinos aspects. new aspects need to be added to the vocabulary. WAC device Provides a mechanism to interact with the Corresponding W3C API interaction end-user through features such as not yet mature. module device vibrator, device notifier, screen backlight and device Wallpaper. Rev PA3 2012-06-19 24
  • 25. APIs per category Application Data APIs API name Description Rationale Webinos A generic and simple shopping basket based New API needed as Payment API that can be mapped to different underlying none of the existing module payment systems to provide a system that can solutions provided a address payments on platform bound payment sufficiently generic solutions as well as open payment services. payment solution. Webinos Extension of WAC 2.0 Messaging module. WAC API selected due Messaging Supports sending messages through different to the availability of module technologies: SMS, MMS, Email and Instant receiving messages, Messages. Search for messages in the different which currently is folders. Subscribe for being notified upon missing in the W3C incoming message events. Webinos extension Messaging API. is support for Instant Messages. Rev PA3 2012-06-19 25
  • 26. APIs per category Application Data APIs API name Description Rationale W3C High-level API to read a user's unified address W3C API fulfills Contacts API book. Webinos requirements. W3C High-level API to read a user's calendaring W3C API fulfills Calendar API service. Webinos requirements. W3C File API An API for representing file objects in web W3C API fulfills applications, as well as programmatically Webinos requirements. selecting them and accessing their data. W3C File API: An API for writing to files from web W3C API fulfills Writer applications. Webinos requirements. Rev PA3 2012-06-19 26
  • 27. APIs per category Application Data APIs API name Description Rationale W3C File API: An API to navigate file system hierarchies. W3C API fulfills Directories Webinos requirements. and System W3C Gallery Provides access to media gallery located on the W3C API fulfills API device Webinos requirements. Rev PA3 2012-06-19 27
  • 28. APIs per category Communication APIs API name Description Rationale Webinos Provides means to exchange data in terms of A low level event Event events among addressable entities (e.g., handling API needed to Handling applications, services), either locally or send/receive/forward module remotely. arbitrary data among any entity, in particular being suited for developing higher level APIs relying on data exchange featuring Webinos overlay networking and discovery. Rev PA3 2012-06-19 28
  • 29. APIs per category Application Execution APIs API name Description Rationale Webinos Defines the common widget interface. It is W3C Widgets Widget is based on W3C Widget Specifications and speciifcations are module specifies webinos specific extensions, e.g. established for installable methods to put widgets in background and web applications but issue notifications to the user. Webinos needed to specifiy extensions to fulfill requirements. Webinos Modelled after BONDI v1.1 AppLauncher API Applications are AppLauncher and modified by Webinos. Allows activation identified differently in module of webinos applications installed locally on Webinos compared to the device. Bondi. Rev PA3 2012-06-19 29
  • 30. APIs per category Security and Privacy APIs API name Description Rationale Webinos Provides a secure method of querying the There was no existing API Attestation underlying device hardware to find out the providing this module identity and integrity of running software. functionality. Webinos Provides information to applications about There was no existing API Authentication the current authentication status of users, providing this module as well as allowing applications to request functionality. re-authentication. Rev PA3 2012-06-19 30
  • 31. APIs per category User Profile and Context APIs API name Description Rationale Webinos Offers access to information on the user. The W3C Contacts API Userprofile API is based on W3C Contacts API to gather do not provide social module basic information about the user (e.g. name, network attributes. nickname, gender, birthday, etc.). Webinos extends it with social network attributes from Portablecontacts. Rev PA3 2012-06-19 31
  • 32. APIs per category User Profile and Context APIs API name Description Rationale Webinos Defines high-level interfaces to obtain access to There was no Context a user's context data by two methods: existing API module • Executing a query against the context data providing this storage and retrieving context data through the functionality. query results. • Subscribing to receive real time context data updates as soon as a context related event happens. Rev PA3 2012-06-19 32

Notes de l'éditeur

  1. What is the WHATWG?The Web Hypertext Application Technology Working Group (WHATWG) is a growing community of people interested in evolving the Web. It focuses primarily on the development of HTML and APIs needed for Web applications.The WHATWG was founded by individuals of Apple, the Mozilla Foundation, and Opera Software in 2004, after a W3C workshop. Apple, Mozilla and Opera were becoming increasingly concerned about the W3C’s direction with XHTML, lack of interest in HTML and apparent disregard for the needs of real-world authors. So, in response, these organisations set out with a mission to address these concerns and the Web Hypertext Application Technology Working Group was born.W3CWeb Applications WGDevice APIs WGGeolocation WGSony Ericsson active in W3C and WebinosAdobe recentlyacquiredPhoneGap: http://m.techcrunch.com/2011/10/03/adobe-acquires-developer-of-html5-mobile-app-framework-phonegap-nitobi/