Upgrade to Pro — share decks privately, control downloads, hide ads and more …

oEmbed - hassle-free embedding of third party media content

oEmbed - hassle-free embedding of third party media content

talk at YAPC::EU 2013 in Kiev

5e8e44a4f6632772c47925006aff31d9?s=128

Kerstin Puschke

August 14, 2013
Tweet

Transcript

  1. oEmbed hassle-free embedding of third party media content Kerstin Puschke,

    YAPC::Europe 2013
  2. Who am I Contact •  http://www.kpuschke.eu •  twitter: @titanoboa42 • 

    https://www.xing.com/profile/ Kerstin_Puschke software engineer at XING Hamburg •  xing.com social network for business professionals •  about 13 million users •  debian, perl, javascript, ruby on rails, mysql, redis, riak, . . . We’re hiring! http://corporate.xing.com/ english/company/careers-at-xing/ 13.08.13 // oEmbed // Kerstin Puschke // YAPC::Europe 2013 2
  3. Boring links 3 The world’s most boring website Screenshot 2013-07-19

    http://www.worldsmostboringwebsite.com/gallery/ 13.08.13 // oEmbed // Kerstin Puschke // YAPC::Europe 2013
  4. Embedded Content 4 13.08.13 // oEmbed // Kerstin Puschke //

    YAPC::Europe 2013
  5. Implementing Automated Embedding Automatically turn URLs into embedded representation • 

    screenscraping •  provider-specific APIs 13.08.13 // oEmbed // Kerstin Puschke // YAPC::Europe 2013 5
  6. oEmbed open embed format open web standard for third-party media

    embedding 13.08.13 // oEmbed // Kerstin Puschke // YAPC::Europe 2013 6
  7. oEmbed providers 13.08.13 // oEmbed // Kerstin Puschke // YAPC::Europe

    2013 7
  8. oEmbed request 13.08.13 // oEmbed // Kerstin Puschke // YAPC::Europe

    2013 8 http://www.youtube.com/oembed? url=http%3A//youtube.com/watch%3Fv3Dzwk1KvnZxGw& format=json& maxwidth=400&maxheight=200 •  not RESTful •  needs to know API endpoint •  or use discovery – request original url – find oEmbed request in html header – follow up with oEmbed request
  9. oEmbed response - video 13.08.13 // oEmbed // Kerstin Puschke

    // YAPC::Europe 2013 9 youtube
  10. oEmbed response - photo 13.08.13 // oEmbed // Kerstin Puschke

    // YAPC::Europe 2013 10 flickr
  11. oEmbed response - link 13.08.13 // oEmbed // Kerstin Puschke

    // YAPC::Europe 2013 11 flickr – requested with strict size limits
  12. oEmbed gateways expose content from different providers via one endpoint

    •  embed.ly – WebService::Embedly •  oohembed – now part of embed.ly •  reEmbed.me •  noembed.com 13.08.13 // oEmbed // Kerstin Puschke // YAPC::Europe 2013 12
  13. noembed Gateway •  perl – plack •  free software •  adds

    html, title, url, and provider_name •  jsonp 13.08.13 // oEmbed // Kerstin Puschke // YAPC::Europe 2013 13
  14. Implement a Consumer Build it with •  Web::oEmbed •  from

    scratch Think of •  different types •  cross site scripting •  ssl 13.08.13 // oEmbed // Kerstin Puschke // YAPC::Europe 2013 14
  15. Conclusion oEmbed •  specs could use a rebrush •  easy

    to implement •  low maintenance effort •  widely adopted don’t display boring links 13.08.13 // oEmbed // Kerstin Puschke // YAPC::Europe 2013 15 Photo: diaper http://www.flickr.com/photos/diaper/9064542270 don’t take this exit
  16. The professional network www.xing.com Thank you for your attention!

  17. Who am I Contact •  http://www.kpuschke.eu •  twitter: @titanoboa42 • 

    https://www.xing.com/profile/ Kerstin_Puschke software engineer at XING Hamburg •  xing.com social network for business professionals •  about 13 million users •  debian, perl, javascript, ruby on rails, mysql, redis, riak, . . . We’re hiring! http://corporate.xing.com/ english/company/careers-at-xing/ 13.08.13 // oEmbed // Kerstin Puschke // YAPC::Europe 2013 17