Automatic Web-based Software Upgrades

 

As of Release 3.06, systems having Internet access can be upgraded automatically without customer or Savoy intervention.  Customers without Internet access can set up their own single point software upgrade service within their private network.

 

For those with Internet access, their systems will periodically connect to SavoyWebServices.com and perform a component-by-component comparison between their current installation and the one on the website.  Then, we can provide upgrades to our installed base by simply positing the new components onto our website; the rest is automatic.

 

For customers without Internet access, we can email a Zip file to the customer who will copy the files to their internal site.  The internal site can run on any of our video servers.

 

It is intended that this service be provided to customers who subscribe to our service contract.

 

Updating the Console

To access this feature from the Console, select the Tools, Software updates… menu:

 

 

 

 


Initially, the first selection of this menu item will display the Upgrade Services dialog with features disabled:

 

To enable Software Updates, click ‘Register for service’:

 

 

Click OK to proceed and then enter the 8 character  SoftwareUpdate product code:

 

 

Enter the eight-character product code and click OK.

 

 

Enter your name and organization (to be added to the log file for identification).

 

Following the entry of an acceptable license code, the Customer Service dialog will appear whenever the user selects the ‘Software upgrades’ menu item:

 

 

Enter the site location of the service, normally “SavoyWebServices.com”.  Alternatively, if you’re located on an internal LAN without Internet access, this service can be installed on an internal server:

 

 

 

User Settings:

 

Request that connected servers perform updates

If checked, the Console will issue assertions to the servers to perform updates (see below).

 

Automatically check for updates

If checked, the Console will connect to the website periodically for new components.

 

 

Notify operator before restarting Console

If checked, the following notice appears only if a Console restart is required:

 

 

 

 

 


Updating the Servers (and Consoles without an FTP Plugin)

A ServerApp called UpdateSoftware should be installed on each server.  When any connected Console runs an update procedure, it also (optionally) asserts to all servers the following:

 

            UpdateServiceIP    [the service IP or domain name];

            RequestServerUpdates True;

 

This causes the server to assert commands to the SaFTP domain to perform date-time comparisons of components located on the FTP site and download any new ones.  If any are found, a final assertion is made to restart the server.

 

During the update procedure, the Console checks to see if it has an FTP Plugin installed and, if not, it asserts:

 

            RequestConsoleUpdates True;

 

The rules that fire as a result of this assertion cause the server to update Console components on the Console’s behalf.  It is assumed that a Console without an FTP Plugin is connected (only) locally to a server.

 

Within a minute of the assertion, the Console will check for new components and restart to install them if necessary.

 

For both the Server and the Console, new components are placed in subdirectories called ‘Updates’.  The Console application checks its Updates directory for new components and restarts if there are any; the Server receives an explicit assertion to restart from the FTP rules.  In either case, the ‘Start’ application subsequently moves the new components from the Updates directory to their intended directory so that when the application is running again, it is doing so with updated components.

 

 

 

 

 


Administrating the Update Service

By default the service is installed as an FTP service on SavoyWebServices.com.  Alternatively, the service can be installed on any customer PC, particularly useful if Internet access is unavailable.

 

The FTP service has three login user names for three distinct privileges:

  1. login name/passwords for read-only access used by the update system,
  2. login name/passwords for read-write-delete access for administration,
  3. login name/passwords for write-only access for the Logs directory,

 

 

The FTP directory is organized with several subdirectories:

            Console                                   (Console.exe and all PlugIns)

            WebEngine                             (Start.exe, etc.)

            WebEngine\Server                 (server exe)

            WebEngine\Clients                (client exe)

            WebEngine\ActiveX              (all Domain Mgrs)

            Logs                                        text files containing logging info for each site.

 

New or modified software components can be upgraded to all connecting systems by simply copying the component files into the appropriate subdirectory.

 

 

Installation

A ServerApp named UpdateSoftware must be generated from the file UpdateSoftware.apt to create a file called UpdateSoftware@@@.app, where @@@ is the server’s unique three character ID.

 

This ServerApp must then be installed on the Server.

 


FTP Relay Sites

Since many video servers do not have FTP access to the Internet, Savoy provides a means of automatic updates through the use of a ‘Relay’ site.

 

A Relay site is a customer computer with Internet access that maintains current software releases from the SavoyWebServices.com site.   Internal servers are then updated from the Relay site.   This relay site must be secured against unauthorized access; consult the customer IT personnel to set this up.

 

The Relay site can be deployed by simply running the Savoy server with an installed ServerApp named ‘FtpRelay’.

 

Besides maintaining a mirror image of the SavoyWebServices.com site, the FtpRelay ServerApp copies the contents of its local Logs directory to its parent site (SavoyWebServices.com).  In doing so, the Logs directory on SavoyWebServices.com includes logs of all servers including those updated from Relay sites.

 

The FtpRelay ServerApp assumes the updates are in a directory called ‘\Updates’

With subdirectories ‘Console’, Logs’, ‘WebEngine\ActiveX, Clients, Server’’,

 

With the addition of an ‘DelFileOnDone’ command in the FtpRelay ServerApp, the local FTP Logs directory is cleared after sending all logs to the master site.  This way, if any local servers fail to check updates, their log will be omitted on the next update and the FtpMonitor application will generate an alert, albeit up to 4 hours later than if they had all reported directly and not through the relay.

 

On the Relay site, create two FTP login accounts:  FtpSWUpdates [savoy] pointing to the update directory, and FtpSWUpdatesLogs [savoy] pointing to the updates/Logs directory.


Monitoring Overall Activity

An application called ‘FtpMonitor’ runs on the FTP server and monitors the activity of all remote Servers and Consoles.

 

Since each server is supposed to report every 4 hours, FtpMonitor can generate notifications when any server fails to do so.

 

FtpMonitor maintains the relationship between Customer, their Servers, and their Consoles.   It maintains information regarding every component update for every Server/Console.

 

Selecting a customer, and then clicking on a Server (or Console) will show the component update times:

 

 

 

Customers are managed by a dialog where you can enter Server/Console Ids:

 

Notification of a late reporting Server can be managed by specifying the IP address of a Savoy Server running the EDNA (Emergency Desktop Notification Application) Domain

With an EDNA device that has created an EDNA channel.

 

 

Subscribers running the EDNA client can then be notified when any server is about one hour late in reporting.