«

»

Eigendefinert Geolocation i Opera

Merknad: Dette innlegget er fleire år gammalt. Informasjonen kan vere utdatert og eg kan ha endra syn sidan då.

Geolocation er den store tingen no på veven. «Vil du oppgje kvar du er til netstaden?» poppar støtt opp i skjermvindauget. Denne gongen var Opera ikkje fyrst ute, til ei forandring, men med den nye versjonen, Opera 10.60, er også dei kome på banen.

Så kva er no dette Geolocation-greia? Vel, enkelt sagt er det info om kvar du er i verda. Dette kan vera kjekt i somme høve, til dømes viss du har ein stuttblogg (på Identi.ca, Twitter eller liknande) og fortel om noko som hender akkurat no. Med Geolocation aktivert i vevmysaren din, vil alle sjå kvar du skreiv meldinga frå, og dimed skjøna at hendinga var i nærleiken. Heilt perfekt er ikkje dette. Dei fleste vevmysarane nyttar seg av Google til å finna ut av kvar du er. Dei ser på IP, info frå GPS-en din (viss du nyttar mobiltelefon) eller MAC-adresse og trådlausnetet ditt (viss du nyttar datamaskin), signalstyrkjen din og liknande, og så sjekkar storebror Google om dei har den infoen. Dette vil gje ein del feilkjelder. Har til dømes byen din hatt vitjing frå Google-bilen? Sit du ikkje med ei trådlaus tilkopling? Ofte fell det attende på IP, og då vil Geolocation vera adressa til netleverandøren din eller nærmaste bykjerne.

Eg fer ikkje og vimsar rundt med bærbarmaskina mi så ofte lenger, og den stasjonære PC-en er, vel, stasjonær. Det tyder at min Geolocation ikkje endrar seg så ofte, så kvifor ikkje oppgje ein fast stad? Dette let seg sjølvsagt fiksa. Opera er veldig kjekk sånn. Du treng:

  • Lengdegraden og breiddegraden til ein stad.
  • Ein vevtenar, helst med PHP.
  • … og sjølvsagt nyaste Opera.

I dømet mitt nyttar eg kinoen i Rana, som held til på Rådhusplassen 1 i Mo i Rana. Både Finn.no og Gule Sider oppgjer koordinatar i karta sine. Søk opp ei adresse og klikk på GPS eller liknande. Kinoen i Rana held til på koordinatet 66.31096, 14.14044.

Når me har funne dette, kan me laga dokumentet som Geolocation-API-en ser etter. I dette dømet skriv eg eit PHP-skript, slik at eg på eit seinare tidspunkt kan leggja til høve til å velja fleire stader (t.d. med GET-variablar). Nett no er skriptet utan slikt, og er stutt og enkelt å forstå:

<?php
$breddegrad = '66.31096';
$lengdegrad = '14.14044';
echo '{"location":{"latitude":'.$breddegrad.',"longitude":'.$lengdegrad.',"accuracy":10.0}}';
?>

Syntaksen, viss du berre vil nytta reintekst, er:

{"location":{"latitude":66.31096,"longitude":14.14044,"accuracy":10.0}}

Eg lagrar skriptet som til dømes stadenmin.php, som eg lastar opp til vevtenaren: http://boba.no/filer/stadenmin.php

Siste hand på verket er å få Opera til å nytta denne fila i staden for Google. Dette er det enklaste. Gå til opera:config#Geolocation|LocationProviderURL, byt ut standardinnstillinga, https://www.google.com/loc/json, med adressa til skriptet ditt, og lagra endringane.

Fungerer det, skal tru? Google Maps nyttar seg av Geolocation, så me kan testa der. Klikk på den vesle sirkelen til venstre (under pilene, over mannen). Opera spør då om du vil dela staden din. Det vil du sjølvsagt. Klikk på Del staden min, og vips flyttar kartet seg til koordinatane dine.

Sjekk om du finn andre Opera-brukarar i nærleiken av deg på http://www.opera.com/portal/geo/.

Gje innspel