?
Solved

REST Design

Posted on 2014-03-28
2
Medium Priority
?
240 Views
Last Modified: 2014-04-20
Consider this scenario

Sensor asset streaming ‘live’ media (media = ‘video’).
‘live’ media can be archived (client driven).  
Archived media can be searched (There’s metadata so keyword searches can be performed)
Archived media can be streamed (effectively this video on demand)


At issue, I’m struggling to define resource representations that make a clear distinction  between ‘live’ video and ‘video on demand’ (archived media being streamed)

 

1.     Get live media  
GET /livemedia
2.     Get live media based on Keyword  
GET /livemedia?q={keyword}  
3.     Get archived media    
GET /archivedmedia
4.     Get archived media based on Keyword,etc (timestamp)
 
GET /archivedmedia?q={keyword}}&ts={timestamp}  

5.     Stream archived media (hence video on demand) using uuid from response in 3 and 4 above…    
POST /mediaondemand/{uuid}  

The representation in 5) now introduced  
GET /mediaondemand  

An alternate representation considered is as follows eliminates the 'archived media' representation:

1.     Get live stream
GET /stream/live
2.     Get live stream based on Keyword  
GET /stream/live/{keyword}  
3.     Get on-demand stream    
GET /stream/on-demand
4.     Get on-demand stream based on Keyword,etc (timestamp)
 
GET /stream/on-demand/{keyword}&ts={timestamp}


5.     Stream archived media on-demand (hence video on demand) using uuid from response in 3 and 4 above…    
POST /stream/on-demand/{uuid}  

6.  Search for 'archived media'.
GET /search?={keyword}

Thoughts on the above?  I’m open to alternate composites and representations.
0
Comment
Question by:forums_mp
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
2 Comments
 
LVL 96

Accepted Solution

by:
Bob Learned earned 300 total points
ID: 39963731
You can drive yourself crazy if you try to get the perfect "distinction".  

How important is it to get the perfect combination?  

I like this section:

1.     Get live media  
GET /livemedia
2.     Get live media based on Keyword  
GET /livemedia?q={keyword}  
3.     Get archived media    
GET /archivedmedia
4.     Get archived media based on Keyword,etc (timestamp)
 
GET /archivedmedia?q={keyword}}&ts={timestamp}  
5.     Stream archived media (hence video on demand) using uuid from response in 3 and 4 above…    
POST /mediaondemand/{uuid}
0
 
LVL 53

Expert Comment

by:Scott Fell, EE MVE
ID: 39964197
+1 "You can drive yourself crazy if you try to get the perfect "distinction".
http:#a39963731 That looks good

<<no points>>
0

Featured Post

Video: Liquid Web Managed WordPress Comparisons

If you run run a WordPress, you understand the potential headaches you may face when updating your plugins and themes. Do you choose to update on the fly and risk taking down your site; or do you set up a staging, keep it in sync with your live site and use that to test updates?

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Online collaboration is quickly becoming embedded in the workplace, and its benefits are tangible. See what the current landscape looks like and what the future holds for collaboration tools and the future of work.
In order to have all security and back ups taken care of, WordPress users can sign up for services with WP Engine.
The purpose of this video is to demonstrate how to set up the WordPress backend so that each page automatically generates a Mailchimp signup form in the sidebar. This will be demonstrated using a Windows 8 PC. Tools Used are Photoshop, Awesome…
NetCrunch network monitor is a highly extensive platform for network monitoring and alert generation. In this video you'll see a live demo of NetCrunch with most notable features explained in a walk-through manner. You'll also get to know the philos…
Suggested Courses

752 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question