Pääkaupunkiseudun palvelukartta on hulppea, mutta ehkä kuitenkin aika tuntematon, tietovarasto kaikista Helsingin, Espoon, Vantaan ja Kauniaisten toimipisteistä ja palveluista. Kesäkuussa tuohon palvelukarttaan tuli REST-rajapinta.
Tutkailin sen käyttöä yksinkertaista esimerkkiä käyttäen. Mitä jos tekisin sovelluksen, joka auttaisi vessahädän yllättämäksi joutunutta kansalaista ja näyttäisi pääkaupunkiseudulta lähimmän yleisen vessan, jonne rynnätä. Ensimmäinen ongelma oli löytää REST-rajapinnan web-osoite, josta hädänhetkellä löytyy ne vessat. REST-rajapinta ja sen kuvaus ei tässä kauheasti auttanut. Kun vihdoin oikea osoite löytyy, tulos on tälläinen:
<service>
<id>8920</id>
<parent__id>8800</parent__id>
<name__fi>Yleisövessat</name__fi>
<name__sv>Allmänna toaletter</name__sv>
<name__en>Public toilets</name__en>
<child__ids/>
<unit__ids>
<int>10929</int>
<int>10935</int>
<int>10939</int>
...
</unit__ids>
</service>
Jos hätä yllättää Hietalahdentorilla, niin tuo lista numeroita ei paljoa auta. Pitää tietää, että Hietalahden torilla on onneksi yleisövessa ja sen numero on 10927. Tuolla tiedolla saa esiin vessan koordinaatit ovat 60.162735, 24.928944, joiden avulla löytää oikeaan paikkaan.
Oikeastaan helpompi tapa vessojen löytymiselle on hakea palvelukartalta vessat ja klikkaamalla kartan yläkulmassa olevaa Vie-linkkiä ja valitsemalla “Vie Google Earthiin …”. Sieltä saa vastaukseksi KML-tiedoston, jossa on kaikki vessat koordinaatteineen ja osoitteineen. Tuossahan on oikeastaan kaikki tieto, mitä tarvittiinkin sovveluksen tekemiseen yhdessä paketissa!
Kun tuota palvelukartan linkkiä katsoo, niin sehän on REST-rajapinta itsessään, joka palauttaa XML-tiedoston takaisin. Ainoa mikä pitää tietää on tuo vessojen “themes” numero 8920, jonka löytää palvelukarttaa selaamalla. Tuo numero on muuten sama, mitä varsinaisessa REST-rajapinnan käytössäkin tarvitsee. Mieleen tulee kysymys, että mihinkäs tuota REST-rajapintaa oikeastaan tässä tarvittiinkaan?
Hei vaan!
Kiitos erinomaisesta ja hauskasta palautteesta!
REST-rajapinnan ensimmäisen vaiheen tavoitteena oli tarjota toimipisterekisterin / palvelukartan tiedot helpommin käytettävässä muodossa ohjelmallisesti hyödynnettäväksi muissa sovelluksissa – ja tämä tavoite saavutettiin.
Seuraavissa vaiheissa rajapintaa kehitetään eteenpäin tarjoamaan lisää toimintoja, jotta uusien sovelluksien – esimerkiksi vessanetsimissovelluksien – tekeminen olisi helpompaa ja tehokkaampaa. Tällöin rajapinnassa tarjotaan mahdollisuuksien mukaan tapaa esimerkiksi hakea tietyn tyyppistä palvelua tietyn pisteen lähettyviltä.
Ystävällisin terveisin Mirjam Heikkinen
Helsingin kaupunki/palvelukartta
Hätä tosiaankin yllätti ja kun ei toiminut tuo kaupungin kartta kännykässä niin tein pikaisesti palvelun http://www.helsinginvessat.fi/
En edes tiennyt tästä REST-rajapinnan olemassaolosta, joten käyntin suoraan tuota kml-tiedostoa. Toivottavasti tästä on muillekin iloa!