Para usar as classes gtfs-realtime-bindings
no seu projeto, primeiro instale a gem do Ruby:
gem install gtfs-realtime-bindings
O snippet de código a seguir demonstra o download de um feed de dados da GTFS Realtime 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.
require 'protobuf' require 'google/transit/gtfs-realtime.pb' require 'net/http' require 'uri' data = Net::HTTP.get(URI.parse("URL OF YOUR GTFS-REALTIME SOURCE GOES HERE")) feed = Transit_realtime::FeedMessage.decode(data) for entity in feed.entity do if entity.field?(:trip_update) p entity.trip_update end end
Para mais detalhes, veja a página do projeto Ruby (em inglês).