Gå til innhold
  • Bli medlem
Støtt hjemmeautomasjon.no!

Script for henting av kjøretider/trafikk


Anbefalte innlegg

Kunne tenkt meg å hatt en virtual device som viste kjøretid mellom to definerte steder, f.eks hjemme til jobb basert på gjeldende trafikk i området. Alle disse dataene ligger tilgjengelig hos google, men jeg trenger litt hjelp til å få dette formatert inn i VB script osv.

 

Hvis man bruker Googles Distance Matrix API, med eks. Stavanger til Sandnes, bruker man denne linken: https://maps.googleapis.com/maps/api/distancematrix/json?origins=stavanger&destinations=sandnes&departure_time=now&key=DIN KEY

 

Og får dette resultatet:

{
   "destination_addresses" : [ "Sandnes, Norge" ],
   "origin_addresses" : [ "Stavanger, Norge" ],
   "rows" : [
      {
         "elements" : [
            {
               "distance" : {
                  "text" : "16,2 km",
                  "value" : 16160
               },
               "duration" : {
                  "text" : "20 min",
                  "value" : 1174
               },
               "duration_in_traffic" : {
                  "text" : "20 min",
                  "value" : 1195
               },
               "status" : "OK"
            }
         ]
      }
   ],
   "status" : "OK"
}

Her har man både normal kjøretid og tiden det tar å kjøre nå.

Det stopper litt opp når jeg skal få dette inn i variabler i ett script som jeg videre kan bruke til å lage virtuelle devicer etc. Denne dataen kan brukes til f.eks litt mer intelligente vekkerklokker varslinger osv.

Noen som har erfaring med å bruke JSON formatert data i VB og Homeseer som kan hjelpe litt på vei.

Endret av Blodstrupmoen
Lenke til kommentar
Del på andre sider

Da har jeg testet dette litt med nyeste versjon PHlocation. Etter som jeg kan se, er oppdateringsfrekvensen på kjøretider ganske lav, og dette kan ikke endres noe sted som jeg kan se. Man kan heller ikke sette tidspunkt for kjøretur frem i tid, og bruke googles historikk for beregning av kjøretid.

 

Er det noen som kan sette meg på sporet av en metode for å hente inn disse JSON dataene inn i variabler, så jeg kan lage ett enkelt script til dette.

Lenke til kommentar
Del på andre sider

14 minutter siden, Blodstrupmoen skrev:

Da har jeg testet dette litt med nyeste versjon PHlocation. Etter som jeg kan se, er oppdateringsfrekvensen på kjøretider ganske lav, og dette kan ikke endres noe sted som jeg kan se. Man kan heller ikke sette tidspunkt for kjøretur frem i tid, og bruke googles historikk for beregning av kjøretid.

 

Er det noen som kan sette meg på sporet av en metode for å hente inn disse JSON dataene inn i variabler, så jeg kan lage ett enkelt script til dette.

Antar dette er i HomeSeer. Det nærmeste jeg har for det er dette biblioteket. http://json.codeplex.com/

Lenke til kommentar
Del på andre sider

Det er selvsagt morsommere å lage sitt eget hjul, men skulle du velge å bruke et hjul som allerede finnes, så er det dette du skal sette i Jon00DataScraper.ini:

[Grab4]
Path=https://maps.googleapis.com/maps/api/distancematrix/json?origins=stavanger&destinations=sandnes&departure_time=now&key=DIN_KEY
Pattern1=(?s)duration.*?"text" : "(.*?)",
DeviceName1=Tid_til_jobb
DeviceText1=[1]

Så er det bare å lage eventet:

datascrape.PNG

 

Og sim sala bim! :) 

datascrape2.PNG

 

PS:

Legg merke til at jeg her brukte "Grab4", vet ikke om tallene må henge sammen, du vil i såfall bruke 1 eller 2 og må sette parameter til scriptet til samme tallverdi.

  • Like 5
Lenke til kommentar
Del på andre sider

  • 3 uker senere...

Inspirert av dette, og koblet sammen med lokasjonsopplysninger fra PHLocation-plugin, har jeg satt opp slik at i det jeg går ut døra hjemme på hverdager om morgenen får jeg en pushmelding på telefonen om antatt kjøretid til jobb. Når jeg forlater jobben på ettermiddagen får jeg en ny pushmelding om antatt kjøretid hjem via regulær kjørerute, og en annen tid for en alternativ rute hjem. Artig. :)

  • Like 1
Lenke til kommentar
Del på andre sider

59 minutter siden, mk1 black limited skrev:

