SlideShare a Scribd company logo
MediaMosa and
Webservices
easy access to MediaMosa content
&Connect Communicate
Expertise seminar MediaMosa – 25 november 2010 - Herman van Dompseler
Back in 2007
SURFnet videoservices based on a Service
Oriented Architecture
 Current result:
◦ Frontend: SURFmedia + End User Applications
◦ Backend: MediaMosa
Big role for
webservices
Webservices are the only means of
communication between MediaMosa and
End User Applications
 That’s a good thing,
seperation of concerns
◦ Frontend is concerned
with presentation
◦ Backend is concerned
with data
How do they connect?
Trust relation
 End User Applications apply for a key to
use MediaMosa.
 End User Applications authenticate using
this key and DBUS authentication
 End User Applications have access to their
part of MediaMosa data
How do they
communicate?
 Webservice request
◦ REST url
 GET /asset (with a lot of parameters)
◦ http://www.mediamosa.org/node/218114
 Webservice response
◦ MediaMosa XML format
MediaMosa XML
Example: /asset
and it works
that’s why we are here today
And it works NOT like this
But…
1. End users do not communicate directly
with MediaMosa
◦ All communications is done using End User
Applications
2. There is no public entrance to MediaMosa
(entrance is based on the trust relation)
3. There is no standard XML response format
Now in 2010
Technology scouting ‘Open Webservices’
 Goal:
1. “to provide an open interface for sharing data
stored in an MediaMosa environment”
2. “to consume data from other open platforms and
to integrate this in MediaMosa”
 Side effects:
◦ New target audience: end users
◦ Public entrance with easy access
◦ Standard XML response
What is needed?
Open API
There is input and output
Content goes two ways
1. Use the Open API to retrieve data from
MediaMosa
◦ This is the easy part
2. Use the Open API to update data in
MediaMosa.
◦ This is more difficult
How to connect
to Open API?
Public Access
 The Open API is public with an url like:
◦ api.mediamosa.org
How to communicate
with Open API?
 Webservice request
◦ REST url
 GET /search with standaard parameters like
query, limit, order.
 Webservice response
◦ Standard XML format
 RSS
 Atom
 Json
Atom
Example: /search
MediaMosa XML vs. Atom
What’s the
difference?
How to connect
for updates?
The more difficult part
 Same public url:
◦ api.mediamosa.org
 Need user management
 Need Oauth for user authentication
 Need application key for tracking
application and rate limiting (not for
authorization)
How to communicate
for updates?
 Webservice request
◦ REST url
 POST /user/[ID]/upload for a ‘new’ entry.
 PUT /user/[ID]/upload/[ID2] for updating an entry
 DELETE /user/[ID]/upload/[ID2] for deleting an entry
◦ Content is in Atom format, called AtomPub.
 Webservice response
◦ Standard XML format
 Atom
Finally… demo’s
for end users & developers
http://api.mediamosa.surfnet.nl/
A couple of examples
Have you noticed this?
 The difference in XML response
◦ MediaMosa XML: http://api.mediamosa.surfnet.nl/displayXML
◦ Atom XML: http://api.mediamosa.surfnet.nl/search?query=html5
 Compare with YouTube XML
◦ http://gdata.youtube.com/feeds/api/videos?q=html5&max-results=10&v=2
 End users
◦ Use Atom feed in iGoogle
◦ http://www.google.nl/ig
 Developers
◦ Create mashups
◦ http://api.mediamosa.surfnet.nl/cockpit?query=html5
Next: Content in the cloud
Next: MediaMosa & Opencast
Wrap up
The current status
 Open Webservices give new functionality to
MediaMosa
◦ Public entrance
◦ Standard XML response
 Open webservices introduce new audiences:
◦ End users
◦ (Mashup) developers
 The Proof Of Concept shows that it can be done.
 It’s not here yet, but we keep you posted.
Is it rocket science?
We use open standards, like others do
 YouTube: Atom feed
