Station Collaboration: Media Manager API
The arrival of the Media Manager API is an exciting thing for the system – it brings with it a host of changes in how our online videos are organized and stored, which in turn brings the potential for vast improvements in how videos can be found and accessed. But, it also brought several headaches, chief among them that I would have to redo every piece of COVE integration currently existing on WETA’s websites.
Then I received an email from Thirteen’s Will Tam with the intriguing subject line, “If you like PHP and the Media Manager.” He’d written some code to provide a CMS agnostic connection with the Media Manager API and had put it up on GitHub for sharing and contributing.
That was the start of one of the best inter-station collaborations I’ve ever been a part of. Working with Will, TPT’s Augustus Mayo and Aaron Crosman from SCETV's web development partner Cyberwoven, we soon had handy method for accessing the Media Manager API that could be used as the foundation for simple or complex integrations.
For me and Aaron, that took the form of a suite of Drupal modules, which are now available for download from Drupal.org.
In addition to providing the basic connection to the API, the PBS Media Manager project includes the following sub-modules:
PBS Media Manager API Test Interface:
The Media Manager API can be a bit confusing – there’s a ton of data and figuring out how to access it isn’t always intuitive. This submodule provides a form-based interface that allows admins to run queries against the API and see what comes back.
PBS Media Manager Show:
Some stations like to build their Media Manager integrations around shows – or just want the shows available for searching, sorting, and filtering purposes. This submodule provides a download of all shows within Media Manager as Drupal entities.
PBS Media Manager Player:
This submodule provides a field to embed PBS partner players via the Media Manager API. Simply paste in a URL to a specific video on pbs.org (e.g., www.pbs.org/video/vietnam-war-extended-look ) and the module will do the rest.
PBS Media Manager Migrate:
Both SCETV and WETA are currently using the COVE API Player module on our Drupal sites. This submodule provides a mechanism to bulk migrate the data from COVE API Player fields to Media Manager Player fields. If your site uses some other method for storing and displaying COVE videos, this module might give you a starting point for creating your own migration path.
If your site uses Drupal, download the modules and give them a try! We’re completely open to collaboration and suggestions – take full advantage of the project’s issue queue to report bugs and make feature requests.
We have submitted the module for coverage by Drupal.org’s security advisory team and are at the point where we need the code to be reviewed by a human being. Drupal developers – we need your help! (Here are the instructions on how to review project applications.)
This project started with Will graciously sharing his code, but was only successful thanks to the combined efforts of WNET, WETA, SCETV and TPT. Since releasing the Drupal module, further assistance with finding and fixing a bug has come from the project’s issue queue on drupal.org, and we’ve received some initial feedback from WTTW that has given us some ideas for how to take the module forward. Working together, we’ve been able to create something as a community that is far better than what any of us would have been able to do on our own – let’s keep that momentum going!