Markdown source

#Openhab - appunti sparsi sulla configurazione del binding weather

[Weather Binding](https://github.com/openhab/openhab1-addons/wiki/Weather-Binding)

ATTENZIONE!
è fatto per OpenHab1, funziona ma ci sono dei workaround da seguire.

Con OpenWeatherMap non funzionano le previsioni.

OpenWeatherMap annuncia che con il piano free ci sono le previsioni per 5 giorni invece quando ti registri i giorni diventano 0.

Sui forum dicono che quelli che chiamano forecast (selezionabili giorno per giorno), sono quelli dei 16 gg. Sono passati recentemente dalla versione beta a quella definitiva e i 16gg non sono più inclusi nel free plan.

Il binding di Openhab usa ancora le API vecchie che quindi risultano non comprese.

5gg
api.openweathermap.org/data/2.5/forecast?id={city ID}

16gg
api.openweathermap.org/data/2.5/forecast/daily?q={city name},{country code}&cnt={cnt}

non puoi più specificare giorno per giorno ma le da per tutti e 5 i giorni

Ho usato quindi Wundergound

crei una nuova configurazione per il binding su un altro provider
cambi il nome della configurazione su tutti gli item che hai configurato (cerca/cambia) oppure commenti la vecchia configurazione e nomini la nuova allo stesso modo senza cambiare altro.


Per usare l'esempio di pannello html ho dovuto fare un po' di trucchi (ovviamente copiati da qualcuno che ci era già capitato) perché su OH2 hanno spostato i path delle cartelle pubblicate.

l'esempio di forecast html che forniscono sulla pagina del binding (la cartella weather-data) va messa  in /etc/openhab2/html (la vecchia posizione dei contenuti html) ma va creato un link simbolico in /var/lib/openhab2/webapps (la nuova posizione)
<pre class="terminal">
cd /var/lib/openhab2/webapps/
ln -s /etc/openhab2/html/weather-data/ weather-data
</pre>

alcune icone presenti in images devono essere copiate:

<pre class="terminal">
sunny.png -> clear.png
mostly-cloudy-day.png -> mostly-cloudy.png
partly-cloudy-day.png -> partly-cloudy.png
</pre>

per renderlo compatibile con tutti i servizi metereologici che forniscono anche il nome dell'icona da usare per le previsioni.
Alcuni servizi forniscono invece il link alla loro icona

avevo abilitato i debug di tutti i binding a livello trace e non mi ricordavo più quali
Avevo un bobardamento di scritture ad ogni evento.
si possono modificare i livelli di debug a mano nel file

<pre class="terminal">
/var/lib/openhab2/etc/org.ops4j.pax.logging.cfg
</pre>

per visualizzare in una unica stringa due valori occorre usare le rules:
in weather.items

<pre class="terminal">
Number	Wind_Speed	" [%.2f km/h]"	<wind>	(Weather)	{weather="locationId=roma, type=wind, property=speed"}
String	Wind_Direction	" [%s]"		<wind>	(Weather)	{weather="locationId=roma, type=wind, property=direction"}
String	Wind	"Vento [%s]"	<wind>
</pre>

c'è una nuova stringa Wind che non fa riferimento a nessun parametro

poi in wind.rules

<pre class="terminal">
rule "concat"
when
  Item Wind_Speed received update or
  Item Wind_Direction received update
then
  Wind.postUpdate(Wind_Speed.state.toString + " km/h  " + Wind_Direction.state.toString)
end
</pre>

In sitemap
<pre class="terminal">
Text item=Wind
</pre>





@include='bio_guido_ottaviani'



Le attività del TanzoLab si svolgono ogni mercoledi sera, salvo casi speciali, dalle ore 18:30 presso i locali della Acme Systems srl e consistono in:

  • Talk monotematici a cura di professionisti in vari settori tecnologici
  • Workshop pratici su elettronica embedded, produzione e informatica
  • Progettazione e realizzazione di nuovi prodotti embedded per l'IT

Le attività vengono coordinate tramite questo sito, in cui vengono pubblicati tutti i lavori svolti o in via di sviluppo, e tramite un gruppo Telegram con cui per interagire direttamente via chat con gli altri membri.