◦ http://code.google.com/intl/nl/apis/youtube/2.0/developers_guide_protocol_und
erstanding_video_feeds.html
 Twitter: Oauth example
◦ http://dev.twitter.com/pages/auth
 75 more Video API’s
◦ http://www.programmableweb.com/apis/directory/1?apicat=Video
Easy access to MediaMosa Content
What’s in it for me?
 End user
◦ direct access to
MediaMosa content
 Developer
◦ easy integration of
MediaMosa content
in website, ELO, etc.
Questions ?
 Ask now.
 Or ask later.
◦ Herman van Dompseler
◦ herman@dompseler.nl

More Related Content

What's hot

web training
web trainingweb training
web training
sourabh4u
 
Process-aware Web Programming with Jolie
Process-aware Web Programming with JolieProcess-aware Web Programming with Jolie
Process-aware Web Programming with Jolie
IMDS2014
 
Develop ASP.Net Web Service
Develop ASP.Net Web Service Develop ASP.Net Web Service
Develop ASP.Net Web Service
Safaa Farouk
 
Web 1.0 and Web 2.0
Web 1.0 and Web 2.0Web 1.0 and Web 2.0
Web 1.0 and Web 2.0
Caroline Cerveny
 
LRT MoodleMootUK11 Unconf Presentation
LRT MoodleMootUK11 Unconf PresentationLRT MoodleMootUK11 Unconf Presentation
LRT MoodleMootUK11 Unconf Presentation
Steve Nisbet
 
Web services
Web servicesWeb services
Web services
Akshay Ballarpure
 
Mashing Up with User-centric Identity
Mashing Up with User-centric IdentityMashing Up with User-centric Identity
Mashing Up with User-centric Identity
kkjjkevin03
 
Beyond the Page
Beyond the PageBeyond the Page
Beyond the Page
gsmith
 
Web 1.0 vs web 2.0
Web 1.0 vs web 2.0Web 1.0 vs web 2.0
Web 1.0 vs web 2.0
Tricia Slechta
 
Joomla in a world of ubiquitous computing
Joomla in a world of ubiquitous computingJoomla in a world of ubiquitous computing
Joomla in a world of ubiquitous computing
Chris Davenport
 

What's hot (10)

web training
web trainingweb training
web training
 
Process-aware Web Programming with Jolie
Process-aware Web Programming with JolieProcess-aware Web Programming with Jolie
Process-aware Web Programming with Jolie
 
Develop ASP.Net Web Service
Develop ASP.Net Web Service Develop ASP.Net Web Service
Develop ASP.Net Web Service
 
Web 1.0 and Web 2.0
Web 1.0 and Web 2.0Web 1.0 and Web 2.0
Web 1.0 and Web 2.0
 
LRT MoodleMootUK11 Unconf Presentation
LRT MoodleMootUK11 Unconf PresentationLRT MoodleMootUK11 Unconf Presentation
LRT MoodleMootUK11 Unconf Presentation
 
Web services
Web servicesWeb services
Web services
 
Mashing Up with User-centric Identity
Mashing Up with User-centric IdentityMashing Up with User-centric Identity
Mashing Up with User-centric Identity
 
Beyond the Page
Beyond the PageBeyond the Page
Beyond the Page
 
Web 1.0 vs web 2.0
Web 1.0 vs web 2.0Web 1.0 vs web 2.0
Web 1.0 vs web 2.0
 
Joomla in a world of ubiquitous computing
Joomla in a world of ubiquitous computingJoomla in a world of ubiquitous computing
Joomla in a world of ubiquitous computing
 

Similar to MediaMosa and webservices

MediaMosa and webservices
MediaMosa and webservicesMediaMosa and webservices
MediaMosa and webservices
MediaMosa
 
Web services
Web servicesWeb services
Web services
Peter R. Egli
 
