Vai al contenuto
News Ticker
  • Zwave-Community.it diventa DOMOTICA Easy!!
  • Il portale dedicato alla DOMOTICA WIRELESS
  • Forum - Guide - Recensioni

REGISTRATI PER VISUALIZZARE TUTTI I CONTENUTI DEL NOSTRO PORTALE!

ATTENZIONE: Alcuni contenuti del sito sono visualizzabili sono dagli utenti registrati. 

REGISTRATI ADESSO alla nostra comunità e dai anche il tuo supporto per ottenere di più!

berga_s

[GUIDA] Virtual Device per previsioni meteo

Recommended Posts

Il presente post per condividere il codice LUA creato (mettendo assieme vari spunti presi da Intenet) al fine di comporre una stringa contenente le previsioni meteo (sia lo stato attuale che previsioni) per una determinata zona.

 

Tale stringa è utilizzabile per rappresentare a video le informazioni o passarle a soluzioni  Text To Speech (TTS) per riprodurle su delle casse Sonos (ad esempio). Personalmente lo utilizzavo con successo prima che il servizio TTS di Google fosse bloccato, ora ho visto che ci sono altre soluzioni TTS, appena posso vedrò di metterci le mani.

 

Il servizio utilizzato è quello offerto dalle API di Weather Underground, un sito di meteorologia che rileva in tempo reale le condizioni atmosferiche e ne trae delle previsioni.

 

Ovviamente per utilizzare il servizio è necessaria una registrazione gratuita che serve per ricevere l'API_KEY, ovvero la chiave da mettere nella richiesta GET dell' API.

Rimando al presente sito (

Please login or register to see this link.

) con istruzioni in italiano (oppure direttamente a quello del fornitore):

 

Una volta ottenuta l'API_KEY e composta la stringa di chiamata all'api comprensiva della lingua, della zona di interesse e se si sta chidendo la previsione o situazione attuale, seguire i seguenti passi:

  1. creare una variabile di ambiente chiamata PushMsgTTSWeather (che sarà aggiornata con la previsione e/o situazione attuale)
  2. creare un Virtual Device con tre pulsanti: Attuale+Previsione, Attuale e Previsione
  3. copiare ed incollare le righe di codice più sotto nei rispettivi pulsanti avendo cura di sostituire TUA_API_KEY_ATTUALE e TUA_API_KEY_PREVISIONE  con la stringa di chiamata all'API contenente la vostra API KEY

In allegato il risultato del virtual device come dovrebbe risultare...

Please login or register to see this link.

[/b][/font][/size]

******************************************************************

Please login or register to see this code.

 

****************************************************************** 

PULSANTE ATTUALE:

******************************************************************

Please login or register to see this code.

******************************************************************

PULSANTE PREVISIONE:

******************************************************************

Please login or register to see this code.

Please login or register to see this attachment.

  • Like 1

Share this post


Link to post
Share on other sites

Spettacolo!!!!

Sto usando qualcosa di simile preso da un sito straniero ma troppo complesso e poco immediato.

Questa soluzione invece è veramente pratica e sopratutto già pronta al TTS (per il mio coniglietto è una bellezza).

Ti ringrazio per la condivisione.

Unica cosa: modifico il post inserendo il codice con la relativa Tag per evitare problemi di copia ed incolla causa errori sui caratteri.

Share this post


Link to post
Share on other sites

Figurati...

 

Si, si fai pure... per la prossima volta, il codice lo dovei inserire premendo l'icona avente una pagina con i simboli <>?

Share this post


Link to post
Share on other sites

Esatto... cosi si evitano errori dovuti alla formattazione del testo e si contengono le lunghezze dei post.

 

Un dettaglio: ma la API key non è unica? perche fai distinzione tra API per "attuale" e quella per "previsione"??

Share this post


Link to post
Share on other sites

OK, si, così è molto più ordinato...

 

Si, l'API_KEY è la stessa ma le distinguo poiché la chiamata ha il parametro conditions o forecast che le differenzia, per esempio:

 

strAPIKeyConditions = "/api/xxx/conditions/lang:IT/q/yyy.json"

 

strAPIKeyForecast = "/api/xxx/forecast/lang:IT/q/yyy.json"

 

dove xxx è la mia chiave e yyy la località.

Share this post


Link to post
Share on other sites

Ciao berga_s,

 

ti ringrazio della tua guida!!

 

