Exemplo em JavaScript/Node.js

Para usar as classes JavaScript/Node.js gtfs-realtime-bindings no seu próprio projeto, primeiro você precisa instalar nosso pacote NPM do Node.js:

npm install gtfs-realtime-bindings

Essas vinculações são projetadas para o ambiente Node.js (em inglês), mas também podem ser usadas em outros ambientes JavaScript após algumas modificações.

O snippet de código Node.js a seguir demonstra o download de um feed de dados da GTFS Realtime a partir de um URL específico, a análise dele como FeedMessage, que é o tipo raiz do esquema da GTFS Realtime, e a iteração dos resultados.

var GtfsRealtimeBindings = require('gtfs-realtime-bindings');
var request = require('request');

var requestSettings = {
  method: 'GET',
  url: 'URL OF YOUR GTFS-REALTIME SOURCE GOES HERE',
  encoding: null
};
request(requestSettings, function (error, response, body) {
  if (!error && response.statusCode == 200) {
    var feed = GtfsRealtimeBindings.FeedMessage.decode(body);
    feed.entity.forEach(function(entity) {
      if (entity.trip_update) {
        console.log(entity.trip_update);
      }
    });
  }
});

Para mais detalhes, veja a página do projeto JavaScript / Node.js (em inglês).