Diskusionstråd för API-funktionen

Denna forumdel är inte längre aktiv, för att diskutera saker relaterat till väder eller temperatur.nu - använd https://www.facebook.com/groups/temperatur.nu
Kategoriregler
Denna forumdel är inte längre aktiv, för att diskutera saker relaterat till väder eller temperatur.nu - använd https://www.facebook.com/groups/temperatur.nu
Användarvisningsbild
elf98
Hemautomation - det är mer än en hobby
Inlägg: 5434
Blev medlem: 27 okt 2006, 13:49
Ort: Linköping
Kontakt:

Diskusionstråd för API-funktionen

Inlägg av elf98 »

Har du frågor, eller förslag till nya features till API-funktionen?

Diskutera dem i denna tråd!
Grundade m.nu & temperatur.nu

Driver temperatur.nu

Bild
strickz
Wannabe
Inlägg: 12
Blev medlem: 09 jun 2010, 09:13

Re: Diskusionstråd för API-funktionen

Inlägg av strickz »

Finns det något rekommenderat sätt att hämta alla möjliga orter? T.ex om jag vill att användaren ska få välja en standardort från en lista första gången.
Användarvisningsbild
elf98
Hemautomation - det är mer än en hobby
Inlägg: 5434
Blev medlem: 27 okt 2006, 13:49
Ort: Linköping
Kontakt:

Re: Diskusionstråd för API-funktionen

Inlägg av elf98 »

http://www.temperatur.nu/api/tnu_1.2.php?simple

Utan p specat returneras alla aktiva orter.
Grundade m.nu & temperatur.nu

Driver temperatur.nu

Bild
strickz
Wannabe
Inlägg: 12
Blev medlem: 09 jun 2010, 09:13

Re: Diskusionstråd för API-funktionen

Inlägg av strickz »

Ok, tack för svaret. Det verkar dock inte fungera för v1.2, är det meningen?

Funkar:
http://www.temperatur.nu/api/tnu_1.0.php?simple

Funkar inte:
http://www.temperatur.nu/api/tnu_1.2.php?simple
Användarvisningsbild
elf98
Hemautomation - det är mer än en hobby
Inlägg: 5434
Blev medlem: 27 okt 2006, 13:49
Ort: Linköping
Kontakt:

Re: Diskusionstråd för API-funktionen

Inlägg av elf98 »

Det är en bugg och jag jobbar på att fixa till en lösning!
Grundade m.nu & temperatur.nu

Driver temperatur.nu

Bild
Användarvisningsbild
elf98
Hemautomation - det är mer än en hobby
Inlägg: 5434
Blev medlem: 27 okt 2006, 13:49
Ort: Linköping
Kontakt:

Re: Diskusionstråd för API-funktionen

Inlägg av elf98 »

Nu är version 1.3 släppt som har buggen rättad.

Vid en närmare eftertanke är det bättre att accessa utan simple, du vill kunna spara id (som inte visas med simple) för att kunna hämta en specifik station.
Grundade m.nu & temperatur.nu

Driver temperatur.nu

Bild
strickz
Wannabe
Inlägg: 12
Blev medlem: 09 jun 2010, 09:13

Re: Diskusionstråd för API-funktionen

Inlägg av strickz »

Japp, det funkar alldeles utmärkt!
perror
Wannabe
Inlägg: 3
Blev medlem: 27 dec 2010, 21:35
Ort: Sundsvall

Stöd för CORS

Inlägg av perror »

Vore det möjligt att lägga in nedanstående http-header i www.temperatur.nu/api/tnu_x.y.php?
Access-Control-Allow-Origin: *

De flesta beskrivningar av CORS är otroligt tillkrånglade men det finn en simpel intro på http://enable-cors.org

Bakgrunden är helt enkelt att jag vill slippa att ha en server "framför" temperatur.nu som bara skickar frågorna vidare. Mha CORS så kan jag med lite Javascript (XMLHttpRequest) visa temperaturen för en ort på vilken statisk HTML-sida som helst.

En rad PHP-kod är allt som skulle behövas och jag kan inte se att det skulle bli några säkerhetsproblem för temperatur.nu (risken är i så fall större för de som anropar). Det enda som möjligen skulle hända är det skapades fler "klienter" och bli lite mer trafik.
perror
Wannabe
Inlägg: 3
Blev medlem: 27 dec 2010, 21:35
Ort: Sundsvall

