station_master 0.0.4 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b3fc250b285597d08b3055f6dee49a77d9f3ed57
4
- data.tar.gz: e50cd7335d8354ae52e9ca44e2957884933d5bbe
3
+ metadata.gz: 371a8bf0792b632b875ecb815c4f90c2437a5b18
4
+ data.tar.gz: ce4954b680306340f806976f7b2d7f75c7483037
5
5
  SHA512:
6
- metadata.gz: b9bcdbc3ca7197c9bf5b8bc082a77f7f64aa4ec31be84e42e65e86e0f4b4bb3478301e49366747ed0ae3f7e96facfd201f1c5a7778d13e20bca0e9968e8fb317
7
- data.tar.gz: b0f94b34059a4318d31d72c0ce08c29eca3ae6b2eb91073c3630cd5bfa7f62bf70185f6aaeeec69c15445d18e6224c0f6a0c4c6d31cdcce06ab8a873b845b82d
6
+ metadata.gz: 7605c72dcdc61cd85a24b796bd26a51f1d7512ba3abfcbd169b660a2a08ff14820ca806128e581bd7c1b1842401dcf2094b03d11d8d56bc88d363bd7546fba51
7
+ data.tar.gz: 125a5a40c3d30148a21348f09b3c388cb6952543893a345b273ba7bd107cb177a2b9de0e046704296c67357fddc79383201a70387272244e76e5c693eea36f90
data/README.md CHANGED
@@ -23,20 +23,31 @@ Or install it yourself as:
23
23
 
24
24
  require 'station_master'
25
25
 
26
- To get a list of all stations available:
26
+ To find a specific station based on city name:
27
27
 
28
+ StationMaster::Station.find_by_city('Torino')
28
29
 
29
- StationMaster::Ask::Station.all
30
+ It returns a list of possible stations that match the parameter string.
30
31
 
32
+ To find real-time departures information:
31
33
 
32
- It returns the list of all stations with geo-coordinates information (may
33
- require minutes!).
34
+ StationMaster::Schedule.find_station_departures('S06421')
34
35
 
35
- To find a specific station based on city name:
36
+ It retrieve the current station departures status.
36
37
 
37
- StationMaster::Ask::Station.find_by_city('Torino')
38
+ To find real-time arrivals information:
38
39
 
39
- It returns a list of possible stations that match the parameter string.
40
+ StationMaster::Schedule.find_station_arrivals('S06421')
41
+
42
+ It retrieve the current station arrivals status.
43
+
44
+ To get a list of all stations available:
45
+
46
+ StationMaster::Station.all
47
+
48
+
49
+ It returns the list of all stations with geo-coordinates information (may
50
+ require minutes!).
40
51
 
41
52
  ## Changelog
42
53
 
@@ -1,4 +1,12 @@
1
1
  module StationMaster
2
2
  module Ask
3
+ protected
4
+ def ask!(request_url)
5
+ url = URI.parse(request_url)
6
+ http = Net::HTTP.new(url.host, url.port)
7
+ http.read_timeout = 2
8
+
9
+ http.get(url).body
10
+ end
3
11
  end
4
12
  end
@@ -0,0 +1,81 @@
1
+ module StationMaster
2
+ class Schedule
3
+ class << self
4
+ include Ask
5
+
6
+ def find_station_arrivals(station_code, time = Time.now)
7
+ MultiJson::load(remote_call(:arrivals, { station_code: station_code, time: format_time(time) }), symbolize_keys: true).inject([]) do |array, arrival_hash|
8
+ array << Arrival.new(arrival_hash)
9
+ end
10
+ end
11
+
12
+ def find_station_departures(station_code, time = Time.now)
13
+ MultiJson::load(remote_call(:departures, { station_code: station_code, time: format_time(time) }), symbolize_keys: true).inject([]) do |array, arrival_hash|
14
+ array << Departure.new(arrival_hash)
15
+ end
16
+ end
17
+
18
+ protected
19
+ def remote_call(resource, options = {})
20
+ request_url = case resource
21
+ when :arrivals then
22
+ STATION_MASTER_BASE_URL + "arrivi/#{options[:station_code]}/#{options[:time]}"
23
+ when :departures then
24
+ STATION_MASTER_BASE_URL + "partenze/#{options[:station_code]}/#{options[:time]}"
25
+ else
26
+ nil
27
+ end
28
+
29
+ ask!(URI.escape(request_url)) if request_url
30
+ end
31
+
32
+ def format_time(time)
33
+ time.strftime('%a %b %d %Y %H:%M:%S GMT%z (CET)')
34
+ end
35
+ end
36
+
37
+ class Arrival
38
+ attr_reader :train_code, :train_type, :origin, :platform, :time
39
+
40
+ def initialize(hash)
41
+ @train_code = hash[:numeroTreno]
42
+ @train_type = hash[:categoria]
43
+ @origin = hash[:origine]
44
+ @platform = (hash[:binarioProgrammatoArrivoDescrizione]|| '0').strip
45
+ @time = Time.at((hash[:orarioArrivo] || 0) / 1000)
46
+ end
47
+
48
+ def to_hash
49
+ {
50
+ train_code: train_code,
51
+ train_type: train_type,
52
+ origin: origin,
53
+ platform: platform,
54
+ time: time.strftime('%H:%M')
55
+ }
56
+ end
57
+ end
58
+
59
+ class Departure
60
+ attr_reader :train_code, :train_type, :destination, :platform, :time
61
+
62
+ def initialize(hash)
63
+ @train_code = hash[:numeroTreno]
64
+ @train_type = hash[:categoria]
65
+ @destination = hash[:destinazione]
66
+ @platform = (hash[:binarioProgrammatoPartenzaDescrizione] || 0).strip
67
+ @time = Time.at((hash[:orarioPartenza] || 0) / 1000)
68
+ end
69
+
70
+ def to_hash
71
+ {
72
+ train_code: train_code,
73
+ train_type: train_type,
74
+ destination: destination,
75
+ platform: platform,
76
+ time: time.strftime('%H:%M')
77
+ }
78
+ end
79
+ end
80
+ end
81
+ end
@@ -0,0 +1,78 @@
1
+ module StationMaster
2
+ class Station
3
+ attr_reader :station_code, :latitude, :longitude, :region_id, :location
4
+
5
+ class << self
6
+ include Ask
7
+
8
+ def all
9
+ stations_array = []
10
+ index = 0
11
+ begin
12
+ response = MultiJson::load(remote_call(:stations, page: index), symbolize_keys: true).inject([]) do |array, station|
13
+ station_code = station[:codiceStazione]
14
+ latitude = station[:lat]
15
+ longitude = station[:lon]
16
+ region_id = find_region_id_by_code(station[:codiceStazione])
17
+ station_details = find_details(station_code, region_id)
18
+ location = (station_details[:localita][:nomeLungo] || '').split.map(&:capitalize).join(' ') if station_details
19
+
20
+ array << Station.new(station_code, latitude, longitude, region_id, location)
21
+ end
22
+ stations_array += response
23
+ index += 1
24
+ end while response.any?
25
+
26
+ stations_array
27
+ end
28
+
29
+ def find_by_city(city)
30
+ remote_call(:search, { city: city }).split(/\n/).map(&:strip).inject({}) { |hash, entry| hash.merge!({ entry.split('|').first.to_sym => entry.split('|').last }) }
31
+ end
32
+
33
+ def find_region_id_by_code(station_code)
34
+ remote_call(:region_id, station_code: station_code)
35
+ end
36
+
37
+ def find_details(station_code, region_id)
38
+ MultiJson::load(remote_call(:station_details, station_code: station_code, region_id: region_id), symbolize_keys: true)
39
+ end
40
+
41
+ protected
42
+ def remote_call(resource, options = {})
43
+ request_url = case resource
44
+ when :stations then
45
+ STATION_MASTER_BASE_URL + "elencoStazioni/#{options[:page] || 0}"
46
+ when :region_id then
47
+ STATION_MASTER_BASE_URL + "regione/#{options[:station_code] || 0}"
48
+ when :station_details
49
+ STATION_MASTER_BASE_URL + "dettaglioStazione/#{options[:station_code] || 0}/#{options[:region_id] || 0}"
50
+ when :search
51
+ STATION_MASTER_BASE_URL + "autocompletaStazione/#{options[:city] || ''}"
52
+ else
53
+ nil
54
+ end
55
+
56
+ ask!(request_url) if request_url
57
+ end
58
+ end
59
+
60
+ def initialize(station_code, latitude, longitude, region_id, location)
61
+ @station_code = station_code
62
+ @latitude = latitude
63
+ @longitude = longitude
64
+ @region_id = region_id
65
+ @location = location
66
+ end
67
+
68
+ def to_hash
69
+ {
70
+ station_code: station_code,
71
+ latitude: latitude,
72
+ longitude: longitude,
73
+ region_id: region_id,
74
+ location: location
75
+ }
76
+ end
77
+ end
78
+ end
@@ -1,3 +1,3 @@
1
1
  module StationMaster
2
- VERSION = "0.0.4"
2
+ VERSION = "0.0.5"
3
3
  end