Mapping the RESTful Programming Model to the DDS Data-Centric Model
Mapping the RESTful Programming Model to the DDS Data-Centric ModelMapping the RESTful Programming Model to the DDS Data-Centric Model
Mapping the RESTful Programming Model to the DDS Data-Centric Model
Rick Warren
 
4163A - What is Web 2.0.ppt
4163A - What is Web 2.0.ppt4163A - What is Web 2.0.ppt
4163A - What is Web 2.0.ppt
Matthew Perrins
 
Sending the data already gathered from the client to the Server
Sending the data already gathered from the client to the ServerSending the data already gathered from the client to the Server
Sending the data already gathered from the client to the Server
hussam242
 
HMRS - Human Resource Management System (VB.Net)
HMRS - Human Resource Management System (VB.Net)HMRS - Human Resource Management System (VB.Net)
HMRS - Human Resource Management System (VB.Net)
Abhishek Raj
 
Web2.0-IFF
Web2.0-IFFWeb2.0-IFF
Web2.0-IFF
guest5991b
 
Web2.0-IFF
Web2.0-IFFWeb2.0-IFF
Web2.0-IFF
nidhi murarka
 
Share point 2013 new features
Share point 2013 new featuresShare point 2013 new features
Share point 2013 new features
jeanpaulva
 
Web2 0 Incredibles
Web2 0 IncrediblesWeb2 0 Incredibles
Web2 0 Incredibles
anjeshdubey
 
Restful web-services
Restful web-servicesRestful web-services
Restful web-services
rporwal
 
OpenAthens and the future of access and identity management
OpenAthens and the future of access and identity managementOpenAthens and the future of access and identity management
OpenAthens and the future of access and identity management
Eduserv Foundation
 
Impact of web life cycle activities & web services in modern era a review
Impact of web life cycle activities & web services in modern era  a reviewImpact of web life cycle activities & web services in modern era  a review
Impact of web life cycle activities & web services in modern era a review
Jyoti Parashar
 
Fanug - Pragmatic Windows Phone Developer
Fanug - Pragmatic Windows Phone DeveloperFanug - Pragmatic Windows Phone Developer
Fanug - Pragmatic Windows Phone Developer
Sam Basu
 
Chap 5 software as a service (saass)
Chap 5 software as a service (saass)Chap 5 software as a service (saass)
Chap 5 software as a service (saass)
Raj Sarode
 
Cloud Modernization and Data as a Service Option
Cloud Modernization and Data as a Service OptionCloud Modernization and Data as a Service Option
Cloud Modernization and Data as a Service Option
Denodo
 
#SPSToronto The SharePoint Framework and the Microsoft Graph on steroids with...
#SPSToronto The SharePoint Framework and the Microsoft Graph on steroids with...#SPSToronto The SharePoint Framework and the Microsoft Graph on steroids with...
#SPSToronto The SharePoint Framework and the Microsoft Graph on steroids with...
Vincent Biret
 
Connect ed2014 ad501_ibm worklight for ibm domino developers
Connect ed2014 ad501_ibm worklight for ibm domino developersConnect ed2014 ad501_ibm worklight for ibm domino developers
Connect ed2014 ad501_ibm worklight for ibm domino developers
a8us
 
International Journal of Engineering Inventions (IJEI)
International Journal of Engineering Inventions (IJEI)International Journal of Engineering Inventions (IJEI)
International Journal of Engineering Inventions (IJEI)
International Journal of Engineering Inventions www.ijeijournal.com
 
Students Club
Students ClubStudents Club
Students Club
IRJET Journal
 

Similar to MediaMosa and webservices (20)

MediaMosa and webservices
MediaMosa and webservicesMediaMosa and webservices
MediaMosa and webservices
 
Web services
Web servicesWeb services
Web services
 
Mapping the RESTful Programming Model to the DDS Data-Centric Model
Mapping the RESTful Programming Model to the DDS Data-Centric ModelMapping the RESTful Programming Model to the DDS Data-Centric Model
Mapping the RESTful Programming Model to the DDS Data-Centric Model
 
