SlideShare uma empresa Scribd logo
1 de 33
Baixar para ler offline
Creating OpenSocial Gadgets
                             Bastian Hofmann




Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     Agenda

      Part 1: Theory
         What is a Gadget?
         What is OpenSocial?
         Privacy at VZ-Netzwerke
         OpenSocial Services
         OpenSocial without Gadgets - The Rest API

       Part 2: Practical
          Let‘s write our own Gadget




                                                                        2


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     What is a Gadget?

      XML file with HTML and JavaScript (and
       CSS, Images, Flash, ...)

      Application based on the Google
       Gadgets specification

      Can be included on various platforms,
       which support this specification




                                                                        3


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     How to include gadgets?

      The Gadget Server
         renders the Gadget XML
         provides the JavaScript API
         provides the REST (or RPC) API

      Rendered result is included through an
       <iframe> into the parent page (Container)




                                                                        4


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     Gadget Features

      Gadget specification includes a
       rich JavaScript API with a
       multitude of features
          preferences
          views
          dynamic-height
          flash
          io
          ...

      Extendabel




                                                                        5


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     One Gadget - Different Views

      Profile
      Canvas
      Preview
      Group
      Popup
      Integration




                                                                        6


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     And what is OpenSocial?

      Extension of the Gadget JavaScript API

      an open standard

      enables gadgets to access the social graph of users




                                                                        7


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     The OpenStack




                                                                        8


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     Viewer != Owner or Viewer == Owner and Friends




                                                                        9


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     What about privacy? Example of our solution.

             Visibility
                Visibility on a user‘s profile page can be changed individually for
                  friends or other people.

             Access
                Access to user data is handled through a special vcard

             Communication
                Gadget needs user permissions for communication (Messages, Activity
                 Stream, Notifications, ...)




                                                                                       10


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     VCards

      Wile installing a gadget, the user has
       to assign an existing or new vcard to
       it

      Data on vcard can differ to the user‘s
       profile

      Gadget has only access to data of
       users which have installed the gadget




                                                                        11


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     Services




                                                                        12


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     People Service

      Access to social graph
       (Users and their friends)

      At VZ: all vcards of users who have installed the
       gadget accessable

      At VZ: not writable

      API offers sorting and filtering abilities

      Identification with special OpenSocial ID:
       www.studivz.net:K0UCbAZQeQsyHC467mx3Cw



                                                                        13


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     AppData Service

      Persistent Key - Value Store

      stored by gadget

      In practice most gadgets store data in their
       own backend




                                                                        14


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     ... and even more services

      numerous additional services are specified by the OpenSocial standard or by
       extensions implemented in one or more big containers:

                Activities
                Messages
                Payment
                Photos




                                                                                     15


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     Server to Server - The OpenSocial REST API

      All JavaScript OpenSocial APIs are available in the REST (and RPC) API as well

      Access with
         Two-legged OAuth (in the context of a gadget)
         or Three-legged OAuth with Consumer Key and Secret




                                                                                        16


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     And now the fun part ...

      Let‘s write our own gadget in six steps:

                Hello World, Metadata and Views
                Static Content and CDN Access
                It‘s getting social: People Service
                Be safe while saving: AppData Service
                A bit more complex: Accessing your own backend with OAuth
                Spread it: Viral proliferation with invites




                                                                             17


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




                                                             DEMO




                                                                        18


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     What‘s on the roadmap 2010?




                                                                        19


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     What‘s on the roadmap 2010?

      OpenSocial 0.9




                                                                        20


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     What‘s on the roadmap 2010?

      OpenSocial 0.9
      Activity Service




                                                                        21


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     What‘s on the roadmap 2010?

      OpenSocial 0.9
      Activity Service
      Messages Service




                                                                        22


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     What‘s on the roadmap 2010?

      OpenSocial 0.9
      Activity Service
      Messages Service
      Photos Service




                                                                        23


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     What‘s on the roadmap 2010?

      OpenSocial 0.9
      Activity Service
      Messages Service
      Photos Service
      Payment API




                                                                        24


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     What‘s on the roadmap 2010?

      OpenSocial 0.9
      Activity Service
      Messages Service
      Photos Service
      Payment API
      Advertising API




                                                                        25


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     What‘s on the roadmap 2010?

      OpenSocial 0.9
      Activity Service
      Messages Service
      Photos Service
      Payment API
      Advertising API
      Sandbox improvements




                                                                        26


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     What‘s on the roadmap 2010?

      OpenSocial 0.9
      Activity Service
      Messages Service
      Photos Service
      Payment API
      Advertising API
      Sandbox improvements
      OpenSocial REST API in Sandbox




                                                                        27


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     What‘s on the roadmap 2010?

      OpenSocial 0.9
      Activity Service
      Messages Service
      Photos Service
      Payment API
      Advertising API
      Sandbox improvements
      OpenSocial REST API in Sandbox
      OpenID




                                                                        28


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




                                                                        29


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




                                                                        30


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     And at VZ-Netzwerke?


                                                                        43 Apps in Gallery, ca. 90 Apps live
    Launch Dec. 2009


                                                                5.37 Million Installations



                  250.000 Unique Users at Canvas Views



                                                                             16.1 Million Users


                                                                                                               31


