Very nice app esp. in context of India where train timings are highly unpredictable.How are they getting real time data - GPS fitted or Indian rail opened APIs?
Good that they mentioned why it is not exact real time ..."For security and regulatory reasons, the information published on RailRadar is delayed for 5 or more minutes."
Indian Railways has numerous monitoring stations. (mainly at railway stations) These monitoring stations update train's location when trains pass 'em.
In between such points, IR may know train's realtime location, but it is not made public.
Update
It is mentioned on the site that there are 6000 monitoring stations. Which means that, on average, there is a monitoring station every 11 kms (66k Km/ 6000). Considering an average speed of 80kmph, the location shown on the app can at max be 8.25 minutes old.
Usually, all railway lines must know the position of every train at any time. This is simply a requirement for avoiding crashes. As far as I know, there are usually pressure/induction sensors at regular intervals that detect train positions. Maybe that is what they are using?
Electric railways usually only supply actually used sections of the railway with power, so they have to know train positions, too.
Indian railways employs a number of methods. The most primitive fallback is the one where the station master updates the system whenever a train passes the station, whether or not it stops there.
Good that they mentioned why it is not exact real time ..."For security and regulatory reasons, the information published on RailRadar is delayed for 5 or more minutes."
edit: Rephrased.