Inspirert av dette, og koblet sammen med lokasjonsopplysninger fra PHLocation-plugin, har jeg satt opp slik at i det jeg går ut døra hjemme på hverdager om morgenen får jeg en pushmelding på telefonen om antatt kjøretid til jobb. Når jeg forlater jobben på ettermiddagen får jeg en ny pushmelding om antatt kjøretid hjem via regulær kjørerute, og en annen tid for en alternativ rute hjem. Artig. :)

 

Hvor nøyaktig er dette?

Lenke til kommentar
Del på andre sider

2 timer siden, xibriz skrev:

Hvor nøyaktig er dette?

 

Bør vel i teorien være like nøyaktig som Google Maps... Har aldri sjekka hvor godt det stemmer, bare lagt merke til at den legger til litt ekstra tid når det er mye trafikk. :) 

Lenke til kommentar
Del på andre sider

3 minutter siden, Moskus skrev:

Guide or it didn't happen! ;) 

 

Hehe jeg vet ikke om det er nytt eller bare jeg som ikke har gjort det før. Men etter å ha "installert" 3 nye dots i går ble jeg sittende å kikke igjennom settings menyen. 

Under settings -> traffic fikk jeg opp dette(-ende destinasjonen). Usikker på hvor den har hjemme adressen min i fra, men jeg slengte iallefall jobb adressen inn og nå fungerer det feilfritt :)

 

alexa.png

Lenke til kommentar
Del på andre sider

Et øyeblikk siden, mk1 black limited skrev:

Næmmen! Den var hos meg også - nå slipper de litt nytt uten å si fra! :)

 

Ja! Kunne ikke sette adressen i Norge da, merkelig nok. Forhåpentligvis er det rett rundt hjørnet :) Vill gjerne ha vær detaljer for dagen når jeg velger antrekk for dagen, da har jeg mer eller mindre de fleste praktiske tingene på plass :)

Lenke til kommentar
Del på andre sider

Et øyeblikk siden, Moskus skrev:

Hmmm... ikke hos meg. :( 

 

Hm, har du både dot og echo? Jeg har begge nå, og var ikke før dette jeg fikk muligheten. Men igjen sjekket jeg ikke rett før jeg "inkluderte" dot'ene. Evt hvilken SW versjon kjører din på? 

Lenke til kommentar
Del på andre sider

44 minutter siden, Moskus skrev:

Ja, men det er litt rart hvis de differensierer mellom de versjonene. Det hadde ikke jeg gjort. Oh well, får vente og se. :) 

 

Ja ikke helt logisk, men mulig det er tilgjengelig i siste SW av dot men ikke echo enda også er vell traffic noe som synces i mellom enhetene. Men det blir jo såklart bare synsing :P

Lenke til kommentar
Del på andre sider

On 13.1.2017 at 18:23, ZoRaC said:

Det er selvsagt morsommere å lage sitt eget hjul, men skulle du velge å bruke et hjul som allerede finnes, så er det dette du skal sette i Jon00DataScraper.ini:


[Grab4]
Path=https://maps.googleapis.com/maps/api/distancematrix/json?origins=stavanger&destinations=sandnes&departure_time=now&key=DIN_KEY
Pattern1=(?s)duration.*?"text" : "(.*?)",
DeviceName1=Tid_til_jobb
DeviceText1=[1]

Så er det bare å lage eventet:

datascrape.PNG

 

Og sim sala bim! :) 

datascrape2.PNG

 

PS:

Legg merke til at jeg her brukte "Grab4", vet ikke om tallene må henge sammen, du vil i såfall bruke 1 eller 2 og må sette parameter til scriptet til samme tallverdi.

Hvordan finner du fram api key til google?hvordan har du klart og få den linken der..

Endret av MrTiger
Lenke til kommentar
Del på andre sider

Bli med i samtalen

Du kan publisere innhold nå og registrere deg senere. Hvis du har en konto, logg inn nå for å poste med kontoen din.

Gjest
Skriv svar til emnet...

×   Du har limt inn tekst med formatering.   Lim inn uten formatering i stedet

  Du kan kun bruke opp til 75 smilefjes.

×   Lenken din har blitt bygget inn på siden automatisk.   Vis som en ordinær lenke i stedet

×   Tidligere tekst har blitt gjenopprettet.   Tøm tekstverktøy

×   Du kan ikke lime inn bilder direkte. Last opp eller legg inn bilder fra URL.

×
×
  • Opprett ny...

Viktig informasjon

Vi har plassert informasjonskapsler/cookies på din enhet for å gjøre denne siden bedre. Du kan justere dine innstillinger for informasjonskapsler, ellers vil vi anta at dette er ok for deg.