Mittwoch, 10. Februar 2010
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     Further information ...

      http://www.opensocial.org

      Our blog: http://developer.studivz.net

      Our wiki: http://developer.studivz.net/wiki

      Become a developer and get access to our sandbox:
       http://www.studivz.net/Developer and http://www.meinvz.net/Developer

      Or implement an OpenSocial container yourself:
       http://incubator.apache.org/shindig/



                                                                              32


Mittwoch, 10. Februar 2010
Thank you!


     Contact:
     Bastian Hofmann
     bhofmann@vz.net
     http://www.studivz.net/bastian




Mittwoch, 10. Februar 2010

Mais conteúdo relacionado

Semelhante a Creating OpenSocial Apps

Technical Background of VZ-ID
Technical Background of VZ-IDTechnical Background of VZ-ID
Technical Background of VZ-ID
Bastian Hofmann
 
WCF Data Services - Bandung Charity Event - 2010
WCF Data Services  - Bandung Charity Event - 2010WCF Data Services  - Bandung Charity Event - 2010
WCF Data Services - Bandung Charity Event - 2010
Andri Yadi
 

Semelhante a Creating OpenSocial Apps (20)

OpenSocial - Past, Present, Future
OpenSocial - Past, Present, FutureOpenSocial - Past, Present, Future
OpenSocial - Past, Present, Future
 
Antonio Pintus- TouchTheWeb 2010
Antonio Pintus- TouchTheWeb 2010Antonio Pintus- TouchTheWeb 2010
Antonio Pintus- TouchTheWeb 2010
 
Connecting Smart Things through Web services Orchestrations
Connecting Smart Things through Web services OrchestrationsConnecting Smart Things through Web services Orchestrations
Connecting Smart Things through Web services Orchestrations
 
Technical Background of VZ-ID
Technical Background of VZ-IDTechnical Background of VZ-ID
Technical Background of VZ-ID
 
WoT.City and IoT Protocols Movement @ Taipei, Taiwan
WoT.City and IoT Protocols Movement @ Taipei, TaiwanWoT.City and IoT Protocols Movement @ Taipei, Taiwan
WoT.City and IoT Protocols Movement @ Taipei, Taiwan
 
IoTivity Connects RVI from GENIVI's Develoment Platform to Tizen devices
IoTivity Connects RVI from GENIVI's Develoment Platform to Tizen devicesIoTivity Connects RVI from GENIVI's Develoment Platform to Tizen devices
IoTivity Connects RVI from GENIVI's Develoment Platform to Tizen devices
 
IoT and Maker Crossover (IMCO) Conference 2015
IoT and Maker Crossover (IMCO) Conference 2015IoT and Maker Crossover (IMCO) Conference 2015
IoT and Maker Crossover (IMCO) Conference 2015
 
WCF Data Services - Bandung Charity Event - 2010
WCF Data Services  - Bandung Charity Event - 2010WCF Data Services  - Bandung Charity Event - 2010
WCF Data Services - Bandung Charity Event - 2010
 
6-10-2010-PEMCI 2010
6-10-2010-PEMCI 20106-10-2010-PEMCI 2010
6-10-2010-PEMCI 2010
 
Windows Live Social Media
Windows Live Social MediaWindows Live Social Media
Windows Live Social Media
 
Open source softwares and its applications
Open source softwares and its applicationsOpen source softwares and its applications
Open source softwares and its applications
 
PLNOG 5: Adam Jacob - Choose your own PLNOGventure
PLNOG 5: Adam Jacob - Choose your own PLNOGventurePLNOG 5: Adam Jacob - Choose your own PLNOGventure
PLNOG 5: Adam Jacob - Choose your own PLNOGventure
 