@@ -2,10 +2,9 @@ require 'active_support/core_ext'
2
2
  require 'multi_json'
3
3
  require 'net/http'
4
4
 
5
- require 'station_master/version'
6
5
  require 'station_master/ask'
7
- require 'station_master/ask/station'
8
-
6
+ require 'station_master/station'
7
+ require 'station_master/schedule'
9
8
 
10
9
  module StationMaster
11
10
  STATION_MASTER_BASE_URL = 'http://www.viaggiatreno.it/viaggiatrenonew/resteasy/viaggiatreno/'
@@ -0,0 +1,167 @@
1
+ require 'spec_helper'
2
+
3
+ describe StationMaster::Schedule do
4
+ let(:schedule) { StationMaster::Schedule }
5
+
6
+ context "#find_station_arrivals" do
7
+ it "returns arrivals given a station code and optionally a datetime" do
8
+ expect(schedule).to respond_to(:find_station_arrivals)
9
+ expect(schedule.find_station_arrivals('S00219', Time.new(2014,11,10,22,35,26,'+01:00')).map(&:to_hash)).to eq([
10
+ {
11
+ origin: "SUSA",
12
+ platform: "14",
13
+ time: "22:15",
14
+ train_code: 24875,
15
+ train_type: "REG"
16
+ },
17
+ {
18
+ origin: "GENOVA BRIGNOLE",
19
+ platform: "7",
20
+ time: "22:30",
21
+ train_code: 2530,
22
+ train_type: "REG"
23
+ },
24
+ {
25
+ origin: "IVREA",
26
+ platform: "18",
27
+ time: "22:32",
28
+ train_code: 24832,
29
+ train_type: "REG"
30
+ },
31
+ {
32
+ origin: "CUNEO",
33
+ platform: "3",
34
+ time: "22:35",
35
+ train_code: 10216,
36
+ train_type: "REG"
37
+ },
38
+ {
39
+ origin: "ROMA TERMINI",
40
+ platform: "17",
41
+ time: "22:40",
42
+ train_code: 9580,
43
+ train_type: "ES*"
44
+ },
45
+ {
46
+ origin: "BARDONECCHIA",
47
+ platform: "15",
48
+ time: "22:45",
49
+ train_code: 10029,
50
+ train_type: "REG"
51
+ },
52
+ {
53
+ origin: "VENEZIA SANTA LUCIA",
54
+ platform: "11",
55
+ time: "22:50",
56
+ train_code: 9746,
57
+ train_type: "ES*"
58
+ },
59
+ {
60
+ origin: "MILANO CENTRALE",
61
+ platform: "13",
62
+ time: "23:07",
63
+ train_code: 2030,
64
+ train_type: "REG"
65
+ },
66
+ {
67
+ origin: "ROMA TERMINI",
68
+ platform: "16",
69
+ time: "23:12",
70
+ train_code: 9654,
71
+ train_type: "ES*"
72
+ },
73
+ {
74
+ origin: "SUSA",
75
+ platform: "4",
76
+ time: "23:17",
77
+ train_code: 24877,
78
+ train_type: "REG"
79
+ },
80
+ {
81
+ origin: "SAVONA",
82
+ platform: "0",
83
+ time: "23:35",
84
+ train_code: 33800,
85
+ train_type: "REG"
86
+ },
87
+ {
88
+ origin: "GENOVA BRIGNOLE",
89
+ platform: "5",
90
+ time: "23:40",
91
+ train_code: 2532,
92
+ train_type: "REG"
93
+ },
94
+ {
95
+ origin: "BARDONECCHIA",
96
+ platform: "15",
97
+ time: "23:45",
98
+ train_code: 10031,
99
+ train_type: "REG"
100
+ },
101
+ {
102
+ origin: "MILANO CENTRALE",
103
+ platform: "13",
104
+ time: "00:10",
105
+ train_code: 2032,
106
+ train_type: "REG"
107
+ }
108
+ ])
109
+ end
110
+ end
111
+
112
+ context "#find_station_departures" do
113
+ it "returns departures given a station code and optionally a datetime" do
114
+ expect(schedule).to respond_to(:find_station_departures)
115
+ expect(schedule.find_station_departures('S00219', Time.new(2014,11,10,22,18,44,'+01:00')).map(&:to_hash)).to eq([
116
+ {
117
+ train_code: 10030,
118
+ train_type: "REG",
119
+ destination: "BARDONECCHIA",
120
+ platform: "18",
121
+ time: "22:20"
122
+ },
123
+ {
124
+ train_code: 23601,
125
+ train_type: "REG",
126
+ destination: "ALESSANDRIA",
127
+ platform: "8",
128
+ time: "22:20"
129
+ },
130
+ {
131
+ train_code: 24835,
132
+ train_type: "REG",
133
+ destination: "IVREA",
134
+ platform: "15",
135
+ time: "22:28"
136
+ },
137
+ {
138
+ train_code: 24876,
139
+ train_type: "REG",
140
+ destination: "BUSSOLENO",
141
+ platform: "14",
142
+ time: "22:45"
143
+ },
144
+ {
145
+ train_code: 2033,
146
+ train_type: "REG",
147
+ destination: "MILANO CENTRALE",
148
+ platform: "13",
149
+ time: "22:54"
150
+ },
151
+ {
152
+ train_code: 10221,
153
+ train_type: "REG",
154
+ destination: "CUNEO",
155
+ platform: "3",
156
+ time: "23:25"
157
+ }
158
+ ])
159
+ end
160
+ end
161
+
162
+ context "#format_time" do
163
+ it "returns time formatted" do
164
+ expect(schedule.send(:format_time, Time.new(2014,11,10,11,27,57,'+01:00'))).to eq("Mon Nov 10 2014 11:27:57 GMT+0100 (CET)")
165
+ end
166
+ end
167
+ end
data/spec/spec_helper.rb CHANGED
@@ -10,6 +10,7 @@ require 'benchmark'
10
10
 
11
11
  RSpec.configure do |config|
12
12
  config.before(:each) do
13
+ # stubs for Station.all
13
14
  stub_request(:get, 'http://www.viaggiatreno.it/viaggiatrenonew/resteasy/viaggiatreno/elencoStazioni/0').
14
15
  to_return(status: 200, body: <<-JSON.squish, headers: {})
15
16
  [{"codReg":15,"tipoStazione":3,"dettZoomStaz":[],"pstaz":[],"mappaCitta":{"urlImagePinpoint":"","urlImageBaloon":""},"codiceStazione":"S11212","codStazione":"S11212","lat":40.787682,"lon":15.758093,"latMappaCitta":0.0,"lonMappaCitta":0.0,"localita":{"nomeLungo":"CASTEL LAGOPESOLE","nomeBreve":"Castel Lagopes.","label":"","id":"S11212"},"esterno":false,"offsetX":0,"offsetY":0,"nomeCitta":"A"},{"codReg":15,"tipoStazione":3,"dettZoomStaz":[],"pstaz":[],"mappaCitta":{"urlImagePinpoint":"","urlImageBaloon":""},"codiceStazione":"S11214","codStazione":"S11214","lat":40.714667,"lon":15.785619,"latMappaCitta":0.0,"lonMappaCitta":0.0,"localita":{"nomeLungo":"AVIGLIANO LUCANIA","nomeBreve":"Avigliano Luc.","label":"","id":"S11214"},"esterno":false,"offsetX":0,"offsetY":0,"nomeCitta":"A"}]
@@ -23,6 +24,7 @@ RSpec.configure do |config|
23
24
  stub_request(:get, 'http://www.viaggiatreno.it/viaggiatrenonew/resteasy/viaggiatreno/elencoStazioni/2').
24
25
  to_return(status: 200, body: '[]', headers: {})
25
26
 
27
+ # stubs for Station.find_by_city
26
28
  ['S11212', 'S11214', 'S11219'].each do |station_id|
27
29
  region_id = 15
28
30
 
@@ -77,5 +79,17 @@ RSpec.configure do |config|
77
79
  TORTORETO LIDO|S07801
78
80
  TORVISCOSA|S03206
79
81
  JSON
