Plugin Distribution

There's a few options for player plugin distribution with the new version of the player:

  • Centralized, maintained repository
  • Centralized unmaintained repository
  • All plugins for downloads
  • For download + repository

## Centralized, maintained repository

This is the current setup. Developers have to submit their content to LongTail Video, after which we have to approve and list the plugin ourselves. Any updates of the plugin also go through a longtail devver. There's no connection to the CMS.

Pros:

  • Current setup, no changes need communicating.
  • We can measure the number of hits on any plugin.

Cons:

  • Plugin checking and maintaneance means more work for us.
  • Users who don't want their plugins listed have to modify the player.
  • Paid-for or private plugins are available to anyone.
  • Difficult to integrate with CMS (plugins may be obsolete or conflicting with CMS functionality).

## Centralized, unmaintained repository

This is a setup we envisioned working towards. Developers can maintain and submit their own plugins. Only an initial sanity check from us is needed. We'll only actively maintain and update the plugins we build ourselves.

Pros:

  • Less work than the maintained repository.
  • We can measure the number of hits on any plugin.

Cons:

  • Functionality for submitting plugins has to be built.
  • Users who don't want their plugins listed have to modify the player.
  • Paid-for or private plugins are available to anyone.

## All plugins for download

This'd mean that we dispense with the plugin repository and only offer plugins for download, just like skins. The public site will then just be a "buy & download" site.

Pros:

  • Easy to build.
  • More clarity (DIY guys download, hosted guys use the CMS)
  • More clarity (plugins behave like skins and modules)
  • Ad plugins can also be listed and offered.

Cons:

  • Total number of hits cannot be measured (is distributed).
  • Breaks current plugin usage.

## Repository + downloads

This is a hybrid setup. Users who want to download a plugin, modify it and host it at their site, can do so. At the same time, plugins will also be available at a central repository. When using the central repos, users also have to use a hosted player.

Pros:

  • Flexibility (both download and hosting are possible).
  • Security (hosted plugins can be restricted to the hosted player with crossdomain files.

Cons:

  • Total number of hits cannot be measured (is distributed).
  • Breaks current plugin usage

## Additional issues

### Plugin versioning

Not sure whether this is useul / needed at all. This way, there's two moving targets (both the players and plugins).

### On-the-fly compilation

Can be excellently done with ANT. However, not all plugins can be compiled into the player:

  • plugins from other developers might be built using FLA files or using Flex libraries.
  • plugins that need to be controlled by the service provider (e.g. ltas/dart) cannot be compiled into the player.

### manage CMS plugins or offer uploads

When we manage the plugins for the CMS, there's always just one version of a certain plugin, so compatibility issues won't go out of hand. We'll also be able to easily update / upgrade a specific plugin.

When offering CMS plugin uploads, every plugin that's built can be uploaded and used. That way, developers can build private plugins and use them in the CMS. We also won't have to check for permissions of certain plugins (e.g. the DART plugin, which we don't want to offer to any user), since a user has either bought a plugin or not.

### Requirements rom Adam/Dave

  • Being able to gather more user info.
  • Easier sharing of data.
  • Bug updates on he fly should be possible
  • Control over plugin use (turn off guys without license or expired license)
  • Gather metrics (no. 1 metric remains the number of sites the player is installed in).

### Idea

  • All plugins can both be downloaded and hosted from the site.
  • All licensed plugins phone home.
  • Plugins are not versioned.