Chef in the cloud [dbccg]
Chef in the cloud [dbccg]Chef in the cloud [dbccg]
Chef in the cloud [dbccg]
 
3. cloudcamp lt
3. cloudcamp lt3. cloudcamp lt
3. cloudcamp lt
 
Operations as Code
Operations as CodeOperations as Code
Operations as Code
 
Onesocialweb: a platform to build mobile social applications
Onesocialweb: a platform to build mobile social applicationsOnesocialweb: a platform to build mobile social applications
Onesocialweb: a platform to build mobile social applications
 
Oper
OperOper
Oper
 
Open IoT Cloud Architecture, Web of Things, Shenzhen, China.
Open IoT Cloud Architecture, Web of Things, Shenzhen, China.Open IoT Cloud Architecture, Web of Things, Shenzhen, China.
Open IoT Cloud Architecture, Web of Things, Shenzhen, China.
 
soft-shake.ch - Vaadin - Rich Web Applications in Server-side Java without Pl...
soft-shake.ch - Vaadin - Rich Web Applications in Server-side Java without Pl...soft-shake.ch - Vaadin - Rich Web Applications in Server-side Java without Pl...
soft-shake.ch - Vaadin - Rich Web Applications in Server-side Java without Pl...
 
mozilla-things-fosdem-2019
mozilla-things-fosdem-2019mozilla-things-fosdem-2019
mozilla-things-fosdem-2019
 

Mais de Bastian Hofmann

Crossing the Boundaries of Web Applications with OpenSocial
Crossing the Boundaries of Web Applications with OpenSocialCrossing the Boundaries of Web Applications with OpenSocial
Crossing the Boundaries of Web Applications with OpenSocial
Bastian Hofmann
 
The Identity Problem of the Web and how to solve it
The Identity Problem of the Web and how to solve itThe Identity Problem of the Web and how to solve it
The Identity Problem of the Web and how to solve it
Bastian Hofmann
 
Crossing the Boundaries of Web Applications with OpenSocial
Crossing the Boundaries of Web Applications with OpenSocialCrossing the Boundaries of Web Applications with OpenSocial
Crossing the Boundaries of Web Applications with OpenSocial
Bastian Hofmann
 
Distributed Social Networking
Distributed Social NetworkingDistributed Social Networking
Distributed Social Networking
Bastian Hofmann
 
Advanced Capabilities of OpenSocial Apps
Advanced Capabilities of OpenSocial AppsAdvanced Capabilities of OpenSocial Apps
Advanced Capabilities of OpenSocial Apps
Bastian Hofmann
 
How to make your social games successfull
How to make your social games successfullHow to make your social games successfull
How to make your social games successfull
Bastian Hofmann
 

Mais de Bastian Hofmann (20)

Introduction to rg\injection
Introduction to rg\injectionIntroduction to rg\injection
Introduction to rg\injection
 
IGNITE OpenSocial 2.0 - Viva La OpenAppRevolution!
IGNITE OpenSocial 2.0 - Viva La OpenAppRevolution! IGNITE OpenSocial 2.0 - Viva La OpenAppRevolution!
IGNITE OpenSocial 2.0 - Viva La OpenAppRevolution!
 
How to create OpenSocial Apps in 45 minutes
How to create OpenSocial Apps in 45 minutesHow to create OpenSocial Apps in 45 minutes
How to create OpenSocial Apps in 45 minutes
 
Crossing the Boundaries of Web Applications with OpenSocial
Crossing the Boundaries of Web Applications with OpenSocialCrossing the Boundaries of Web Applications with OpenSocial
Crossing the Boundaries of Web Applications with OpenSocial
 
The Identity Problem of the Web and how to solve it
The Identity Problem of the Web and how to solve itThe Identity Problem of the Web and how to solve it
The Identity Problem of the Web and how to solve it
 
Mashing up JavaScript
Mashing up JavaScriptMashing up JavaScript
Mashing up JavaScript
 
Crossing the Boundaries of Web Applications with OpenSocial
Crossing the Boundaries of Web Applications with OpenSocialCrossing the Boundaries of Web Applications with OpenSocial
Crossing the Boundaries of Web Applications with OpenSocial
 