Solo una cosa, riesco a visualizzare le informazioni meteo solo ed esclusivamente quando eseguo il debug del pulsante, mentre non succede niente quando clicco sul/i pulsante/i!!!

Puoi darmi gentilmente un aiuto a capire cosa ho sbagliato?

 

Grazie

Yuri

Share this post


Link to post
Share on other sites

In allegato il VD da importare...

 

NOTA BENE:

nel VD ho sostituito le mie stringe di situazione attuale e previsioni (contenenti la mia chiave) con "INSERIRE QUI".

Pertanto è necessario che in tutti e trei i pulsanti andiate a modificare la stringa con i vostri paramenti (chiave e località).

 

L'esempio di strighe è quello che ho riportato su un post precedente ma che per semplicità ricopio:

  • strAPIKeyConditions = "/api/xxx/conditions/lang:IT/q/yyy.json"
  • strAPIKeyForecast = "/api/xxx/forecast/lang:IT/q/yyy.json"

dove xxx è la mia chiave e yyy la località, la prima per la situazione attuale e la seconda per la previsione.

 

 

@Yuri: prova ad eliminare il VD che hai creato ed importare questo con le modifiche che ho descritto sopra... se non dovesse funzionare non ti saprei dire da cosa dipende (al momento io ho la 4.070, ma questo VD mi funziona sin dalla 3.x).

Please login or register to see this link.

Share this post


Link to post
Share on other sites

figo funziona, da modificare la sintassi però come sotto..

strAPIKeyForecast = "/api/xxx/forecast/lang:IT/q/Italy/Milan.json"

 

 

se il paese ha uno spazio nel nome, sostituirlo con _

Share this post


Link to post
Share on other sites

OK, bene!

Ho aggiunto anche io nelle mie stringhe "/Italy/" che prima non avevo (ma funzionava).

Share this post


Link to post
Share on other sites

Ciao berga_s,

grazie mille del file, sbagliavo la stringa nel conditions che nel forecast, inserivo anche "http..".

Spero di poterti essere utile, condividendo i miei virtual device così da cambiare il tuo aiuto ;-)

A proposito, qualcuno di voi ha iniziato a "giocare" con il Sonos-Fibaro? Io qualcosina l'ho fatta, magari potremo condividere qualcosa, provo ad aprire una discussione su questo argomento, sperando di riuscirci.

Ciao

Yuri

Share this post


Link to post
Share on other sites

Ottimo virtual device, però da app non si riesce a leggere tutta la previsione fa solo vedere una riga. 

C'è la maniera di leggere tutto?

Share this post


Link to post
Share on other sites

scusate la mia ignoranza, ma dove lo trovo l' API KEY? Ho gia guardato ovunque sul mio profilo ma non lo trovo.... mi potreste dare qualche indicazione? Grazie

Share this post


Link to post
Share on other sites

Una volta registrato seleziona la scheda 'api home' > 'Explore my options' > 'Purchase Key'  su quella dal costo di 0 USD 

****

 

Grazie mille per il VD Berga_s ,

Lo ho appena modificato per inviare i dati  all'Audiocast M5 invece che alla  'ui.Label1.value',  'parla'  che è una meraviglia  ;-).

 

ps:

a proposito di audio, a me succede una cosa del genere, se invio al 'http://api.voicerss.org' una stringa con spazi fra le parole non mi funziona, lo cspazio devo indicarlo con '%20' (valore esadecimale della spazio ... appunto).

ad esempio se invio per la sintetizzazione vocale a voicerss 'Domani sarà una bella giornata' non funziona, se invece invio 'Domani%20sarà%20una%20bella%20giornata', funziona alla grande!!

E' un comportamento normale ?

 

ciao

arturo

Share this post


Link to post
Share on other sites

Ho notato che con gli ultimi aggiornamenti di Fibaro non si riesce più a mettere la previsione nella variabile, quindi non riesco a farla leggere dal tts del nabaztag

Please login or register to see this image.

/emoticons/sad.png" alt=":(" data-emoticon="" srcset="http://www.zwave-community.it/uploads/emoticons/sad@2x.png 2x" width="20" height="20" />

 

Inviato dal mio A0001 utilizzando Tapatalk

Share this post


Link to post
Share on other sites

Crea un account o accedi per lasciare un commento

Devi essere un utente registrato per poter lasciare un commento

Crea un account

Iscriviti per un nuovo account nella nostra comunità. È facile!

Registra un nuovo account

Accedi Subito

Sei già registrato? Accedi da qui.

Accedi Adesso

×