Silverstripe-bliptv-connector is a project mainly written in PHP, it's free.
An External Content Connector to the BlipTV API
A simple readonly module for retrieving data from BlipTV
Marcus Nyeholt
<marcus (at) silverstripe (dot) com (dot) au>
SilverStripe 2.4.x External Content module
Install the module and dependencies
In your theme's editor.css file (that gets hooked into the TinyMCE editor) add the following classes
.blip480 {} .blip600 {}
Include the bliptv-connector/javascript/bliptv.js file to your theme (either via Page.php or <% require %> in the head of your Page.ss. This relies on jQuery, so that will need to be present too.
Create a BlipTV Connector in the External Content section of your CMS.
Edit some page content, and create a normal link. Make the target of the link an External Content item, and select a video pulled through the BlipTV connector created earlier.
Highlight the link, and select either the blip480 class, or blip600 class from the styles dropdown. This link will now be dynamically replaced by that javascript with the video player.
As copied from http://doc.silverstripe.org/doku.php?id=module:external-content-quickstart
This article assumes that you have installed the "FileSystem Connector" module (http://public.silverstripe.com.au/open/modules/filesystem-connector/), which provides access to content from a filesystem path.
==== Connecting to the content source ====
==== Accessing content on the frontend ====
==== Importing content ====
For information on the various parts of the API needed for writing connectors, please see the new connector tutorial at
http://doc.silverstripe.org/doku.php?id=module:external-content-newconnector
WebApiClient
A generic method for calling methods with parameters where the method is actually found on a remote URL, and the return type of that method call can be easily converted to an appropriate object. For example, imagine that there is a "login" method that can be called on a particular URL with some parameters, with an XML return type. A definition of this method would look like
'login' => array(
'url' => '/api/login',
'return' => 'xml',
'params' => array('u', 'pw'),
'cache' => false,
),
When the WebApiClient is created, it is passed a 'baseUrl' and a list of method definitions like the above. Then, it is simply a matter of calling
$apiClient->call('login', array('u' => 'user', 'pw' => 'pass'))
and getting a SimpleXML object as the return type. This mechanism is used by the AlfrescoSeaMistRepository, so refer to that module for further details.
If you're having trouble viewing pages when opening an ExternalContentPage directly via the backend, make sure there's not two ? characters in the URL. The SS backend assumes that a URL for an item won't have a URL in it, but at the moment URLs are constructed in this way.