Untergeordnete Seiten
  • Update Service

  Wiki Navigation

    Loading...


 Recently Updated


 Latest Releases

 MediaPortal 1.32
            Releasenews | Download
 MediaPortal 2.5
            Releasenews | Download


Table of Contents

Overview

MP2 should have an additional windows service "MP2 Update Service". This service should be responsible to update files in ProgramFiles folder. The MP2-Client is not able to do it because of UAC.

See also the Extension Manager concept.

Details

Tasks

The UpdateService feature is responsible for the following tasks. It is not needed to have all of them available within the UpdateService, as for some other features needs to be implmented before. This is the reason, why it's design needs to be flexible enogh to easily extend additional tasks in the future.

Language file updates

Updating the language files of all plugins in MP2-Client's and MP2-Server's installation dir from Transifex.

This could be the initial task, since we are already using Transifex for translations.

Plugin management

Installing, updating, removing or rolling back of plugins.

For a proper plugin management, a plugin container is needed. This is not implemented in MP2, yet.

MP2 updates

Updating MP2 itself by running the installer or scheduling it for the next system boot.

The WiX-based MP2-Installer is being reworked currently. There might be changes in the future.

The file format, which contains the information about latest available stable version of MP2 needs to be defined. It should contain the following fields:

  • Date of latest release
  • Version of latest release
  • Web location of the installer exe
  • What's new / Changelog (optional)
  • Definition if (for which versions?) automatic update is possible or not possible? might there be reasons to prevent an automatical one?

Components

The UpdateService is divided into several components.

MP2-UpdateService

The core component is a windows service.

Exact one instance is needed per machine, no matter if the machine is a SingleSeat, Client-only or Server-only installation.

UpdateService plugin

For communication between MP2-Client / MP2-Server and the MP2-UpdateService a plugin is needed.

A plugin needs to be available for MP2-Client and MP2-Server.

Sub-Tasks

Each of the following sub-tasks is needed for every main task.

Management

Responsible component: plugin

This means presenting configurable settings to the user and displaying messages in case of errors or user interaction is needed.

Possible setting:

  • Auto-Update language files:    off    information    full-automatic
  • Auto-Update plugins:                off    information    full-automatic
  • Auto-Update MP2:                      off   information
  • Interval for update check:        daily        weekly

The client plugin also communicates with the server plugin to configure it or launch action. Imagine the following scenario: 2 PCs in the network, machine A with MP2-Server and machine B with MP2-Client. The user would like to update MP2-Server plugins on machine A from within the MP2-Client on machine B.

Web-Communication

Responsible component: plugin or UpdateService ???

This means checking for updates at the web and downloading the files. Possibilities to do it:

  • Each UpdateService checks and downloads the files for it's machine.
  • The UpdateService, where the server runs on, checks and downloads all files and distributes them to other client machines.
  • The plugin within MP2-Server checks for updates and downloads the files and distributes them also to the client plugins.
  • Each plugin checks and downloads for it's own machine. On SingleSeat machines the server plugin is responsible.

Execution

Responsible component: UpdateService

This sub-task means copying files to the installation folder, starting an MP2 update or scheduling it for next system boot.

See also

Here you can add all kind of related links to other web pages, blogs., other existing wiki documentation, MP2 classes, components...

Language updates

MP2 @ Transifex - MediaPortal 2's translation framework

Transifex API - The API, which can be used to retrieve information and language files from MediaPortal 2.

Translation Guide - Translation wiki page

Related

   

 

This page has no comments.