Alter 4 files

Add `.gitkeep`
Update `spec.md`
Add `.gitkeep`
Add `.gitkeep`
This commit is contained in:
akp 2023-02-11 11:43:48 +00:00
parent 3f2a209bb9
commit 99ae76c303
No known key found for this signature in database
GPG key ID: AA5726202C8879B7
4 changed files with 29 additions and 1 deletions

0
api/.gitkeep Normal file
View file

View file

@ -13,7 +13,7 @@ Aspirationally, it should be able to track multiple trains at any one time, with
## Data sources
The Project will source data from multiple Network Rail Open Data Feeds:
* [Train Movements](https://wiki.openraildata.com/index.php?title=Train_Movements) or [TD](https://wiki.openraildata.com/index.php?title=TD) feed (which one is TBC) will be used to retrieve the real-time location of trains on the Network Rail network.
* [Train Movements](https://wiki.openraildata.com/index.php?title=Train_Movements) will be used to retrieve the real-time location of trains on the Network Rail network.
* [SCHEDULE](https://wiki.openraildata.com/index.php?title=SCHEDULE) will be used to retrieve train scheduling information.
Additionally, the project will make use of the [OpenStreeMap Overpass API](https://wiki.openstreetmap.org/wiki/Overpass_API) to source data about track layout. It may also be used to find station locations.
@ -25,3 +25,31 @@ In addition to a Redis database, there are three main components to the project:
* A Python API server that powers the frontend application
* The frontend JavaScript application
## Redis Database
The Redis database will store:
* Real-time train location by train ID
* Schedule information
* TIPLOC information (see below)
## Data sources
### SCHEDULE
Authoritatitve scheduling information can be retrieved from Network Rail by downloading a single file. This will be parsed and loaded into the Redis database.
The downloads contain information about schedules and TIPLOCs, where a TIPLOC is an identifier for a physical location on the rail network. Every schedule contains timings for when a given service will pass through a given set of TIPLOCs.
Each schedule is identified with a so-called "headcode".
### Train Movements
The Train Movements (herein referred to as TM) feed provides real-time updates as to where a train is. It emits messages of different types, documented below:
![](https://wiki.openraildata.com/images/f/fb/Trust_fsm.png)
`Activation` messages link a train ID to a headcode. No other messages types do this, so if the activation message is missed we will be unable to adequately understand any other messages relating to that train.
### TIPLOC Information
TIPLOCs can be mapped to real-world Northings and Eastings and hence then used as

0
feedprocessor/.gitkeep Normal file
View file

0
web/.gitkeep Normal file
View file