Difference between revisions of "Darwin:Push Port"

From Open Rail Data Wiki
Jump to navigation Jump to search
Line 68: Line 68:
  
 
== Accessing the Darwin timetable, reference data, and snapshot files ==
 
== Accessing the Darwin timetable, reference data, and snapshot files ==
Darwin releases a timetable and reference data file once a day. These files along with a snapshot file that is taken shortly after the timetable has been downloaded, and Push Port messages
+
Darwin releases the timetable and reference data file once a day. These files along with a snapshot file that is taken shortly after the timetable has been downloaded are made available for download via an FTP interface from [ftp://datafeeds.nationalrail.co.uk].
 
The My Feeds screen also has the connection details for the FTP download site from where you can download the latest Darwin timetable, reference data file, and the daily snapshot file. All Push Port messages that are older than 5 minutes are also placed in this FTP site in log files. Each log file contains 5 minutes of Push Port messages.
 
The My Feeds screen also has the connection details for the FTP download site from where you can download the latest Darwin timetable, reference data file, and the daily snapshot file. All Push Port messages that are older than 5 minutes are also placed in this FTP site in log files. Each log file contains 5 minutes of Push Port messages.

Revision as of 11:27, 26 February 2015

About

The Darwin Push Port is an XML push feed that continuously streams information about the creation of, and changes to, train schedule records, together with train running predictions made by Darwin.

The Push Port can be filtered to a specific area of interest by TIPLOC, or to provide information for the entire country. Either way, the information delivered is complex and must be properly interpreted before presentation to end users.

The Push Port requires the user to build a database capable of capturing extremely high volumes of information, as well as a query engine to draw the information from your database. There is a large amount of interpretation work involved in this; however this allows substantial flexibility to apply the information to any product within the limitations of your own infrastructure.

Availability

The Darwin Push Port feed is expected to be available by 31st March 2015.

Data

The Push Port has three components:

  • Reference Data, available over FTP once a day
  • Timetable, available over FTP once a day
  • Real-time updates, available over Stomp

XSDs for the interface are available.


Reference Data

The reference data contains:

  • TIPLOCs, CRS codes, TOC codes and location names
  • TOC codes, names and website URLs
  • Late Running reason codes and text
  • Cancellation reason codes and text
  • Via locations
  • CIS codes and names

Timetable

There are two components to the Darwin Timetable:

  • A timetable snapshot, available once a day via FTP
  • Schedule updates via the Real-time feed (see below)

Real-time Updates

NOTE: All messages in the real-time update stream are sent in XML with the message body compressed using gzip.

Each message in the update feed contains update response element, which is in turn nested inside a 'Pport' element:

How do I get the data?

To access the data feeds you must register for an account at [1]. Once you have submitted the registration form, you should receive a confirmation email. Follow the instructions in the email and set your new password.

Once you have set your password and signed in, navigate to the data feeds screen by clicking on the My Feeds link at the top of the page On this screen you can find your personal queue name along with the username and password required to connect to the message queue, as well as the FTP site details and credentials.

Accessing the data feeds

The Push Port feeds are accessed through the STOMP protocol from the National Rail ActiveMQ message server. A STOMP client subscribes to a queue that is unique to each registered user, and is then sent messages via the queue. You will need a STOMP client (available in most languages - a list is available here) or an OpenWire client. Messages are queued and sent to any connected subscribers.

Real-time feeds can be made durable, so messages are not lost if a client experiences a brief disconnection. See the page on durable subscriptions and the code examples below for more information.

Each user's queue maintains 5 minutes worth of Push Port messages.

Accessing the Darwin timetable, reference data, and snapshot files

Darwin releases the timetable and reference data file once a day. These files along with a snapshot file that is taken shortly after the timetable has been downloaded are made available for download via an FTP interface from [2]. The My Feeds screen also has the connection details for the FTP download site from where you can download the latest Darwin timetable, reference data file, and the daily snapshot file. All Push Port messages that are older than 5 minutes are also placed in this FTP site in log files. Each log file contains 5 minutes of Push Port messages.