PDoc-Directory Maintenance

Created by: Lester Caine, Last modification: 12 Oct 2010 (13:06 BST)
Management of duplicate copies of files

There are four groups of files required by the system.

Programs - Either Home brew or Third Party. All home brew files will be stored in c:\Postfield\
        Third Party Add-Ons - Interbase ( IB_Explorer + IB_Console), WinVNC. These could be stored in Postfield or separtely.

Databases - A single master set of databases is maintained on the system, with support from separate Local Subsets managed via LocalHub on remote station servers.
Additional directories may be provided with alternate MASTER timetables, or should these be provided by allowing an alternative database name ( WIN00-01.gdb, etc. ). This only effects CifManage if required, and would allow the restoration of a list of available timetables similar to CIS4.

Data - Profile and Picture directories maintained on all machines ( See note on CNM and TVM files )
Separate sub-directories provide a different set of pictures and profiles for each display format.

Text - Page files used to create actual information to be displayed. A single master directory is maintained on a central server. While remote servers generate their own local Text directory.

CNM and TVM files will need to move from the Profile Directory to the Text Directory. These files will need to be copied to all remote slaves along with the special notice pages so as to allow remote servers to build .SET files which contain the identified pages. These are the only pages that will be managed via the CisOperator program directly.

All machines that are to be managed will be running a copy of LocalHub. This provides an FTP server which has built in USER and Password management. The machines that are managed in this way can be broken into two groups. All LocalHubs are accessed for changes to the Program and Data directories, while only Remote Hubs are accessed for updates to the Text directory. The remote hub set also implement 'cloning' of the EQUIPMENT and RUNNING databases, building and maintaining a sub-set of these databases based on the TIPLOC and SITETAG. Updates to this information are handled via a combination of network Multicast messages and TCP/IP access to the identified main server.

In order to implement management of the above regime, four separate registry entries are required.

Program - Location of local program directory.

Server - If entered with the name of the server, then a central set of Database and Text information will be used.

Text - If entered with a windows path, will provide an alternative to the default Text directory. (This may not be necessary)

NetworkServer - Slightly unnecessary since LocalHub could use the Server entry, and Local if NetworkMode is set. Maintained to allow additional local slaves to be configured using the Server entry to provide a remote multi-computer site facility.

In addition, the Tag, Station and SiteTag entries define the 'location' of a machine in the system. The default directory settings are defined in line with the CIS5 Directory Structure document. The Server entry will switch the database and text directories to look at the server TIPLOC rather than the local. ( Need to establish if a TCP/IP address can be used for Text, '<Server>:C:\<Server>\Text\' or whether we will need to set up the S Drive pointing to the correct location. The first option is to be prefered so that a change of server does not actually require any work other than a registry change ).

The location of directories for each type of computer is listed in the following table.
 

Database Data Text
SERVER Local Local Local
OPERATOR SERVER Local
FTP from SERVER
SERVER
(TempText Buffer)
DISPLAY SLAVE SERVER Local
FTP from SERVER
SERVER
(CacheText Buffer)
REMOTE SERVER Local(Sub-set) Local
FTP from SERVER
Local
FTP from SERVER
REMOTE SLAVE REMOTE SERVER REMOTE SERVER REMOTE SERVER

For simplicity, program files will be copied from the program file on the local machine to all other machines. This may require that remote copies of programs are stopped first, to allow them to be overwritten, but new versions can be simply downloaded, and the relevent entry in EQUIPMENT updated prior to stopping and restarting that program later. ( This may require that the contents of the LocalHub program table is refreshed following the changes to related entries, so that programs can be modified without having to restart LocalHub itself. Remote copies of LocalHub would also need to update their replicated copy of the information, which may need to form part of the reset function )

EquipmentManager

The FTP module of EquipmentManager provides a 'duplicate' facility to a list of supported LocalHubs. Both Program and Data files are duplicated to all listed Hubs, while Text files are only duplicated to Hubs identified as Remote ( SITETAG not equal to the local SITETAG ). Only .TXT files will be duplicated, as .SET files are built by the REMOTE SERVER. This may require that the Arrive, Depart and similar automatic pages are reassigned to be .SET, something that would allow scrolling Arrival and Departure summaries to be supported.

CisOperator

The network copies of CisOperator will extend the file save with a duplication of a file to all REMOTE sites. The {Channel Info} screen will use an FTP get to access the relevent .TXT and .SET files from the remote site. For this to work correctly, the same set of Pictures and Profiles need to be used system wide, which is supported by the duplicate process. The posting of special notice files for use by specific stations will need to be managed via the use of the TIPLOC in the file name, but those files will still be duplicated to all sites, so only a single set of text files needs to be maintained. CNM and TVM messages are posted in a similar manor. Additional work will be required if a train record is to support a set of CNM or TVM messages specific to each station on the route.

CifManage

The additional MasterSource entry is still supported to allow different copies of MASTER to be used if required, with a default of the SERVER location being used of no other is provided. Since only one machine provides extraction of MASTER into RUNNING, manual management of this should not be difficult, but a facility to change selections from within the program may be useful.

LocalHub

LocalHub provides a central control point for the machine on which it runs. In it's simplest format, it provides a time synchronisation facility and status information back to the master copy of EquipmentManager. It can additionally provide an FTP server, remote start facility for programs, and a 'replicate' facility to build a local copy of the train records that pass through the station ( LOCAL-RUNNING ). It only needs to know the location of database it is working with, and additionally a remote server that will provide the records to be replicated. Handling of FTP files are routed as directed by the FTP client direct through the FTP server to the designated local directory.

DisplaySlaves (DCSlave, DVCSlave etc. )

All display slaves will work from a SERVER, either local or remote, and will cache the text files required in the local CacheText directory, updating them when the copy on the SERVER shows a different time stamp. Since these slaves simply output a page sequence as required there is no direct interaction with the timetable system, and so only changes to Pictures or Profiles requires copies to be transfered in.