4163A - What is Web 2.0.ppt
4163A - What is Web 2.0.ppt4163A - What is Web 2.0.ppt
4163A - What is Web 2.0.ppt
 
Sending the data already gathered from the client to the Server
Sending the data already gathered from the client to the ServerSending the data already gathered from the client to the Server
Sending the data already gathered from the client to the Server
 
HMRS - Human Resource Management System (VB.Net)
HMRS - Human Resource Management System (VB.Net)HMRS - Human Resource Management System (VB.Net)
HMRS - Human Resource Management System (VB.Net)
 
Web2.0-IFF
Web2.0-IFFWeb2.0-IFF
Web2.0-IFF
 
Web2.0-IFF
Web2.0-IFFWeb2.0-IFF
Web2.0-IFF
 
Share point 2013 new features
Share point 2013 new featuresShare point 2013 new features
Share point 2013 new features
 
Web2 0 Incredibles
Web2 0 IncrediblesWeb2 0 Incredibles
Web2 0 Incredibles
 
Restful web-services
Restful web-servicesRestful web-services
Restful web-services
 
OpenAthens and the future of access and identity management
OpenAthens and the future of access and identity managementOpenAthens and the future of access and identity management
OpenAthens and the future of access and identity management
 
Impact of web life cycle activities & web services in modern era a review
Impact of web life cycle activities & web services in modern era  a reviewImpact of web life cycle activities & web services in modern era  a review
Impact of web life cycle activities & web services in modern era a review
 
Fanug - Pragmatic Windows Phone Developer
Fanug - Pragmatic Windows Phone DeveloperFanug - Pragmatic Windows Phone Developer
Fanug - Pragmatic Windows Phone Developer
 
Chap 5 software as a service (saass)
Chap 5 software as a service (saass)Chap 5 software as a service (saass)
Chap 5 software as a service (saass)
 
Cloud Modernization and Data as a Service Option
Cloud Modernization and Data as a Service OptionCloud Modernization and Data as a Service Option
Cloud Modernization and Data as a Service Option
 
#SPSToronto The SharePoint Framework and the Microsoft Graph on steroids with...
#SPSToronto The SharePoint Framework and the Microsoft Graph on steroids with...#SPSToronto The SharePoint Framework and the Microsoft Graph on steroids with...
#SPSToronto The SharePoint Framework and the Microsoft Graph on steroids with...
 
Connect ed2014 ad501_ibm worklight for ibm domino developers
Connect ed2014 ad501_ibm worklight for ibm domino developersConnect ed2014 ad501_ibm worklight for ibm domino developers
Connect ed2014 ad501_ibm worklight for ibm domino developers
 
International Journal of Engineering Inventions (IJEI)
International Journal of Engineering Inventions (IJEI)International Journal of Engineering Inventions (IJEI)
International Journal of Engineering Inventions (IJEI)
 
Students Club
Students ClubStudents Club
Students Club
 

Recently uploaded

Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
fredae14
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
MichaelKnudsen27
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
saastr
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
Intelisync
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
Brandon Minnick, MBA
 
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - HiikeSystem Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
Hiike
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
Ivanti
 
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdfNunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
flufftailshop
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
DanBrown980551
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
LucaBarbaro3
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Wask
 

Recently uploaded (20)

Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
 
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - HiikeSystem Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
 
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdfNunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
 

