About the Network Rail feeds: Difference between revisions

From Open Rail Data Wiki
m →‎How do I get the data?: Added a link to account states
m →‎What are the feeds?: Split out the list of real-time and static feeds
Line 1: Line 1:
== What are the feeds? ==
== What are the feeds? ==


Five feeds and a resource are available:
Five real-time feeds are available:


* [[RTPPM]] - Real Time Public Performance Measure.  This shows the performance of trains against the timetable, measured as the percentage of trains arriving at destination on time.  Updated every minute.
* [[RTPPM]] - Real Time Public Performance Measure.  This shows the performance of trains against the timetable, measured as the percentage of trains arriving at destination on time.  Updated every minute.
Line 8: Line 8:
* [[VSTP]] - late-notice train schedules which are not available through the [[Schedule]] feed.
* [[VSTP]] - late-notice train schedules which are not available through the [[Schedule]] feed.
* [[TSR]] - Temporary Speed Restrictions
* [[TSR]] - Temporary Speed Restrictions
One static data feed is available:
* [[SCHEDULE]] - extracts of train schedules from [[ITPS]].
* [[SCHEDULE]] - extracts of train schedules from [[ITPS]].



Revision as of 17:15, 13 December 2012

What are the feeds?

Five real-time feeds are available:

  • RTPPM - Real Time Public Performance Measure. This shows the performance of trains against the timetable, measured as the percentage of trains arriving at destination on time. Updated every minute.
  • Train Movements - messaging from the TRUST system, containing reports of train movements past timetabled calling and passing points.
  • TD - data from the Train Describer system, showing raw data with train movements in more detail than the Train Movements feed.
  • VSTP - late-notice train schedules which are not available through the Schedule feed.
  • TSR - Temporary Speed Restrictions

One static data feed is available:

How do I get the data?

Register for an account by visiting http://datafeeds.networkrail.co.uk. You will receive a confirmation email - follow the instructions: log in and change your password. When your account is active, you can connect to the service. Your account may be in one of three states.

You will need to write a Stomp client, available in many languages.

Schedule data is available as a separate download.

Good practice

Please bear in mind the following points when you use the service - they're here to make sure everyone gets a good service:

  • Sign up with one account - it gives an accurate reflection of how many people are actually using the service.
  • Connect to the service once - you can receive multiple feeds in a single connection. If you need to access the data more than once, you can do so - but be sensible!
  • Don't leave a failed client running - if you can connect but get an authentication or authorization error, stop your client, don't leave it continually trying.
  • Make sure your client handles failures - if your client fails to connect or is disconnected, use an exponential backoff and wait 1s, 2s, 4s, 8s, 16s etc. before trying to reconnect. Service problems sometimes occur, and if everyone tries to reconnect every second, the service will not recover quickly.
  • Use a durable subscriber - if you want data to be queued in case you disconnect, request a durable subscription when you connect.

Background reading

It may be useful to understand the background to the sources of some of these data feeds. These links will help:

Examples

Example code is available for several common languages: