OpenSocial und Apache Shindig

  • 1,419 views
Uploaded on

Einführung in OpenSocial und Apache Shindig

Einführung in OpenSocial und Apache Shindig

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
1,419
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
32
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. International PHP Conference 17. Nov. 2009 | Karlsruhe Frank Ruske
  • 2. Frank Ruske ❙ >10 Jahre Erfahrung in der Softwareentwicklung ❙ Seit März 2009 Mitarbeiter bei Mayflower ❙ Autor für das PHP-Magazin OpenSocial © MAYFLOWER GmbH 2009 2
  • 3. Was ist das Objekt?
  • 4. Was ist das Ziel?
  • 5. Wie kann das Objekt geshared werden?
  • 6. 4.294.967.296 340.282.366.920.938.463.463.374.607.431.768.211.456 665.570.793.348.866.943.898.599 pro Quadratkilometer ca. 667.000.000.000.000.000 pro Quadratmillimeter
  • 7. Was ist die Belohnung für eine Anmeldung?
  • 8. Business Model?
  • 9. Wie können wir Objekte sozialisieren ohne ein weiteres Social Network zu erstellen?
  • 10. a common open set of API's for building social applications across multiple sites
  • 11. Gadget (XML) Clientseitig: JavaScript, HTML und CSS Container Serverseitig: RESTfull API, JSON RPC (optional)
  • 12. Grundfunktionen People, Friends, Activities, Persistence
  • 13. Benutzergruppen Viewer Owner Friend
  • 14. OpenSocial application „Hello world“ http://www.frank-ruske.com/ipc/hello_world.xml
  • 15. http://www.frank-ruske.com/ipc/show_friends_final.xml
  • 16. http://www.frank-ruske.com/ipc/activity.xml
  • 17. http://www.frank-ruske.com/ipc/save_data.xml
  • 18. gadgets.io.makeRequest()
  • 19. Apache Shindig Incubator seit November 2007
  • 20. http://shindig.local/gadgets/files/samplecontainer/samplecontainer.html http://shindig.local/gadgets/files/samplecontainer/examples/SocialHelloWorld.xml
  • 21. http://www.frank-ruske.com/ipc/activity.xml
  • 22. REST / PEOPLE /people/{guid}/@all Alle Leute mit Verbindungen zum User {guid} /people/{guid}/@friends Alle Freunde vom Benutzer {guid} /people/{guid}/@self Profil vom Benutzer {guid} /people/@me/@self Profil des Viewers
  • 23. Freunde von „Jane Doe“ http://shindig.local/social/rest/people/jane.doe/@friends
  • 24. REST / ACTIVITIES /activities/{guid}/@self Liste mit Aktivitäten des User {guid} /activities/{guid}/@friends Liste mit Aktivitäten der Freunde des User {guid}
  • 25. Aktivität von „John.doe“ http://shindig.local/social/rest/activities/john.doe/@self
  • 26. REST / PERSISTENCE /appdata/{guid}/@self/{appid} Alle App spezifischen Daten für den User {guid} /appdata/{guid}/@friends/{appid} Alle App spezifischen Daten für die Freunde des Users
  • 27. REST / Additional Parameters /format={format} Format der Rückgabe (ATOM, JSON, XML) /fields={field+} Die Felder die zurück gegeben werden sollen /startPage={startPage} Paginator /count={count} Paginator – Anzahl von Items
  • 28. Additional Parameters http://shindig.local/social/rest/activities/john.doe/@self?format=XML
  • 29. Container implementieren: 1.) PHP Interfaces implementieren: ActivityService, PersonService, AppDataService, MessagesService, AlbumService, MediaItemService 2.) Apache Shindig konfigurieren
  • 30. 1.) PHP Interfaces implementieren: class JsonDbOpensocialService implements ActivityService, PersonService, AppDataService, MessagesService, AlbumService, MediaItemService {...} http://svn.apache.org/repos/asf/incubator/shindig/trunk/php/src/social/sample/JsonDbOpensocialService.php
  • 31. 2.) Shindig konfigurieren http://svn.apache.org/repos/asf/incubator/shindig/trunk/php/config/container.php
  • 32. Partuza OpenSocial / Social Network Beispielseite Kommuniziert mit Apache Shindig Implementiert in PHP
  • 33. 1.) PHP Interfaces implementieren: class PartuzaService implements ActivityService, PersonService, AppDataService, MessagesService, AlbumService, MediaItemService {...} http://code.google.com/p/partuza/source/browse/trunk/Shindig/PartuzaService.php
  • 34. 2.) Shindig konfigurieren http://svn.apache.org/repos/asf/incubator/shindig/trunk/php/config/container.php
  • 35. Links und Referenzen unter www.frank-ruske.com/ipc09
  • 36. Vielen Dank für Ihre Aufmerksamkeit! Referent Frank Ruske Mayflower GmbH Pleichertorstr. 2 97070 Würzburg +49 (931) 35 9 65 - 0 frank.ruske@mayflower.de