MediaMosa and webservices

  • 1. MediaMosa and Webservices easy access to MediaMosa content &Connect Communicate Expertise seminar MediaMosa – 25 november 2010 - Herman van Dompseler
  • 2. Back in 2007 SURFnet videoservices based on a Service Oriented Architecture  Current result: ◦ Frontend: SURFmedia + End User Applications ◦ Backend: MediaMosa
  • 3. Big role for webservices Webservices are the only means of communication between MediaMosa and End User Applications  That’s a good thing, seperation of concerns ◦ Frontend is concerned with presentation ◦ Backend is concerned with data
  • 4. How do they connect? Trust relation  End User Applications apply for a key to use MediaMosa.  End User Applications authenticate using this key and DBUS authentication  End User Applications have access to their part of MediaMosa data
  • 5. How do they communicate?  Webservice request ◦ REST url  GET /asset (with a lot of parameters) ◦ http://www.mediamosa.org/node/218114  Webservice response ◦ MediaMosa XML format
  • 7. and it works that’s why we are here today
  • 8. And it works NOT like this But… 1. End users do not communicate directly with MediaMosa ◦ All communications is done using End User Applications 2. There is no public entrance to MediaMosa (entrance is based on the trust relation) 3. There is no standard XML response format
  • 9. Now in 2010 Technology scouting ‘Open Webservices’  Goal: 1. “to provide an open interface for sharing data stored in an MediaMosa environment” 2. “to consume data from other open platforms and to integrate this in MediaMosa”  Side effects: ◦ New target audience: end users ◦ Public entrance with easy access ◦ Standard XML response
  • 11. There is input and output Content goes two ways 1. Use the Open API to retrieve data from MediaMosa ◦ This is the easy part 2. Use the Open API to update data in MediaMosa. ◦ This is more difficult
  • 12. How to connect to Open API? Public Access  The Open API is public with an url like: ◦ api.mediamosa.org
  • 13. How to communicate with Open API?  Webservice request ◦ REST url  GET /search with standaard parameters like query, limit, order.  Webservice response ◦ Standard XML format  RSS  Atom  Json
  • 15. MediaMosa XML vs. Atom What’s the difference?
  • 16. How to connect for updates? The more difficult part  Same public url: ◦ api.mediamosa.org  Need user management  Need Oauth for user authentication  Need application key for tracking application and rate limiting (not for authorization)
  • 17. How to communicate for updates?  Webservice request ◦ REST url  POST /user/[ID]/upload for a ‘new’ entry.  PUT /user/[ID]/upload/[ID2] for updating an entry  DELETE /user/[ID]/upload/[ID2] for deleting an entry ◦ Content is in Atom format, called AtomPub.  Webservice response ◦ Standard XML format  Atom
  • 18. Finally… demo’s for end users & developers http://api.mediamosa.surfnet.nl/
  • 19. A couple of examples Have you noticed this?  The difference in XML response ◦ MediaMosa XML: http://api.mediamosa.surfnet.nl/displayXML ◦ Atom XML: http://api.mediamosa.surfnet.nl/search?query=html5  Compare with YouTube XML ◦ http://gdata.youtube.com/feeds/api/videos?q=html5&max-results=10&v=2  End users ◦ Use Atom feed in iGoogle ◦ http://www.google.nl/ig  Developers ◦ Create mashups ◦ http://api.mediamosa.surfnet.nl/cockpit?query=html5
  • 20. Next: Content in the cloud
  • 21. Next: MediaMosa & Opencast
  • 22. Wrap up The current status  Open Webservices give new functionality to MediaMosa ◦ Public entrance ◦ Standard XML response  Open webservices introduce new audiences: ◦ End users ◦ (Mashup) developers  The Proof Of Concept shows that it can be done.  It’s not here yet, but we keep you posted.
  • 23. Is it rocket science? We use open standards, like others do  YouTube: Atom feed ◦ http://code.google.com/intl/nl/apis/youtube/2.0/developers_guide_protocol_und erstanding_video_feeds.html  Twitter: Oauth example ◦ http://dev.twitter.com/pages/auth  75 more Video API’s ◦ http://www.programmableweb.com/apis/directory/1?apicat=Video
  • 24. Easy access to MediaMosa Content What’s in it for me?  End user ◦ direct access to MediaMosa content  Developer ◦ easy integration of MediaMosa content in website, ELO, etc.
  • 25. Questions ?  Ask now.  Or ask later. ◦ Herman van Dompseler ◦ herman@dompseler.nl