Crossing the Boundaries of Web Applications with OpenSocial
Crossing the Boundaries of Web Applications with OpenSocialCrossing the Boundaries of Web Applications with OpenSocial
Crossing the Boundaries of Web Applications with OpenSocial
 
Distributed Identities with OpenID
Distributed Identities with OpenIDDistributed Identities with OpenID
Distributed Identities with OpenID
 
Opening up the Social Web - Standards that are bridging the Islands
Opening up the Social Web - Standards that are bridging the IslandsOpening up the Social Web - Standards that are bridging the Islands
Opening up the Social Web - Standards that are bridging the Islands
 
Mashing up JavaScript – Advanced Techniques for modern Web Apps
Mashing up JavaScript – Advanced Techniques for modern Web AppsMashing up JavaScript – Advanced Techniques for modern Web Apps
Mashing up JavaScript – Advanced Techniques for modern Web Apps
 
Mashing up JavaScript
Mashing up JavaScriptMashing up JavaScript
Mashing up JavaScript
 
Creating social games for millions of users
Creating social games for millions of usersCreating social games for millions of users
Creating social games for millions of users
 
How to create social apps for millions of users
How to create social apps for millions of users How to create social apps for millions of users
How to create social apps for millions of users
 
Distributed Identities with OpenID
Distributed Identities with OpenIDDistributed Identities with OpenID
Distributed Identities with OpenID
 
Distributed Social Networking
Distributed Social NetworkingDistributed Social Networking
Distributed Social Networking
 
Advanced Capabilities of OpenSocial Apps
Advanced Capabilities of OpenSocial AppsAdvanced Capabilities of OpenSocial Apps
Advanced Capabilities of OpenSocial Apps
 
How to make your social games successfull
How to make your social games successfullHow to make your social games successfull
How to make your social games successfull
 
Opening up the Social Web - Standards that are bridging the Islands
Opening up the Social Web - Standards that are bridging the Islands Opening up the Social Web - Standards that are bridging the Islands
Opening up the Social Web - Standards that are bridging the Islands
 
Distributed Identities with OpenID
Distributed Identities with OpenIDDistributed Identities with OpenID
Distributed Identities with OpenID
 

Último

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Último (20)

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 