hashkod eller timestamp för listan med orter

Inlägg av perror »

Vore det möjlig att ha en hashkod eller timestamp för listan med orter? Det är lite fånigt att mitt program som har en navigering med alla orter alltid ska hämta dessa när programmet startar (särskilt för en mobil-app). 95% av datatrafiken slösas bort på en lista med orter när det är ett par temperaturer jag verkligen är intresserad av. Med en hashkod eller timestamp för när orterna uppdaterats så skulle jag kunna orter och koordinater cachade och bara ladda om när de ändrats.

Ganska låg prio. på detta men det vore trevligt att ha.
Användarvisningsbild
elf98
Hemautomation - det är mer än en hobby
Inlägg: 5434
Blev medlem: 27 okt 2006, 13:49
Ort: Linköping
Kontakt:

Re: Stöd för CORS

Inlägg av elf98 »

perror skrev:Vore det möjligt att lägga in nedanstående http-header i http://www.temperatur.nu/api/tnu_x.y.php?
Access-Control-Allow-Origin: *
Det är inlagt from api 1.8.
perror skrev: Bakgrunden är helt enkelt att jag vill slippa att ha en server "framför" temperatur.nu som bara skickar frågorna vidare. Mha CORS så kan jag med lite Javascript (XMLHttpRequest) visa temperaturen för en ort på vilken statisk HTML-sida som helst.
Det finns redan en sådan funktion som i första hand skall användas: http://www.temperatur.nu/hamta.html
perror skrev: Vore det möjlig att ha en hashkod eller timestamp för listan med orter? Det är lite fånigt att mitt program som har en navigering med alla orter alltid ska hämta dessa när programmet startar (särskilt för en mobil-app). 95% av datatrafiken slösas bort på en lista med orter när det är ett par temperaturer jag verkligen är intresserad av. Med en hashkod eller timestamp för när orterna uppdaterats så skulle jag kunna orter och koordinater cachade och bara ladda om när de ändrats.
Ortlistan uppdateras oftare än en gång i sekunden, att ha ett hashvärde eller timestamp är meningslöst.

Att ligga och polla live är inte tillåtet, enligt villkoren får samma request inte skickas oftare än var femte minut. Om det bara är ett par temperaturer som du är intresserad av är det bättre att bara hämta dem?. Fast du kanske menar timestamp i form av en parameter som gör att endast data färskare än timestamp returneras?

APIet utvecklas efter önskemål, men det är inte helt lätt att tolka vad det är du efterfrågar!
Grundade m.nu & temperatur.nu

Driver temperatur.nu

Bild
perror
Wannabe
Inlägg: 3
Blev medlem: 27 dec 2010, 21:35
Ort: Sundsvall

Re: Stöd för CORS

Inlägg av perror »

elf98 skrev:
perror skrev:Vore det möjligt att lägga in nedanstående http-header i http://www.temperatur.nu/api/tnu_x.y.php?
Access-Control-Allow-Origin: *
Det är inlagt from api 1.8.
Kanon! Då är det bara att tacka och pröva om det funkar.
elf98 skrev: Ortlistan uppdateras oftare än en gång i sekunden, att ha ett hashvärde eller timestamp är meningslöst.

Att ligga och polla live är inte tillåtet, enligt villkoren får samma request inte skickas oftare än var femte minut. Om det bara är ett par temperaturer som du är intresserad av är det bättre att bara hämta dem?. Fast du kanske menar timestamp i form av en parameter som gör att endast data färskare än timestamp returneras?

APIet utvecklas efter önskemål, men det är inte helt lätt att tolka vad det är du efterfrågar!
Nej, här var jag tydligen otydlig. Vad jag egentligen vill veta är om det tillkommit eller försvunnit "mätpunkter" (id) sedan förra gången mitt program kördes. Jag struntar alltså i temperaturen och vill bara ha data för navigering. Anta t.ex. att jag vill visa en lista med enbart län där man sedan kan välja ett län och se enbart dess kommuner osv. Har det inte skett förändringar så behöver jag inte ladda ner hela listan med mätpunkter utan kan ha dem i en cache. Det är alltså raka motsaten mot att polla jag är ute efter. Just nu lutar det åt jag bara laddar om orterna var 14:e dag eller något liknande. Vill jag lyxa till det kanske jag fixar ett script som en gång per dygn hämtar alla mätpunkter, rensar bort temp (simple är för verbsose!) och beräknar/lagrar en md5 på svaret. Då kan min klient gå till min server och se om det skett någon förändring i mätpunkterna.