82
+
83
+ # stubs for Schedule.find_station_arrivals
84
+ stub_request(:get, "http://www.viaggiatreno.it/viaggiatrenonew/resteasy/viaggiatreno/arrivi/S00219/Mon%20Nov%2010%202014%2022:35:26%20GMT+0100%20(CET)").
85
+ to_return(status: 200, headers: {}, body: <<-JSON.squish)
86
+ [{"numeroTreno":24875,"categoria":"REG","categoriaDescrizione":null,"origine":"SUSA","codOrigine":"S00260","destinazione":null,"codDestinazione":null,"origineEstera":null,"destinazioneEstera":null,"oraPartenzaEstera":null,"oraArrivoEstera":null,"tratta":0,"regione":0,"origineZero":null,"destinazioneZero":null,"orarioPartenzaZero":null,"orarioArrivoZero":null,"circolante":false,"codiceCliente":2,"binarioEffettivoArrivoCodice":null,"binarioEffettivoArrivoDescrizione":null,"binarioEffettivoArrivoTipo":null,"binarioProgrammatoArrivoCodice":null,"binarioProgrammatoArrivoDescrizione":"14 ","binarioEffettivoPartenzaCodice":null,"binarioEffettivoPartenzaDescrizione":null,"binarioEffettivoPartenzaTipo":null,"binarioProgrammatoPartenzaCodice":null,"binarioProgrammatoPartenzaDescrizione":null,"subTitle":null,"esisteCorsaZero":null,"orientamento":"","inStazione":false,"haCambiNumero":false,"nonPartito":false,"provvedimento":0,"riprogrammazione":"N","orarioPartenza":null,"orarioArrivo":1415654100000,"stazionePartenza":null,"stazioneArrivo":null,"statoTreno":null,"corrispondenze":null,"servizi":null,"ritardo":0,"tipoProdotto":"","compOrarioPartenzaZeroEffettivo":null,"compOrarioArrivoZeroEffettivo":null,"compOrarioPartenzaZero":null,"compOrarioArrivoZero":null,"compOrarioArrivo":"22:15","compOrarioPartenza":null,"compNumeroTreno":"REG 24875","compOrientamento":["--","--","--","--","--","--","--","--","--"],"compTipologiaTreno":"regionale","compClassRitardoTxt":"","compClassRitardoLine":"regolare_line","compImgRitardo2":"","compImgRitardo":"/vt_static/img/legenda/icone_legenda/regolare.png","compRitardo":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compRitardoAndamento":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compInStazionePartenza":["","","","","","","","",""],"compInStazioneArrivo":["","","","","","","","",""],"compOrarioEffettivoArrivo":"/vt_static/img/legenda/icone_legenda/regolare.png22:15","compDurata":"","compImgCambiNumerazione":"  "},{"numeroTreno":2530,"categoria":"REG","categoriaDescrizione":null,"origine":"GENOVA BRIGNOLE","codOrigine":"S04702","destinazione":null,"codDestinazione":null,"origineEstera":null,"destinazioneEstera":null,"oraPartenzaEstera":null,"oraArrivoEstera":null,"tratta":0,"regione":0,"origineZero":null,"destinazioneZero":null,"orarioPartenzaZero":null,"orarioArrivoZero":null,"circolante":true,"codiceCliente":2,"binarioEffettivoArrivoCodice":null,"binarioEffettivoArrivoDescrizione":null,"binarioEffettivoArrivoTipo":null,"binarioProgrammatoArrivoCodice":null,"binarioProgrammatoArrivoDescrizione":"7 ","binarioEffettivoPartenzaCodice":null,"binarioEffettivoPartenzaDescrizione":null,"binarioEffettivoPartenzaTipo":null,"binarioProgrammatoPartenzaCodice":null,"binarioProgrammatoPartenzaDescrizione":null,"subTitle":null,"esisteCorsaZero":null,"orientamento":"","inStazione":false,"haCambiNumero":false,"nonPartito":false,"provvedimento":0,"riprogrammazione":"N","orarioPartenza":null,"orarioArrivo":1415655000000,"stazionePartenza":null,"stazioneArrivo":null,"statoTreno":null,"corrispondenze":null,"servizi":null,"ritardo":7,"tipoProdotto":"","compOrarioPartenzaZeroEffettivo":null,"compOrarioArrivoZeroEffettivo":null,"compOrarioPartenzaZero":null,"compOrarioArrivoZero":null,"compOrarioArrivo":"22:30","compOrarioPartenza":null,"compNumeroTreno":"REG 2530","compOrientamento":["--","--","--","--","--","--","--","--","--"],"compTipologiaTreno":"regionale","compClassRitardoTxt":"ritardo01_txt","compClassRitardoLine":"ritardo01_line","compImgRitardo2":"/vt_static/img/legenda/icone_legenda/ritardo01.png","compImgRitardo":"/vt_static/img/legenda/icone_legenda/ritardo01.png","compRitardo":["ritardo 7 min.","delay 7 min.","Verspätung 7 Min.","retard de 7 min.","retraso de 7 min.","întârziere 7 min.","遅延 7 分","误点 7分钟","опоздание на 7 минут"],"compRitardoAndamento":["con un ritardo di 7 min.","7 minutes late","mit einer Verzögerung von 7 Min.","avec un retard de 7 min.","con un retraso de 7 min.","cu o întârziere de 7 min.","7 分の遅延","误点 7分钟","с опозданием в 7 минут"],"compInStazionePartenza":["","","","","","","","",""],"compInStazioneArrivo":["","","","","","","","",""],"compOrarioEffettivoArrivo":"/vt_static/img/legenda/icone_legenda/regolare.png22:37","compDurata":"","compImgCambiNumerazione":"  "},{"numeroTreno":24832,"categoria":"REG","categoriaDescrizione":null,"origine":"IVREA","codOrigine":"S00154","destinazione":null,"codDestinazione":null,"origineEstera":null,"destinazioneEstera":null,"oraPartenzaEstera":null,"oraArrivoEstera":null,"tratta":0,"regione":0,"origineZero":null,"destinazioneZero":null,"orarioPartenzaZero":null,"orarioArrivoZero":null,"circolante":false,"codiceCliente":2,"binarioEffettivoArrivoCodice":null,"binarioEffettivoArrivoDescrizione":null,"binarioEffettivoArrivoTipo":null,"binarioProgrammatoArrivoCodice":null,"binarioProgrammatoArrivoDescrizione":"18 ","binarioEffettivoPartenzaCodice":null,"binarioEffettivoPartenzaDescrizione":null,"binarioEffettivoPartenzaTipo":null,"binarioProgrammatoPartenzaCodice":null,"binarioProgrammatoPartenzaDescrizione":null,"subTitle":null,"esisteCorsaZero":null,"orientamento":"","inStazione":false,"haCambiNumero":false,"nonPartito":false,"provvedimento":0,"riprogrammazione":"N","orarioPartenza":null,"orarioArrivo":1415655120000,"stazionePartenza":null,"stazioneArrivo":null,"statoTreno":null,"corrispondenze":null,"servizi":null,"ritardo":0,"tipoProdotto":"","compOrarioPartenzaZeroEffettivo":null,"compOrarioArrivoZeroEffettivo":null,"compOrarioPartenzaZero":null,"compOrarioArrivoZero":null,"compOrarioArrivo":"22:32","compOrarioPartenza":null,"compNumeroTreno":"REG 24832","compOrientamento":["--","--","--","--","--","--","--","--","--"],"compTipologiaTreno":"regionale","compClassRitardoTxt":"","compClassRitardoLine":"regolare_line","compImgRitardo2":"","compImgRitardo":"/vt_static/img/legenda/icone_legenda/regolare.png","compRitardo":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compRitardoAndamento":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compInStazionePartenza":["","","","","","","","",""],"compInStazioneArrivo":["","","","","","","","",""],"compOrarioEffettivoArrivo":"/vt_static/img/legenda/icone_legenda/regolare.png22:32","compDurata":"","compImgCambiNumerazione":"  "},{"numeroTreno":10216,"categoria":"REG","categoriaDescrizione":null,"origine":"CUNEO","codOrigine":"S00610","destinazione":null,"codDestinazione":null,"origineEstera":null,"destinazioneEstera":null,"oraPartenzaEstera":null,"oraArrivoEstera":null,"tratta":0,"regione":0,"origineZero":null,"destinazioneZero":null,"orarioPartenzaZero":null,"orarioArrivoZero":null,"circolante":false,"codiceCliente":2,"binarioEffettivoArrivoCodice":null,"binarioEffettivoArrivoDescrizione":null,"binarioEffettivoArrivoTipo":null,"binarioProgrammatoArrivoCodice":null,"binarioProgrammatoArrivoDescrizione":"3 ","binarioEffettivoPartenzaCodice":null,"binarioEffettivoPartenzaDescrizione":null,"binarioEffettivoPartenzaTipo":null,"binarioProgrammatoPartenzaCodice":null,"binarioProgrammatoPartenzaDescrizione":null,"subTitle":null,"esisteCorsaZero":null,"orientamento":"","inStazione":false,"haCambiNumero":false,"nonPartito":false,"provvedimento":0,"riprogrammazione":"N","orarioPartenza":null,"orarioArrivo":1415655300000,"stazionePartenza":null,"stazioneArrivo":null,"statoTreno":null,"corrispondenze":null,"servizi":null,"ritardo":0,"tipoProdotto":"","compOrarioPartenzaZeroEffettivo":null,"compOrarioArrivoZeroEffettivo":null,"compOrarioPartenzaZero":null,"compOrarioArrivoZero":null,"compOrarioArrivo":"22:35","compOrarioPartenza":null,"compNumeroTreno":"REG 10216","compOrientamento":["--","--","--","--","--","--","--","--","--"],"compTipologiaTreno":"regionale","compClassRitardoTxt":"","compClassRitardoLine":"regolare_line","compImgRitardo2":"","compImgRitardo":"/vt_static/img/legenda/icone_legenda/regolare.png","compRitardo":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compRitardoAndamento":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compInStazionePartenza":["","","","","","","","",""],"compInStazioneArrivo":["","","","","","","","",""],"compOrarioEffettivoArrivo":"/vt_static/img/legenda/icone_legenda/regolare.png22:35","compDurata":"","compImgCambiNumerazione":"  "},{"numeroTreno":9580,"categoria":"ES*","categoriaDescrizione":null,"origine":"ROMA TERMINI","codOrigine":"S08409","destinazione":null,"codDestinazione":null,"origineEstera":null,"destinazioneEstera":null,"oraPartenzaEstera":null,"oraArrivoEstera":null,"tratta":0,"regione":0,"origineZero":null,"destinazioneZero":null,"orarioPartenzaZero":null,"orarioArrivoZero":null,"circolante":true,"codiceCliente":1,"binarioEffettivoArrivoCodice":null,"binarioEffettivoArrivoDescrizione":null,"binarioEffettivoArrivoTipo":null,"binarioProgrammatoArrivoCodice":null,"binarioProgrammatoArrivoDescrizione":"17 ","binarioEffettivoPartenzaCodice":null,"binarioEffettivoPartenzaDescrizione":null,"binarioEffettivoPartenzaTipo":null,"binarioProgrammatoPartenzaCodice":null,"binarioProgrammatoPartenzaDescrizione":null,"subTitle":null,"esisteCorsaZero":null,"orientamento":"A","inStazione":false,"haCambiNumero":false,"nonPartito":false,"provvedimento":0,"riprogrammazione":"N","orarioPartenza":null,"orarioArrivo":1415655600000,"stazionePartenza":null,"stazioneArrivo":null,"statoTreno":null,"corrispondenze":null,"servizi":null,"ritardo":6,"tipoProdotto":"100","compOrarioPartenzaZeroEffettivo":null,"compOrarioArrivoZeroEffettivo":null,"compOrarioPartenzaZero":null,"compOrarioArrivoZero":null,"compOrarioArrivo":"22:40","compOrarioPartenza":null,"compNumeroTreno":"ES* FR 9580","compOrientamento":["Executive in coda","Executive at the rear","Executive Zugende","Executive en queue","Executive al final del tren","Executive la coada trenului","背面のExecutive","Executive在后几节车厢","Executive в хвосте поезда"],"compTipologiaTreno":"nazionale","compClassRitardoTxt":"","compClassRitardoLine":"regolare_line","compImgRitardo2":"","compImgRitardo":"/vt_static/img/legenda/icone_legenda/regolare.png","compRitardo":["ritardo 6 min.","delay 6 min.","Verspätung 6 Min.","retard de 6 min.","retraso de 6 min.","întârziere 6 min.","遅延 6 分","误点 6分钟","опоздание на 6 минут"],"compRitardoAndamento":["con un ritardo di 6 min.","6 minutes late","mit einer Verzögerung von 6 Min.","avec un retard de 6 min.","con un retraso de 6 min.","cu o întârziere de 6 min.","6 分の遅延","误点 6分钟","с опозданием в 6 минут"],"compInStazionePartenza":["","","","","","","","",""],"compInStazioneArrivo":["","","","","","","","",""],"compOrarioEffettivoArrivo":"/vt_static/img/legenda/icone_legenda/regolare.png22:46","compDurata":"","compImgCambiNumerazione":"  "},{"numeroTreno":10029,"categoria":"REG","categoriaDescrizione":null,"origine":"BARDONECCHIA","codOrigine":"S00202","destinazione":null,"codDestinazione":null,"origineEstera":null,"destinazioneEstera":null,"oraPartenzaEstera":null,"oraArrivoEstera":null,"tratta":0,"regione":0,"origineZero":null,"destinazioneZero":null,"orarioPartenzaZero":null,"orarioArrivoZero":null,"circolante":false,"codiceCliente":2,"binarioEffettivoArrivoCodice":null,"binarioEffettivoArrivoDescrizione":null,"binarioEffettivoArrivoTipo":null,"binarioProgrammatoArrivoCodice":null,"binarioProgrammatoArrivoDescrizione":"15 ","binarioEffettivoPartenzaCodice":null,"binarioEffettivoPartenzaDescrizione":null,"binarioEffettivoPartenzaTipo":null,"binarioProgrammatoPartenzaCodice":null,"binarioProgrammatoPartenzaDescrizione":null,"subTitle":null,"esisteCorsaZero":null,"orientamento":"","inStazione":false,"haCambiNumero":false,"nonPartito":false,"provvedimento":0,"riprogrammazione":"N","orarioPartenza":null,"orarioArrivo":1415655900000,"stazionePartenza":null,"stazioneArrivo":null,"statoTreno":null,"corrispondenze":null,"servizi":null,"ritardo":0,"tipoProdotto":"","compOrarioPartenzaZeroEffettivo":null,"compOrarioArrivoZeroEffettivo":null,"compOrarioPartenzaZero":null,"compOrarioArrivoZero":null,"compOrarioArrivo":"22:45","compOrarioPartenza":null,"compNumeroTreno":"REG 10029","compOrientamento":["--","--","--","--","--","--","--","--","--"],"compTipologiaTreno":"regionale","compClassRitardoTxt":"","compClassRitardoLine":"regolare_line","compImgRitardo2":"","compImgRitardo":"/vt_static/img/legenda/icone_legenda/regolare.png","compRitardo":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compRitardoAndamento":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compInStazionePartenza":["","","","","","","","",""],"compInStazioneArrivo":["","","","","","","","",""],"compOrarioEffettivoArrivo":"/vt_static/img/legenda/icone_legenda/regolare.png22:45","compDurata":"","compImgCambiNumerazione":"  "},{"numeroTreno":9746,"categoria":"ES*","categoriaDescrizione":null,"origine":"VENEZIA SANTA LUCIA","codOrigine":"S02593","destinazione":null,"codDestinazione":null,"origineEstera":null,"destinazioneEstera":null,"oraPartenzaEstera":null,"oraArrivoEstera":null,"tratta":0,"regione":0,"origineZero":null,"destinazioneZero":null,"orarioPartenzaZero":null,"orarioArrivoZero":null,"circolante":true,"codiceCliente":1,"binarioEffettivoArrivoCodice":null,"binarioEffettivoArrivoDescrizione":null,"binarioEffettivoArrivoTipo":null,"binarioProgrammatoArrivoCodice":null,"binarioProgrammatoArrivoDescrizione":"11 ","binarioEffettivoPartenzaCodice":null,"binarioEffettivoPartenzaDescrizione":null,"binarioEffettivoPartenzaTipo":null,"binarioProgrammatoPartenzaCodice":null,"binarioProgrammatoPartenzaDescrizione":null,"subTitle":null,"esisteCorsaZero":null,"orientamento":"B","inStazione":false,"haCambiNumero":false,"nonPartito":false,"provvedimento":0,"riprogrammazione":"N","orarioPartenza":null,"orarioArrivo":1415656200000,"stazionePartenza":null,"stazioneArrivo":null,"statoTreno":null,"corrispondenze":null,"servizi":null,"ritardo":17,"tipoProdotto":"102","compOrarioPartenzaZeroEffettivo":null,"compOrarioArrivoZeroEffettivo":null,"compOrarioPartenzaZero":null,"compOrarioArrivoZero":null,"compOrarioArrivo":"22:50","compOrarioPartenza":null,"compNumeroTreno":"ES* FB 9746","compOrientamento":["1 classe in testa","1st Class in the head","1. Klasse Zugspitze ","1ère classe en tête","1ª clase al inicio del tren","clasa I la începutul trenului","1等車前方","一等车厢在前几节车厢","1 класс в головной части поезда"],"compTipologiaTreno":"nazionale","compClassRitardoTxt":"ritardo01_txt","compClassRitardoLine":"ritardo01_line","compImgRitardo2":"/vt_static/img/legenda/icone_legenda/ritardo01.png","compImgRitardo":"/vt_static/img/legenda/icone_legenda/ritardo01.png","compRitardo":["ritardo 17 min.","delay 17 min.","Verspätung 17 Min.","retard de 17 min.","retraso de 17 min.","întârziere 17 min.","遅延 17 分","误点 17分钟","опоздание на 17 минут"],"compRitardoAndamento":["con un ritardo di 17 min.","17 minutes late","mit einer Verzögerung von 17 Min.","avec un retard de 17 min.","con un retraso de 17 min.","cu o întârziere de 17 min.","17 分の遅延","误点 17分钟","с опозданием в 17 минут"],"compInStazionePartenza":["","","","","","","","",""],"compInStazioneArrivo":["","","","","","","","",""],"compOrarioEffettivoArrivo":"/vt_static/img/legenda/icone_legenda/regolare.png23:07","compDurata":"","compImgCambiNumerazione":"  "},{"numeroTreno":2030,"categoria":"REG","categoriaDescrizione":null,"origine":"MILANO CENTRALE","codOrigine":"S01700","destinazione":null,"codDestinazione":null,"origineEstera":null,"destinazioneEstera":null,"oraPartenzaEstera":null,"oraArrivoEstera":null,"tratta":0,"regione":0,"origineZero":null,"destinazioneZero":null,"orarioPartenzaZero":null,"orarioArrivoZero":null,"circolante":false,"codiceCliente":2,"binarioEffettivoArrivoCodice":null,"binarioEffettivoArrivoDescrizione":null,"binarioEffettivoArrivoTipo":null,"binarioProgrammatoArrivoCodice":null,"binarioProgrammatoArrivoDescrizione":"13 ","binarioEffettivoPartenzaCodice":null,"binarioEffettivoPartenzaDescrizione":null,"binarioEffettivoPartenzaTipo":null,"binarioProgrammatoPartenzaCodice":null,"binarioProgrammatoPartenzaDescrizione":null,"subTitle":null,"esisteCorsaZero":null,"orientamento":"","inStazione":false,"haCambiNumero":false,"nonPartito":false,"provvedimento":0,"riprogrammazione":"N","orarioPartenza":null,"orarioArrivo":1415657220000,"stazionePartenza":null,"stazioneArrivo":null,"statoTreno":null,"corrispondenze":null,"servizi":null,"ritardo":0,"tipoProdotto":"","compOrarioPartenzaZeroEffettivo":null,"compOrarioArrivoZeroEffettivo":null,"compOrarioPartenzaZero":null,"compOrarioArrivoZero":null,"compOrarioArrivo":"23:07","compOrarioPartenza":null,"compNumeroTreno":"REG 2030","compOrientamento":["--","--","--","--","--","--","--","--","--"],"compTipologiaTreno":"regionale","compClassRitardoTxt":"","compClassRitardoLine":"regolare_line","compImgRitardo2":"","compImgRitardo":"/vt_static/img/legenda/icone_legenda/regolare.png","compRitardo":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compRitardoAndamento":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compInStazionePartenza":["","","","","","","","",""],"compInStazioneArrivo":["","","","","","","","",""],"compOrarioEffettivoArrivo":"/vt_static/img/legenda/icone_legenda/regolare.png23:07","compDurata":"","compImgCambiNumerazione":"  "},{"numeroTreno":9654,"categoria":"ES*","categoriaDescrizione":null,"origine":"ROMA TERMINI","codOrigine":"S08409","destinazione":null,"codDestinazione":null,"origineEstera":null,"destinazioneEstera":null,"oraPartenzaEstera":null,"oraArrivoEstera":null,"tratta":0,"regione":0,"origineZero":null,"destinazioneZero":null,"orarioPartenzaZero":null,"orarioArrivoZero":null,"circolante":true,"codiceCliente":1,"binarioEffettivoArrivoCodice":null,"binarioEffettivoArrivoDescrizione":null,"binarioEffettivoArrivoTipo":null,"binarioProgrammatoArrivoCodice":null,"binarioProgrammatoArrivoDescrizione":"16 ","binarioEffettivoPartenzaCodice":null,"binarioEffettivoPartenzaDescrizione":null,"binarioEffettivoPartenzaTipo":null,"binarioProgrammatoPartenzaCodice":null,"binarioProgrammatoPartenzaDescrizione":null,"subTitle":null,"esisteCorsaZero":null,"orientamento":"B","inStazione":false,"haCambiNumero":false,"nonPartito":false,"provvedimento":0,"riprogrammazione":"N","orarioPartenza":null,"orarioArrivo":1415657520000,"stazionePartenza":null,"stazioneArrivo":null,"statoTreno":null,"corrispondenze":null,"servizi":null,"ritardo":8,"tipoProdotto":"100","compOrarioPartenzaZeroEffettivo":null,"compOrarioArrivoZeroEffettivo":null,"compOrarioPartenzaZero":null,"compOrarioArrivoZero":null,"compOrarioArrivo":"23:12","compOrarioPartenza":null,"compNumeroTreno":"ES* FR 9654","compOrientamento":["Executive in testa","Executive in the head","Executive Zugspitze","Executive en tête","Executive al inicio del tren","Executive la începutul trenului","頭の中でExecutive","Executive在前几节车厢","Executive в головной части поезда"],"compTipologiaTreno":"nazionale","compClassRitardoTxt":"","compClassRitardoLine":"regolare_line","compImgRitardo2":"","compImgRitardo":"/vt_static/img/legenda/icone_legenda/regolare.png","compRitardo":["ritardo 8 min.","delay 8 min.","Verspätung 8 Min.","retard de 8 min.","retraso de 8 min.","întârziere 8 min.","遅延 8 分","误点 8分钟","опоздание на 8 минут"],"compRitardoAndamento":["con un ritardo di 8 min.","8 minutes late","mit einer Verzögerung von 8 Min.","avec un retard de 8 min.","con un retraso de 8 min.","cu o întârziere de 8 min.","8 分の遅延","误点 8分钟","с опозданием в 8 минут"],"compInStazionePartenza":["","","","","","","","",""],"compInStazioneArrivo":["","","","","","","","",""],"compOrarioEffettivoArrivo":"/vt_static/img/legenda/icone_legenda/regolare.png23:20","compDurata":"","compImgCambiNumerazione":"  "},{"numeroTreno":24877,"categoria":"REG","categoriaDescrizione":null,"origine":"SUSA","codOrigine":"S00260","destinazione":null,"codDestinazione":null,"origineEstera":null,"destinazioneEstera":null,"oraPartenzaEstera":null,"oraArrivoEstera":null,"tratta":0,"regione":0,"origineZero":null,"destinazioneZero":null,"orarioPartenzaZero":null,"orarioArrivoZero":null,"circolante":false,"codiceCliente":2,"binarioEffettivoArrivoCodice":null,"binarioEffettivoArrivoDescrizione":null,"binarioEffettivoArrivoTipo":null,"binarioProgrammatoArrivoCodice":null,"binarioProgrammatoArrivoDescrizione":"4 ","binarioEffettivoPartenzaCodice":null,"binarioEffettivoPartenzaDescrizione":null,"binarioEffettivoPartenzaTipo":null,"binarioProgrammatoPartenzaCodice":null,"binarioProgrammatoPartenzaDescrizione":null,"subTitle":null,"esisteCorsaZero":null,"orientamento":"","inStazione":false,"haCambiNumero":false,"nonPartito":false,"provvedimento":0,"riprogrammazione":"N","orarioPartenza":null,"orarioArrivo":1415657820000,"stazionePartenza":null,"stazioneArrivo":null,"statoTreno":null,"corrispondenze":null,"servizi":null,"ritardo":0,"tipoProdotto":"","compOrarioPartenzaZeroEffettivo":null,"compOrarioArrivoZeroEffettivo":null,"compOrarioPartenzaZero":null,"compOrarioArrivoZero":null,"compOrarioArrivo":"23:17","compOrarioPartenza":null,"compNumeroTreno":"REG 24877","compOrientamento":["--","--","--","--","--","--","--","--","--"],"compTipologiaTreno":"regionale","compClassRitardoTxt":"","compClassRitardoLine":"regolare_line","compImgRitardo2":"","compImgRitardo":"/vt_static/img/legenda/icone_legenda/regolare.png","compRitardo":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compRitardoAndamento":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compInStazionePartenza":["","","","","","","","",""],"compInStazioneArrivo":["","","","","","","","",""],"compOrarioEffettivoArrivo":"/vt_static/img/legenda/icone_legenda/regolare.png23:17","compDurata":"","compImgCambiNumerazione":"  "},{"numeroTreno":33800,"categoria":"REG","categoriaDescrizione":null,"origine":"SAVONA","codOrigine":"S04801","destinazione":null,"codDestinazione":null,"origineEstera":null,"destinazioneEstera":null,"oraPartenzaEstera":null,"oraArrivoEstera":null,"tratta":0,"regione":0,"origineZero":null,"destinazioneZero":null,"orarioPartenzaZero":null,"orarioArrivoZero":null,"circolante":false,"codiceCliente":2,"binarioEffettivoArrivoCodice":null,"binarioEffettivoArrivoDescrizione":null,"binarioEffettivoArrivoTipo":null,"binarioProgrammatoArrivoCodice":null,"binarioProgrammatoArrivoDescrizione":null,"binarioEffettivoPartenzaCodice":null,"binarioEffettivoPartenzaDescrizione":null,"binarioEffettivoPartenzaTipo":null,"binarioProgrammatoPartenzaCodice":null,"binarioProgrammatoPartenzaDescrizione":null,"subTitle":null,"esisteCorsaZero":null,"orientamento":"","inStazione":false,"haCambiNumero":false,"nonPartito":false,"provvedimento":0,"riprogrammazione":"N","orarioPartenza":null,"orarioArrivo":1415658900000,"stazionePartenza":null,"stazioneArrivo":null,"statoTreno":null,"corrispondenze":null,"servizi":null,"ritardo":0,"tipoProdotto":"","compOrarioPartenzaZeroEffettivo":null,"compOrarioArrivoZeroEffettivo":null,"compOrarioPartenzaZero":null,"compOrarioArrivoZero":null,"compOrarioArrivo":"23:35","compOrarioPartenza":null,"compNumeroTreno":"REG 33800","compOrientamento":["--","--","--","--","--","--","--","--","--"],"compTipologiaTreno":"regionale","compClassRitardoTxt":"","compClassRitardoLine":"regolare_line","compImgRitardo2":"","compImgRitardo":"/vt_static/img/legenda/icone_legenda/regolare.png","compRitardo":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compRitardoAndamento":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compInStazionePartenza":["","","","","","","","",""],"compInStazioneArrivo":["","","","","","","","",""],"compOrarioEffettivoArrivo":"/vt_static/img/legenda/icone_legenda/regolare.png23:35","compDurata":"","compImgCambiNumerazione":"  "},{"numeroTreno":2532,"categoria":"REG","categoriaDescrizione":null,"origine":"GENOVA BRIGNOLE","codOrigine":"S04702","destinazione":null,"codDestinazione":null,"origineEstera":null,"destinazioneEstera":null,"oraPartenzaEstera":null,"oraArrivoEstera":null,"tratta":0,"regione":0,"origineZero":null,"destinazioneZero":null,"orarioPartenzaZero":null,"orarioArrivoZero":null,"circolante":false,"codiceCliente":2,"binarioEffettivoArrivoCodice":null,"binarioEffettivoArrivoDescrizione":null,"binarioEffettivoArrivoTipo":null,"binarioProgrammatoArrivoCodice":null,"binarioProgrammatoArrivoDescrizione":"5 ","binarioEffettivoPartenzaCodice":null,"binarioEffettivoPartenzaDescrizione":null,"binarioEffettivoPartenzaTipo":null,"binarioProgrammatoPartenzaCodice":null,"binarioProgrammatoPartenzaDescrizione":null,"subTitle":null,"esisteCorsaZero":null,"orientamento":"","inStazione":false,"haCambiNumero":false,"nonPartito":false,"provvedimento":0,"riprogrammazione":"N","orarioPartenza":null,"orarioArrivo":1415659200000,"stazionePartenza":null,"stazioneArrivo":null,"statoTreno":null,"corrispondenze":null,"servizi":null,"ritardo":0,"tipoProdotto":"","compOrarioPartenzaZeroEffettivo":null,"compOrarioArrivoZeroEffettivo":null,"compOrarioPartenzaZero":null,"compOrarioArrivoZero":null,"compOrarioArrivo":"23:40","compOrarioPartenza":null,"compNumeroTreno":"REG 2532","compOrientamento":["--","--","--","--","--","--","--","--","--"],"compTipologiaTreno":"regionale","compClassRitardoTxt":"","compClassRitardoLine":"regolare_line","compImgRitardo2":"","compImgRitardo":"/vt_static/img/legenda/icone_legenda/regolare.png","compRitardo":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compRitardoAndamento":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compInStazionePartenza":["","","","","","","","",""],"compInStazioneArrivo":["","","","","","","","",""],"compOrarioEffettivoArrivo":"/vt_static/img/legenda/icone_legenda/regolare.png23:40","compDurata":"","compImgCambiNumerazione":"  "},{"numeroTreno":10031,"categoria":"REG","categoriaDescrizione":null,"origine":"BARDONECCHIA","codOrigine":"S00202","destinazione":null,"codDestinazione":null,"origineEstera":null,"destinazioneEstera":null,"oraPartenzaEstera":null,"oraArrivoEstera":null,"tratta":0,"regione":0,"origineZero":null,"destinazioneZero":null,"orarioPartenzaZero":null,"orarioArrivoZero":null,"circolante":false,"codiceCliente":2,"binarioEffettivoArrivoCodice":null,"binarioEffettivoArrivoDescrizione":null,"binarioEffettivoArrivoTipo":null,"binarioProgrammatoArrivoCodice":null,"binarioProgrammatoArrivoDescrizione":"15 ","binarioEffettivoPartenzaCodice":null,"binarioEffettivoPartenzaDescrizione":null,"binarioEffettivoPartenzaTipo":null,"binarioProgrammatoPartenzaCodice":null,"binarioProgrammatoPartenzaDescrizione":null,"subTitle":null,"esisteCorsaZero":null,"orientamento":"","inStazione":false,"haCambiNumero":false,"nonPartito":false,"provvedimento":0,"riprogrammazione":"N","orarioPartenza":null,"orarioArrivo":1415659500000,"stazionePartenza":null,"stazioneArrivo":null,"statoTreno":null,"corrispondenze":null,"servizi":null,"ritardo":0,"tipoProdotto":"","compOrarioPartenzaZeroEffettivo":null,"compOrarioArrivoZeroEffettivo":null,"compOrarioPartenzaZero":null,"compOrarioArrivoZero":null,"compOrarioArrivo":"23:45","compOrarioPartenza":null,"compNumeroTreno":"REG 10031","compOrientamento":["--","--","--","--","--","--","--","--","--"],"compTipologiaTreno":"regionale","compClassRitardoTxt":"","compClassRitardoLine":"regolare_line","compImgRitardo2":"","compImgRitardo":"/vt_static/img/legenda/icone_legenda/regolare.png","compRitardo":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compRitardoAndamento":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compInStazionePartenza":["","","","","","","","",""],"compInStazioneArrivo":["","","","","","","","",""],"compOrarioEffettivoArrivo":"/vt_static/img/legenda/icone_legenda/regolare.png23:45","compDurata":"","compImgCambiNumerazione":"  "},{"numeroTreno":2032,"categoria":"REG","categoriaDescrizione":null,"origine":"MILANO CENTRALE","codOrigine":"S01700","destinazione":null,"codDestinazione":null,"origineEstera":null,"destinazioneEstera":null,"oraPartenzaEstera":null,"oraArrivoEstera":null,"tratta":0,"regione":0,"origineZero":null,"destinazioneZero":null,"orarioPartenzaZero":null,"orarioArrivoZero":null,"circolante":false,"codiceCliente":2,"binarioEffettivoArrivoCodice":null,"binarioEffettivoArrivoDescrizione":null,"binarioEffettivoArrivoTipo":null,"binarioProgrammatoArrivoCodice":null,"binarioProgrammatoArrivoDescrizione":"13 ","binarioEffettivoPartenzaCodice":null,"binarioEffettivoPartenzaDescrizione":null,"binarioEffettivoPartenzaTipo":null,"binarioProgrammatoPartenzaCodice":null,"binarioProgrammatoPartenzaDescrizione":null,"subTitle":null,"esisteCorsaZero":null,"orientamento":"","inStazione":false,"haCambiNumero":false,"nonPartito":false,"provvedimento":0,"riprogrammazione":"N","orarioPartenza":null,"orarioArrivo":1415661000000,"stazionePartenza":null,"stazioneArrivo":null,"statoTreno":null,"corrispondenze":null,"servizi":null,"ritardo":0,"tipoProdotto":"","compOrarioPartenzaZeroEffettivo":null,"compOrarioArrivoZeroEffettivo":null,"compOrarioPartenzaZero":null,"compOrarioArrivoZero":null,"compOrarioArrivo":"00:10","compOrarioPartenza":null,"compNumeroTreno":"REG 2032","compOrientamento":["--","--","--","--","--","--","--","--","--"],"compTipologiaTreno":"regionale","compClassRitardoTxt":"","compClassRitardoLine":"regolare_line","compImgRitardo2":"","compImgRitardo":"/vt_static/img/legenda/icone_legenda/regolare.png","compRitardo":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compRitardoAndamento":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compInStazionePartenza":["","","","","","","","",""],"compInStazioneArrivo":["","","","","","","","",""],"compOrarioEffettivoArrivo":"/vt_static/img/legenda/icone_legenda/regolare.png00:10","compDurata":"","compImgCambiNumerazione":"  "}]
87
+ JSON
88
+
89
+ # stubs for Schedule.find_station_departures
90
+ stub_request(:get, "http://www.viaggiatreno.it/viaggiatrenonew/resteasy/viaggiatreno/partenze/S00219/Mon%20Nov%2010%202014%2022:18:44%20GMT+0100%20(CET)").
91
+ to_return(status: 200, headers: {}, body: <<-JSON.squish)
92
+ [{"numeroTreno":10030,"categoria":"REG","categoriaDescrizione":null,"origine":null,"codOrigine":"S00219","destinazione":"BARDONECCHIA","codDestinazione":null,"origineEstera":null,"destinazioneEstera":null,"oraPartenzaEstera":null,"oraArrivoEstera":null,"tratta":0,"regione":0,"origineZero":null,"destinazioneZero":null,"orarioPartenzaZero":null,"orarioArrivoZero":null,"circolante":false,"codiceCliente":2,"binarioEffettivoArrivoCodice":null,"binarioEffettivoArrivoDescrizione":null,"binarioEffettivoArrivoTipo":null,"binarioProgrammatoArrivoCodice":null,"binarioProgrammatoArrivoDescrizione":null,"binarioEffettivoPartenzaCodice":null,"binarioEffettivoPartenzaDescrizione":null,"binarioEffettivoPartenzaTipo":null,"binarioProgrammatoPartenzaCodice":null,"binarioProgrammatoPartenzaDescrizione":"18 ","subTitle":null,"esisteCorsaZero":null,"orientamento":"","inStazione":false,"haCambiNumero":false,"nonPartito":false,"provvedimento":0,"riprogrammazione":"N","orarioPartenza":1415654400000,"orarioArrivo":null,"stazionePartenza":null,"stazioneArrivo":null,"statoTreno":null,"corrispondenze":null,"servizi":null,"ritardo":0,"tipoProdotto":"","compOrarioPartenzaZeroEffettivo":"22:20","compOrarioArrivoZeroEffettivo":null,"compOrarioPartenzaZero":"22:20","compOrarioArrivoZero":null,"compOrarioArrivo":null,"compOrarioPartenza":"22:20","compNumeroTreno":"REG 10030","compOrientamento":["--","--","--","--","--","--","--","--","--"],"compTipologiaTreno":"regionale","compClassRitardoTxt":"","compClassRitardoLine":"regolare_line","compImgRitardo2":"","compImgRitardo":"/vt_static/img/legenda/icone_legenda/regolare.png","compRitardo":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compRitardoAndamento":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compInStazionePartenza":["","","","","","","","",""],"compInStazioneArrivo":["","","","","","","","",""],"compOrarioEffettivoArrivo":null,"compDurata":"","compImgCambiNumerazione":"  "},{"numeroTreno":23601,"categoria":"REG","categoriaDescrizione":null,"origine":null,"codOrigine":"S00219","destinazione":"ALESSANDRIA","codDestinazione":null,"origineEstera":null,"destinazioneEstera":null,"oraPartenzaEstera":null,"oraArrivoEstera":null,"tratta":0,"regione":0,"origineZero":null,"destinazioneZero":null,"orarioPartenzaZero":null,"orarioArrivoZero":null,"circolante":false,"codiceCliente":2,"binarioEffettivoArrivoCodice":null,"binarioEffettivoArrivoDescrizione":null,"binarioEffettivoArrivoTipo":null,"binarioProgrammatoArrivoCodice":null,"binarioProgrammatoArrivoDescrizione":null,"binarioEffettivoPartenzaCodice":null,"binarioEffettivoPartenzaDescrizione":null,"binarioEffettivoPartenzaTipo":null,"binarioProgrammatoPartenzaCodice":null,"binarioProgrammatoPartenzaDescrizione":"8 ","subTitle":null,"esisteCorsaZero":null,"orientamento":"","inStazione":false,"haCambiNumero":false,"nonPartito":false,"provvedimento":0,"riprogrammazione":"N","orarioPartenza":1415654400000,"orarioArrivo":null,"stazionePartenza":null,"stazioneArrivo":null,"statoTreno":null,"corrispondenze":null,"servizi":null,"ritardo":0,"tipoProdotto":"","compOrarioPartenzaZeroEffettivo":"22:20","compOrarioArrivoZeroEffettivo":null,"compOrarioPartenzaZero":"22:20","compOrarioArrivoZero":null,"compOrarioArrivo":null,"compOrarioPartenza":"22:20","compNumeroTreno":"REG 23601","compOrientamento":["--","--","--","--","--","--","--","--","--"],"compTipologiaTreno":"regionale","compClassRitardoTxt":"","compClassRitardoLine":"regolare_line","compImgRitardo2":"","compImgRitardo":"/vt_static/img/legenda/icone_legenda/regolare.png","compRitardo":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compRitardoAndamento":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compInStazionePartenza":["","","","","","","","",""],"compInStazioneArrivo":["","","","","","","","",""],"compOrarioEffettivoArrivo":null,"compDurata":"","compImgCambiNumerazione":"  "},{"numeroTreno":24835,"categoria":"REG","categoriaDescrizione":null,"origine":null,"codOrigine":"S00219","destinazione":"IVREA","codDestinazione":null,"origineEstera":null,"destinazioneEstera":null,"oraPartenzaEstera":null,"oraArrivoEstera":null,"tratta":0,"regione":0,"origineZero":null,"destinazioneZero":null,"orarioPartenzaZero":null,"orarioArrivoZero":null,"circolante":false,"codiceCliente":2,"binarioEffettivoArrivoCodice":null,"binarioEffettivoArrivoDescrizione":null,"binarioEffettivoArrivoTipo":null,"binarioProgrammatoArrivoCodice":null,"binarioProgrammatoArrivoDescrizione":null,"binarioEffettivoPartenzaCodice":null,"binarioEffettivoPartenzaDescrizione":null,"binarioEffettivoPartenzaTipo":null,"binarioProgrammatoPartenzaCodice":null,"binarioProgrammatoPartenzaDescrizione":"15 ","subTitle":null,"esisteCorsaZero":null,"orientamento":"","inStazione":false,"haCambiNumero":false,"nonPartito":false,"provvedimento":0,"riprogrammazione":"N","orarioPartenza":1415654880000,"orarioArrivo":null,"stazionePartenza":null,"stazioneArrivo":null,"statoTreno":null,"corrispondenze":null,"servizi":null,"ritardo":0,"tipoProdotto":"","compOrarioPartenzaZeroEffettivo":"22:28","compOrarioArrivoZeroEffettivo":null,"compOrarioPartenzaZero":"22:28","compOrarioArrivoZero":null,"compOrarioArrivo":null,"compOrarioPartenza":"22:28","compNumeroTreno":"REG 24835","compOrientamento":["--","--","--","--","--","--","--","--","--"],"compTipologiaTreno":"regionale","compClassRitardoTxt":"","compClassRitardoLine":"regolare_line","compImgRitardo2":"","compImgRitardo":"/vt_static/img/legenda/icone_legenda/regolare.png","compRitardo":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compRitardoAndamento":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compInStazionePartenza":["","","","","","","","",""],"compInStazioneArrivo":["","","","","","","","",""],"compOrarioEffettivoArrivo":null,"compDurata":"","compImgCambiNumerazione":"  "},{"numeroTreno":24876,"categoria":"REG","categoriaDescrizione":null,"origine":null,"codOrigine":"S00219","destinazione":"BUSSOLENO","codDestinazione":null,"origineEstera":null,"destinazioneEstera":null,"oraPartenzaEstera":null,"oraArrivoEstera":null,"tratta":0,"regione":0,"origineZero":null,"destinazioneZero":null,"orarioPartenzaZero":null,"orarioArrivoZero":null,"circolante":false,"codiceCliente":2,"binarioEffettivoArrivoCodice":null,"binarioEffettivoArrivoDescrizione":null,"binarioEffettivoArrivoTipo":null,"binarioProgrammatoArrivoCodice":null,"binarioProgrammatoArrivoDescrizione":null,"binarioEffettivoPartenzaCodice":null,"binarioEffettivoPartenzaDescrizione":null,"binarioEffettivoPartenzaTipo":null,"binarioProgrammatoPartenzaCodice":null,"binarioProgrammatoPartenzaDescrizione":"14 ","subTitle":null,"esisteCorsaZero":null,"orientamento":"","inStazione":false,"haCambiNumero":false,"nonPartito":false,"provvedimento":0,"riprogrammazione":"N","orarioPartenza":1415655900000,"orarioArrivo":null,"stazionePartenza":null,"stazioneArrivo":null,"statoTreno":null,"corrispondenze":null,"servizi":null,"ritardo":0,"tipoProdotto":"","compOrarioPartenzaZeroEffettivo":"22:45","compOrarioArrivoZeroEffettivo":null,"compOrarioPartenzaZero":"22:45","compOrarioArrivoZero":null,"compOrarioArrivo":null,"compOrarioPartenza":"22:45","compNumeroTreno":"REG 24876","compOrientamento":["--","--","--","--","--","--","--","--","--"],"compTipologiaTreno":"regionale","compClassRitardoTxt":"","compClassRitardoLine":"regolare_line","compImgRitardo2":"","compImgRitardo":"/vt_static/img/legenda/icone_legenda/regolare.png","compRitardo":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compRitardoAndamento":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compInStazionePartenza":["","","","","","","","",""],"compInStazioneArrivo":["","","","","","","","",""],"compOrarioEffettivoArrivo":null,"compDurata":"","compImgCambiNumerazione":"  "},{"numeroTreno":2033,"categoria":"REG","categoriaDescrizione":null,"origine":null,"codOrigine":"S00219","destinazione":"MILANO CENTRALE","codDestinazione":null,"origineEstera":null,"destinazioneEstera":null,"oraPartenzaEstera":null,"oraArrivoEstera":null,"tratta":0,"regione":0,"origineZero":null,"destinazioneZero":null,"orarioPartenzaZero":null,"orarioArrivoZero":null,"circolante":false,"codiceCliente":2,"binarioEffettivoArrivoCodice":null,"binarioEffettivoArrivoDescrizione":null,"binarioEffettivoArrivoTipo":null,"binarioProgrammatoArrivoCodice":null,"binarioProgrammatoArrivoDescrizione":null,"binarioEffettivoPartenzaCodice":null,"binarioEffettivoPartenzaDescrizione":null,"binarioEffettivoPartenzaTipo":null,"binarioProgrammatoPartenzaCodice":null,"binarioProgrammatoPartenzaDescrizione":"13 ","subTitle":null,"esisteCorsaZero":null,"orientamento":"","inStazione":false,"haCambiNumero":false,"nonPartito":false,"provvedimento":0,"riprogrammazione":"N","orarioPartenza":1415656440000,"orarioArrivo":null,"stazionePartenza":null,"stazioneArrivo":null,"statoTreno":null,"corrispondenze":null,"servizi":null,"ritardo":0,"tipoProdotto":"","compOrarioPartenzaZeroEffettivo":"22:54","compOrarioArrivoZeroEffettivo":null,"compOrarioPartenzaZero":"22:54","compOrarioArrivoZero":null,"compOrarioArrivo":null,"compOrarioPartenza":"22:54","compNumeroTreno":"REG 2033","compOrientamento":["--","--","--","--","--","--","--","--","--"],"compTipologiaTreno":"regionale","compClassRitardoTxt":"","compClassRitardoLine":"regolare_line","compImgRitardo2":"","compImgRitardo":"/vt_static/img/legenda/icone_legenda/regolare.png","compRitardo":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compRitardoAndamento":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compInStazionePartenza":["","","","","","","","",""],"compInStazioneArrivo":["","","","","","","","",""],"compOrarioEffettivoArrivo":null,"compDurata":"","compImgCambiNumerazione":"  "},{"numeroTreno":10221,"categoria":"REG","categoriaDescrizione":null,"origine":null,"codOrigine":"S00219","destinazione":"CUNEO","codDestinazione":null,"origineEstera":null,"destinazioneEstera":null,"oraPartenzaEstera":null,"oraArrivoEstera":null,"tratta":0,"regione":0,"origineZero":null,"destinazioneZero":null,"orarioPartenzaZero":null,"orarioArrivoZero":null,"circolante":false,"codiceCliente":2,"binarioEffettivoArrivoCodice":null,"binarioEffettivoArrivoDescrizione":null,"binarioEffettivoArrivoTipo":null,"binarioProgrammatoArrivoCodice":null,"binarioProgrammatoArrivoDescrizione":null,"binarioEffettivoPartenzaCodice":null,"binarioEffettivoPartenzaDescrizione":null,"binarioEffettivoPartenzaTipo":null,"binarioProgrammatoPartenzaCodice":null,"binarioProgrammatoPartenzaDescrizione":"3 ","subTitle":null,"esisteCorsaZero":null,"orientamento":"","inStazione":false,"haCambiNumero":false,"nonPartito":false,"provvedimento":0,"riprogrammazione":"N","orarioPartenza":1415658300000,"orarioArrivo":null,"stazionePartenza":null,"stazioneArrivo":null,"statoTreno":null,"corrispondenze":null,"servizi":null,"ritardo":0,"tipoProdotto":"","compOrarioPartenzaZeroEffettivo":"23:25","compOrarioArrivoZeroEffettivo":null,"compOrarioPartenzaZero":"23:25","compOrarioArrivoZero":null,"compOrarioArrivo":null,"compOrarioPartenza":"23:25","compNumeroTreno":"REG 10221","compOrientamento":["--","--","--","--","--","--","--","--","--"],"compTipologiaTreno":"regionale","compClassRitardoTxt":"","compClassRitardoLine":"regolare_line","compImgRitardo2":"","compImgRitardo":"/vt_static/img/legenda/icone_legenda/regolare.png","compRitardo":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compRitardoAndamento":["in orario","on time","pünktlich","à l'heure","en horario","conform orarului","定刻","按时","по расписанию"],"compInStazionePartenza":["","","","","","","","",""],"compInStazioneArrivo":["","","","","","","","",""],"compOrarioEffettivoArrivo":null,"compDurata":"","compImgCambiNumerazione":"  "}]
93
+ JSON
80
94
  end
81
95
  end
@@ -1,17 +1,17 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe StationMaster::Ask::Station do
4
- let(:station) { StationMaster::Ask::Station }
3
+ describe StationMaster::Station do
4
+ let(:station) { StationMaster::Station }
5
5
 
6
6
  context "#all" do
7
- let(:all_stations) { StationMaster::Ask::Station.all }
7
+ let(:all_stations) { StationMaster::Station.all }
8
8
 
9
9
  it "returns all stations" do
10
10
  expect(station).to respond_to(:all)
11
11
  expect(all_stations).to be_a(Array)
12
12
  expect(all_stations).not_to be_empty
13
13
  expect(all_stations.count).to eq(3)
14
- expect(all_stations).to eq([
14
+ expect(all_stations.map(&:to_hash)).to eq([
15
15
  {
16
16
  station_code: "S11212",
17
17
  latitude: 40.787682,
@@ -37,7 +37,7 @@ describe StationMaster::Ask::Station do
37
37
  end
38
38
 
39
39
  context "#find_by_city" do
40
- let(:found_stations) { StationMaster::Ask::Station.find_by_city('Tor') }
40
+ let(:found_stations) { StationMaster::Station.find_by_city('Tor') }
41
41
 
42
42
  it "returns stations that match with city name" do
43
43
  expect(station).to respond_to(:find_by_city)
@@ -1,7 +1,7 @@
1
1
  # coding: utf-8
2
2
  lib = File.expand_path('../lib', __FILE__)
3
3
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require 'station_master'
4
+ require 'station_master/version'
5
5
 
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = "station_master"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: station_master
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stefano Ordine
@@ -28,11 +28,12 @@ files:
28
28
  - Rakefile
29
29
  - lib/station_master.rb
30
30
  - lib/station_master/ask.rb
31
- - lib/station_master/ask/departure.rb
32
- - lib/station_master/ask/station.rb
31
+ - lib/station_master/schedule.rb
32
+ - lib/station_master/station.rb
33
33
  - lib/station_master/version.rb
34
+ - spec/schedule_spec.rb
34
35
  - spec/spec_helper.rb
35
- - spec/station_master_spec.rb
36
+ - spec/station_spec.rb
36
37
  - station_master.gemspec
37
38
  homepage: https://github.com/StefanoOrdine/station_master
38
39
  licenses:
@@ -59,5 +60,6 @@ signing_key:
59
60
  specification_version: 4
60
61
  summary: This gem provide an interface to an api from www.viaggiatreno.it public site.
61
62
  test_files:
63
+ - spec/schedule_spec.rb
62
64
  - spec/spec_helper.rb
63
- - spec/station_master_spec.rb
65
+ - spec/station_spec.rb
@@ -1,7 +0,0 @@
1
- module StationMaster
2
- module Ask
3
- class Departure
4
-
5
- end
6
- end
7
- end
@@ -1,72 +0,0 @@
1
- module StationMaster
2
- module Ask
3
- class Station
4
- class << self
5
- def all
6
- stations_array = []
7
- index = 0
8
- begin
9
- response = MultiJson::load(remote_call(:stations, page: index), symbolize_keys: true).inject([]) do |array, station|
10
- station_code = station[:codiceStazione]
11
- latitude = station[:lat]
12
- longitude = station[:lon]
13
- region_id = find_region_id_by_code(station[:codiceStazione])
14
- station_details = find_details(station_code, region_id)
15
- location = (station_details[:localita][:nomeLungo] || '').split.map(&:capitalize).join(' ') if station_details
16
-
17
- array << {
18
- station_code: station_code,
19
- latitude: latitude,
20
- longitude: longitude,
21
- region_id: region_id,
22
- location: location
23
- }
24
- end
25
- stations_array += response
26
- index += 1
27
- end while response.any?
28
-
29
- stations_array
30
- end
31
-
32
- def find_by_city(city)
33
- remote_call(:search, { city: city }).split(/\n/).map(&:strip).inject({}) { |hash, entry| hash.merge!({ entry.split('|').first.to_sym => entry.split('|').last }) }
34
- end
35
-
36
- def find_region_id_by_code(station_code)
37
- remote_call(:region_id, station_code: station_code)
38
- end
39
-
40
- def find_details(station_code, region_id)
41
- MultiJson::load(remote_call(:station_details, station_code: station_code, region_id: region_id), symbolize_keys: true)
42
- end
43
-
44
- private
45
- def remote_call(resource, options = {})
46
- request_url = case resource
47
- when :stations then
48
- STATION_MASTER_BASE_URL + "elencoStazioni/#{options[:page] || 0}"
49
- when :region_id then
50
- STATION_MASTER_BASE_URL + "regione/#{options[:station_code] || 0}"
51
- when :station_details
52
- STATION_MASTER_BASE_URL + "dettaglioStazione/#{options[:station_code] || 0}/#{options[:region_id] || 0}"
53
- when :search
54
- STATION_MASTER_BASE_URL + "autocompletaStazione/#{options[:city] || ''}"
55
- else
56
- ''
57
- end
58
-
59
- remote_call!(request_url)
60
- end
61
-
62
- def remote_call!(request_url)
63
- url = URI.parse(request_url)
64
- http = Net::HTTP.new(url.host, url.port)
65
- http.read_timeout = 2
66
-
67
- http.get(url).body
68
- end
69
- end
70
- end
71
- end
72
- end