I have been thinking about adding a feature to track the amount of time a video has been watched.

The idea would be for authenticated users, track how much of a video they have watched and save it back to the database. I have been thinking about how to do that properly. It seems like it would involve a few things.

1) A check to only fire for authenticated users
2) Implementation of cuepoints in the video to fire an event
3) A browser-side js event handler, that when fired upon hitting a cuepoint makes an ajax-y request to the Drupal site
4) The server side of the ajax, to receive the message from the browser about the cuepoint hit
5) Someplace to store the information in Drupal, where it can relate to the video watched as well as the user
6) Views support, so you can create a view of users and the videos they watched, or a view of videos and what users watched them

Does this sound reasonable?
Has anyone implemented this?
If not, how do you feel about that as a workflow? A big question would be #5 - where to store it? In a user's core profile? Or the node? Or a content profile if available?

Thoughts and feedback would be welcome. Thanks!

References:
http://flowplayer.org/forum/3/21123
http://flowplayer.org/documentation/events/cuepoints.html

Comments

primus’s picture

Did you ever figure out a way to do this? I am implementing something similar but have not found a decent solution. Thx!