VM - Vehicle Monitoring

Palveluosoite

Vehicle Motion -data on saatavilla JSON-muotoon konvertoituna osoitteesta :

http://data.foli.fi/siri/vm

URL-osoite on pollattava osoite. Suositeltava pollausväli on kolme sekuntia. (Edustajärjestelmä cacheaa viimeisimmän tuloksen aina kahdeksi sekunniksi).

Palveluun kytkeytyminen ja vastaukset

Mikäli palvelu ei ole kytkeytymishetkellä aktiivinen, URL palauttaa viestin :

http://data.foli.fi/siri/vm
{"sys":"VM","status":"PENDING","servertime":1433246350,"result":[]}
	

Palvelu alkaa tuottaa VM-data vuorokauden ajasta ja liikennöinnistä riippuen noin 5-30 sekunnin viiveellä.

Varsinainen vastausdata on JSON-muotoista (jäsentämätöntä) SIRI-XML -viesteistä purettua dataa. Esimerkkidata jäsennettynä :

http://data.foli.fi/siri/vm
{
    "sys" : "VM",
    "status" : "OK",
    "servertime" : 1433246786,
    "result" : {
	"responsetimestamp" : 1433246783,
	"producerref" : "jlt",
	"responsemessageidentifier" : "western-62",
	"status" : true,
	"moredata" : false,
	"vehicles" : {
	    "550011" : {
		"recordedattime" : 1433246781,
		"validuntiltime" : 1433247381,
		"linkdistance" : 281,
		"percentage" : 41.28,
		"lineref" : "14",
		"directionref" : "1",
		"publishedlinename" : "14",
		"operatorref" : "55",
		"originref" : "246",
		"originname" : "Saram\u00e4ki",
		"destinationref" : "395",
		"destinationname" : "Erikvalla",
		"originaimeddeparturetime" : 1433258100,
		"destinationaimedarrivaltime" : 1433261580,
		"monitored" : true,
		"incongestion" : false,
		"inpanic" : false,
		"longitude" : 22.240084,
		"latitude" : 60.431302,
		"delay" : "-PT13539S",
		"vehicleref" : "550011",
		"previouscalls" : [
		    {
			"stoppointref" : "80",
			"visitnumber" : 52,
			"stoppointname" : "Korppolaism\u00e4ki",
			"aimedarrivaltime" : 1433260320,
			"aimeddeparturetime" : 1433260320
                    }
		],
		"vehicleatstop" : false,
		"next_stoppointref" : "81",
		"next_stoppointname" : "Majakkaranta",
		"next_destinationdisplay" : "Erikvalla",
		"next_aimedarrivaltime" : 1433260320,
		"next_expectedarrivaltime" : 1433246507,
		"next_aimeddeparturetime" : 1433260380,
		"next_expecteddeparturetime" : 1433246567,
		"onwardcalls" : [
		    {
			"stoppointref" : "82",
			"visitnumber" : 54,
			"stoppointname" : "Pihlajaniemi",
			"aimedarrivaltime" : 1433260380,
			"expectedarrivaltime" : 1433246841,
			"aimeddeparturetime" : 1433260440,
			"expecteddeparturetime" : 1433246901
                    }
		]
            },
	    "550014" : {

/* ...(snip)... */
	

VM-viestistä tulee huomioida, että vastauspaketti on hyvin suuri ja saattaa kuluttaa runsaasti mobiililaitteiden datakaistaa. Mikäli VM-dataa todella käytetään, suositeltavaa olisi purkaa data omalla edustapalvelimella ajoneuvokohtaisiksi pienemmiksi lohkoiksi.

Mahdollisesti tämä purkaminen lisätään myös data.foli.fi -rajapintaan. Kyseessä on vain valitettavasti palvelinkuorman kannalta suhteellisen raskas prosessi johon ei toistaiseksi voi sitoutua. Ajoneuvoja on kuitenkin yhtäaikaisesti liikkeellä 100-200 kpl.

Mikäli taustajärjestelmä ei tuota dataa, palvelu palauttaa virheen.

http://data.foli.fi/siri/vm
{"sys":"VM","status":"NO_SIRI_DATA","servertime":1433246350,"result":[]}