Creating OpenSocial Apps

  • 1. Creating OpenSocial Gadgets Bastian Hofmann Mittwoch, 10. Februar 2010
  • 2. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net Agenda  Part 1: Theory  What is a Gadget?  What is OpenSocial?  Privacy at VZ-Netzwerke  OpenSocial Services  OpenSocial without Gadgets - The Rest API  Part 2: Practical  Let‘s write our own Gadget 2 Mittwoch, 10. Februar 2010
  • 3. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net What is a Gadget?  XML file with HTML and JavaScript (and CSS, Images, Flash, ...)  Application based on the Google Gadgets specification  Can be included on various platforms, which support this specification 3 Mittwoch, 10. Februar 2010
  • 4. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net How to include gadgets?  The Gadget Server  renders the Gadget XML  provides the JavaScript API  provides the REST (or RPC) API  Rendered result is included through an <iframe> into the parent page (Container) 4 Mittwoch, 10. Februar 2010
  • 5. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net Gadget Features  Gadget specification includes a rich JavaScript API with a multitude of features  preferences  views  dynamic-height  flash  io  ...  Extendabel 5 Mittwoch, 10. Februar 2010
  • 6. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net One Gadget - Different Views  Profile  Canvas  Preview  Group  Popup  Integration 6 Mittwoch, 10. Februar 2010
  • 7. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net And what is OpenSocial?  Extension of the Gadget JavaScript API  an open standard  enables gadgets to access the social graph of users 7 Mittwoch, 10. Februar 2010
  • 8. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net The OpenStack 8 Mittwoch, 10. Februar 2010
  • 9. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net Viewer != Owner or Viewer == Owner and Friends 9 Mittwoch, 10. Februar 2010
  • 10. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net What about privacy? Example of our solution.  Visibility  Visibility on a user‘s profile page can be changed individually for friends or other people.  Access  Access to user data is handled through a special vcard  Communication  Gadget needs user permissions for communication (Messages, Activity Stream, Notifications, ...) 10 Mittwoch, 10. Februar 2010
  • 11. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net VCards  Wile installing a gadget, the user has to assign an existing or new vcard to it  Data on vcard can differ to the user‘s profile  Gadget has only access to data of users which have installed the gadget 11 Mittwoch, 10. Februar 2010
  • 12. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net Services 12 Mittwoch, 10. Februar 2010
  • 13. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net People Service  Access to social graph (Users and their friends)  At VZ: all vcards of users who have installed the gadget accessable  At VZ: not writable  API offers sorting and filtering abilities  Identification with special OpenSocial ID: www.studivz.net:K0UCbAZQeQsyHC467mx3Cw 13 Mittwoch, 10. Februar 2010
  • 14. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net AppData Service  Persistent Key - Value Store  stored by gadget  In practice most gadgets store data in their own backend 14 Mittwoch, 10. Februar 2010
  • 15. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net ... and even more services  numerous additional services are specified by the OpenSocial standard or by extensions implemented in one or more big containers:  Activities  Messages  Payment  Photos 15 Mittwoch, 10. Februar 2010
  • 16. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net Server to Server - The OpenSocial REST API  All JavaScript OpenSocial APIs are available in the REST (and RPC) API as well  Access with  Two-legged OAuth (in the context of a gadget)  or Three-legged OAuth with Consumer Key and Secret 16 Mittwoch, 10. Februar 2010
  • 17. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net And now the fun part ...  Let‘s write our own gadget in six steps:  Hello World, Metadata and Views  Static Content and CDN Access  It‘s getting social: People Service  Be safe while saving: AppData Service  A bit more complex: Accessing your own backend with OAuth  Spread it: Viral proliferation with invites 17 Mittwoch, 10. Februar 2010
  • 18. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net DEMO 18 Mittwoch, 10. Februar 2010
  • 19. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net What‘s on the roadmap 2010? 19 Mittwoch, 10. Februar 2010
  • 20. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net What‘s on the roadmap 2010?  OpenSocial 0.9 20 Mittwoch, 10. Februar 2010
  • 21. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net What‘s on the roadmap 2010?  OpenSocial 0.9  Activity Service 21 Mittwoch, 10. Februar 2010
  • 22. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net What‘s on the roadmap 2010?  OpenSocial 0.9  Activity Service  Messages Service 22 Mittwoch, 10. Februar 2010
  • 23. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net What‘s on the roadmap 2010?  OpenSocial 0.9  Activity Service  Messages Service  Photos Service 23 Mittwoch, 10. Februar 2010
  • 24. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net What‘s on the roadmap 2010?  OpenSocial 0.9  Activity Service  Messages Service  Photos Service  Payment API 24 Mittwoch, 10. Februar 2010
  • 25. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net What‘s on the roadmap 2010?  OpenSocial 0.9  Activity Service  Messages Service  Photos Service  Payment API  Advertising API 25 Mittwoch, 10. Februar 2010
  • 26. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net What‘s on the roadmap 2010?  OpenSocial 0.9  Activity Service  Messages Service  Photos Service  Payment API  Advertising API  Sandbox improvements 26 Mittwoch, 10. Februar 2010
  • 27. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net What‘s on the roadmap 2010?  OpenSocial 0.9  Activity Service  Messages Service  Photos Service  Payment API  Advertising API  Sandbox improvements  OpenSocial REST API in Sandbox 27 Mittwoch, 10. Februar 2010
  • 28. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net What‘s on the roadmap 2010?  OpenSocial 0.9  Activity Service  Messages Service  Photos Service  Payment API  Advertising API  Sandbox improvements  OpenSocial REST API in Sandbox  OpenID 28 Mittwoch, 10. Februar 2010
  • 29. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net 29 Mittwoch, 10. Februar 2010
  • 30. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net 30 Mittwoch, 10. Februar 2010
  • 31. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net And at VZ-Netzwerke? 43 Apps in Gallery, ca. 90 Apps live Launch Dec. 2009 5.37 Million Installations 250.000 Unique Users at Canvas Views 16.1 Million Users 31 Mittwoch, 10. Februar 2010
  • 32. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net Further information ...  http://www.opensocial.org  Our blog: http://developer.studivz.net  Our wiki: http://developer.studivz.net/wiki  Become a developer and get access to our sandbox: http://www.studivz.net/Developer and http://www.meinvz.net/Developer  Or implement an OpenSocial container yourself: http://incubator.apache.org/shindig/ 32 Mittwoch, 10. Februar 2010
  • 33. Thank you! Contact: Bastian Hofmann bhofmann@vz.net http://www.studivz.net/bastian Mittwoch, 10. Februar 2010