Provade just:

Kod: Markera allt

curl --silent "http://wap.temperatur.nu" | md5
som jag skulle kunna lägga i ett cron-jobb och pajpa till en fil. Men det vore ju bättre om det fanns något på temperatur.nu
Användarvisningsbild
Dowser
Hemautomation - det är mer än en hobby
Inlägg: 811
Blev medlem: 10 mar 2007, 09:44
Ort: Trosa
Kontakt:

Re: Diskusionstråd för API-funktionen

Inlägg av Dowser »

Vore inte det enklaste om du fick ett svar på när någon station senast ändrades?
(Som du sedan kan jämföra med datumet du har lagrat i applikationen.)

Dock ser jag inte riktigt finessen med att ta det läns-vis, även om det väl inte borde vara så knepigt att addera på motsvarande vis. Hela listan på ~350 stationer tar ju inte *så* många byte och om du skall göra flera anrop på lands och läns-nivå äts snart den vinsten upp i headers (och ger mer latency i appen om det inte sker i bakgrunden.)

Ett alternativ skulle ju vara att skicka en förfrågan på stationer tillsammans med en timestamp och få svar på vilka stationer som är förändrade efter den, det kräver dock lite mer arbete både för elf98 och servern vid varje förfrågan.
Det känns som att man skall ha rätt brutala roaming-MB-priser för att det skall vara "lönsamt" jämfört med att tanka ner alla orter, åtminståne så länge de inte är femsiffriga i antalet.
maf
Inlägg: 2
Blev medlem: 11 jan 2011, 15:29
Ort: Huddinge

Re: Diskusionstråd för API-funktionen

Inlägg av maf »

Kan man på något sätt få ut dygnsmedeltemperatur för en viss ort via API:t?

Jag skulle vilja logga min elförbrukning varje dygn tillsammans med det senaste dygnets medeltemperatur, för att på så sätt få ett grepp om min energianvändning baserat på utetemperatur och därmed kunna avgöra hur min luftvärmepump presterar vid olika temperaturer.

Jag skulle visserligen kunna tanka nuvarande temperatur var 5:e minut och sedan själv sammanställa en medeltemperatur men belastningsmässigt (framförallt för temperatur.nu) tror jag en färdigproducerad dygnsmedeltemperatur skulle vara lämpligare?

Mvh
Magnus Frostlid
Användarvisningsbild
elf98
Hemautomation - det är mer än en hobby
Inlägg: 5434
Blev medlem: 27 okt 2006, 13:49
Ort: Linköping
Kontakt:

Re: Diskusionstråd för API-funktionen

Inlägg av elf98 »

DEn funktionen finns i nuläget inte, men kan med stor sannolikhet komma i en senare version!
Grundade m.nu & temperatur.nu

Driver temperatur.nu

Bild
strickz
Wannabe
Inlägg: 12
Blev medlem: 09 jun 2010, 09:13

Re: Diskusionstråd för API-funktionen

Inlägg av strickz »

Nu har jag fått tummen ur och fortsatt på min klient (Window Phone OS 7). Jag har inga större problem med API:et, men passar ändå på att ge lite feedback.

Jag gillar inte riktigt att län och kommun ges i fritext, det blir svårare att validera det på klienten och jag får ändå ha en mappningstabell mot den text som jag vill visa. Jag skulle föredra om den informationen gavs som kommunkod och länskod (eller länsbokstav). Dessa finns sammanställda på:
http://sv.wikipedia.org/wiki/Sveriges_l%C3%A4n
http://sv.wikipedia.org/wiki/Lista_%C3% ... s_kommuner

Varför används inte utf8 i datat? Kanske det kan bli valbart vilken encoding man vill ha? Som det är nu krävs det en extra konvertering om man t.ex utvecklar en Silverlightklient där det inbyggda stödet för olika encodings är väldigt begränsat.

Stationen "Leksand/Östanhol" har ingen kommun eller län angiven, känns som en miss bara?
Låst