weather.ini - configurazione del formato del file

Quasi tutta la configurazione di pywws è tramite un unico file nella directory dei dati: weather.ini. Questo file ha una struttura simile a quella del file Microsoft Windows INI. Esso è diviso in “sections”’, ognuna delle quali ha un numero di voci “name = value”. L’ordine in cui appaiono spesso delle sezioni non è importante.

Qualsiasi editor di testo può essere utilizzato per modificare il file. (Non provare a modificarlo durante l’esecuzione di qualsiasi altro software pywws). In molti casi sarà pywws inizializzare le voci a valori ragionevoli.

Un altro file, status.ini, viene utilizzato per memorizzare alcune informazioni che pywws utilizza internamente. È descritto alla fine di questo documento. Nell’uso normale non è necessario modificarlo.

Le seguenti sezioni sono attualmente in uso:

  • config: varie configurazioni di sistema.

  • paths: directory in cui sono memorizzati i modelli ecc.

  • live: attività da fare ogni 48 secondi.

  • logged: attività da fare ogni volta la stazione registra un record di dati.

  • hourly: attività da fare ogni ora.

  • 12 hourly: attività da fare ogni 12 ore.

  • daily: attività da fare ogni giorno.

  • ftp: configurazione per il caricamento di un sito Web.

  • twitter: configurazione per postare su Twitter

  • underground, metoffice, temperaturnu etc: configurazione di postare sui ‘services’.

config: varie configurazione di sistema

[config]
ws type = 1080
day end hour = 21
pressure offset = 9.4
gnuplot encoding = iso_8859_1
template encoding = iso-8859-1
language = en
logdata sync = 1
rain day threshold = 0.2
asynchronous = False
usb activity margin = 3.0
gnuplot version = 4.2

ws type è il “tipo” della stazione meteo. Esso deve essere impostato 1080 per la maggior parte delle stazioni meteorologiche, o 3080 se la vostra console stazione visualizza illuminazione solare.

day end hour è la fine del “giornata meteorologica”, nell’ora locale, senza tenere conto dell’ora legale. Valori tipici sono 21, 9, o 24. È necessario aggiornare tutti i vostri dati memorizzati eseguendo pywws.Reprocess per rielaborare tutto dopo aver modificato questo valore.

pressure offset è la differenza tra la pressione dell’aria assoluta e relativa (al livello del mare). È copiata dalla stazione meteo, supponendo che è stata impostata fino a visualizzare la corretta pressione relativa, ma è possibile modificare il valore in weather.ini per calibrare la vostra stazione. È necessario aggiornare tutti i vostri dati memorizzati tramite l’esecuzione di pywws.Reprocess dopo aver modificato questo valore.

Cambiato nella versione 13.10_r1082: inserito pressure offset un elemento di configurazione. In precedenza è sempre stata letta dalla stazione meteo.

gnuplot encoding è la codifica del testo utilizzato per tracciare i grafici. Il valore predefinito di iso_8859_1 che consente di usare il simbolo del grado, il che è utile per un’applicazione meteo! Altri valori potrebbero essere necessari se la lingua comprende i caratteri accentati. I possibili valori dipendono dalla vostra installazione gnuplot così alcuni esperimenti possono essere necessari.

template encoding è la codifica del testo utilizzato per i modelli. Il valore predefinito è iso-8859-1, che è la codifica utilizzata nell’esempio dei modelli. Se è necessario creare modelli con un diverso set di caratteri, è necessario modificare questo valore in base ai vostri modelli.

language è utilizzata per localizzare pywws. E’ facoltativa, siccome pywws solitamente utilizza il computer come lingua di default impostata dalla variabile di ambiente LANG. Le lingue disponibili sono quelle della sottodirectory translations del vostra installazione pywws. Se si imposta un’altra lingua non presente, pywws tornerà in Inglese.

logdata sync imposta la qualità di sincronizzazione utilizzato da pywws.LogData. Impostare a 0 è più veloce ma imprecisa o 1 più lento ma preciso.

rain day threshold è la quantità di pioggia (in mm) che deve cadere in un giorno per poter qualificare come un giorno di pioggia nei dati di riepilogo mensili. È necessario aggiornare tutti i vostri dati memorizzati tramite l’esecuzione di pywws.Reprocess dopo aver modificato questo valore.

Nuovo nella versione 13.09_r1057: asynchrouous controlla l’utilizzo di un processo separato in upload di pywws.LiveLog.

Nuovo nella versione 13.10_r1094: usb activity margin controls the algorithm that avoids the “USB lockup” problem that affects some stations. It sets the number of seconds either side of expected station activity (receiving a reading from outside or logging a reading) that pywws does not get data from the station. If your station is not affected by the USB lockup problem you can set usb activity margin to 0.0.

Nuovo nella versione 13.11_r1102: gnuplot version tells pywws.Plot and pywws.WindRose what version of gnuplot is installed on your computer. This allows them to use version-specific features to give improved plot quality.

paths: directory in cui sono memorizzati modelli ecc.

[paths]
templates = /home/$USER/weather/templates/
graph_templates = /home/$USER/weather/graph_templates/
user_calib = /home/$USER/weather/modules/usercalib
work = /tmp/weather
local_files = /home/$USER/weather/results/

Queste tre voci specificano dove i tuoi modelli testo e modelli di grafici vengono archiviati, dove devono essere creati i file temporanei, dove l’output dei file (che non sono stati caricati) dovrebbe essere messo e (se ne hai uno) la posizione del tuo modulo di calibrazione.

live: attività da fare ogni 48 secondi

[live]
services = ['underground_rf']
text = [('yowindow.xml', 'L')]
plot = []

Questa sezione specifica le attività che devono essere effettuate per ogni campione di dati durante la ‘live logging’, cioè ogni 48 secondi. È improbabile che si vorrebbe fare altro che caricare questo spesso a Weather Underground o aggiornare il file di YoWindow.

services è un elenco di ‘servizi’ per caricare i dati. Ognuno qui elencato deve avere un file di configurazione pywws/services/. See pywws.toservice per ulteriori dettagli.

text and plot sono elenchi di modelli di testo e grafici che devono essere elaborati ed, opzionalmente, caricati sul tuo sito Web.

Cambiato nella versione 13.05_r1013: aggiunto il modello 'yowindow.xml'. Precedentemente il file yowindow era generato da un modulo separato, richiamato dalla voce yowindow nella sezione [live]. La sintassi precedente funziona ancora, ma è obsoleta.

logged: attività da fare ogni volta la stazione registra un record di dati

[logged]
services = ['underground', 'metoffice']
text = []
plot = []

Questa sezione specifica le attività che devono essere effettuate ogni volta che viene registrato un record di dati in modalità ‘live logging’ o ogni volta che viene eseguito un attività di cron.

services è un elenco di ‘servizi’ per caricare i dati. Ognuno qui elencato deve avere un file di configurazione pywws/services/. See pywws.toservice per ulteriori dettagli.

text and plot sono elenchi di modelli di testo e grafici che devono essere elaborati ed, opzionalmente, caricati sul tuo sito Web.

hourly: le attività da fare ogni ora

[hourly]
services = []
text = [('tweet.txt', 'T'), '24hrs.txt', '6hrs.txt', '7days.txt', 'feed_hourly.xml']
plot = ['7days.png.xml', '24hrs.png.xml', 'rose_12hrs.png.xml']

Questa sezione specifica le attività che devono essere eseguite ogni ora in modalità ‘live logging’ o l’esecuzione oraria di un attività di cron.

services è un elenco di ‘servizi’ per caricare i dati. Ognuno qui elencato deve avere un file di configurazione pywws/services/. See pywws.toservice per ulteriori dettagli.

text and plot sono elenchi di modelli di testo e grafici che devono essere elaborati ed, opzionalmente, caricati sul tuo sito Web.

Cambiato nella versione 13.06_r1015: Aggiunto il flag 'T'. Precedentemente i modelli Twitter sono stati indicati separatamente in voci twitter in [hourly] e di altre sezioni. La sintassi precedente funziona ancora, ma è obsoleta.

12 hourly: le attività da fare ogni 12 ore

[12 hourly]
services = []
text = []
plot = []

Questa sezione specifica le attività che devono essere eseguite ogni 12 ore in modalità ‘live logging’ o l’esecuzione di un attività oraria di cron. Per cose che non cambiano molto spesso, come i grafici mensili.

services è un elenco di ‘servizi’ per caricare i dati. Ognuno qui elencato deve avere un file di configurazione pywws/services/. See pywws.toservice per ulteriori dettagli.

text and plot sono elenchi di modelli di testo e grafici che devono essere elaborati ed, opzionalmente, caricati sul tuo sito Web.

daily: le attività da fare ogni 24 ore

[daily]
services = []
text = ['feed_daily.xml']
plot = ['2008.png.xml', '2009.png.xml', '2010.png.xml', '28days.png.xml']

Questa sezione specifica le attività che devono essere eseguite ogni giorno in modalità ‘live logging’ o l’esecuzione di un jun attività oraria di cron. Per le cose che non cambiano molto spesso, ad esempio i grafici mensilmente o annualmente.

services è un elenco di ‘servizi’ per caricare i dati. Ognuno qui elencato deve avere un file di configurazione pywws/services/. See pywws.toservice per ulteriori dettagli.

text and plot sono elenchi di modelli di testo e grafici che devono essere elaborati ed, opzionalmente, caricati sul tuo sito Web.

ftp: configurazione di caricamento su un sito web

[ftp]
local site = False
secure = False
site = ftp.your_isp.co.uk
user = username
password = userpassword
directory = public_html/weather/data/

Queste voci forniscono i dettagli del sito web (o delle directory locali) in cui processare i file di testo e le immagini grafiche che devono essere trasferite.

local site Specifica se il file deve essere copiato in una directory locale o inviato a un sito remoto. È possibile impostare questa opzione se si esegue il server web sulla stessa macchina di pywws.

secure Specifica se per trasferire i file utilizzando il protocollo SFTP (secure FTP) al posto del più comune FTP. Il sito web provider dovrebbe essere in grado di dirvi se è possibile utilizzare SFTP.

site è l’indirizzo web del sito FTP dove trasferire i file.

user e password sono i dati di login del sito FTP. Il provider del sito web dovrebbe avere comunicato a voi.

directory specifica il percorso sul sito FTP (o il file system locale) dove devono essere memorizzati i file. Nota che si potrebbe avere la necessità di sperimentare un po’ - potrebbe essere necessario un carattere ‘/’ all’inizio del percorso.

twitter: Configurazione della pubblicazione su Twitter

[twitter]
secret = longstringofrandomcharacters
key = evenlongerstringofrandomcharacters
latitude = 51.365
longitude = -0.251

secret and key sono i dati di autenticazione forniti da Twitter. Per averli, usa il programma pywws.TwitterAuth.

latitude and longitude sono i dati di posizione facoltativi. Se si include la vostra stazione meteo tweet avrà informazioni sulla posizione in modo che gli utenti possano vedere dov’è la vostra stazione meteo. Potrebbe anche consentire alle persone di trovare la vostra stazione meteo tweet se si cerca per località.

underground, metoffice, temperaturnu ecc: Configurazione della pubblicazione su ‘servizi’

[underground]
station = IXYZABA5
password = secret

Queste sezioni contengono informazioni quali password e ID stazione necessari per caricare i dati in servizi meteorologici. I nomi dei dati dipendono dal servizio. L’esempio illustrato è per Weather Underground.

station Il PWS ID (identificativo della stazione) assegnato alla stazione meteo da Weather Underground.

password è la tua password di Weather Underground.

status.ini - formato del file di stato

Questo file è stato scritto da pywws e non dovrebbe (solitamente) essere modificato. Le seguenti sezioni che sono attualmente in uso:

  • fixed: valori copiati dalla stazione meteorologica “fixed block”.

  • clock: informazioni di sincronizzazione.

  • last update: data e ora del completamento delle attività più recenti.

fixed: valori copiati dalla stazione meteorologica “fixed block”.

[fixed]
fixed block = {...}

fixed block tutti i dati memorizzati nei primi 256 byte di memoria della stazione. Questo include i valori massimi e minimi, impostazioni di soglia di allarme, unità di visualizzazione e così via.

clock: informazioni di sincronizzazione

[clock]
station = 1360322930.02
sensor = 1360322743.69

Questi valori sono i tempi misurati quando l’orologio della stazione registra alcuni dati e quando i sensori esterni trasmettono un nuovo set di dati. Essi sono utilizzati per cercare di impedire che l’interfaccia USB si blocca se il computer accede alla stazione meteo al tempo stesso di uno di questi eventi, è un problema comune a molte stazioni compatibile con EasyWeather. I tempi sono misurati ogni 24 ore per consentire la deriva negli orologi.

last update: data e ora del completamento delle attività più recenti

[last update]
hourly = 2013-05-30 19:04:15
logged = 2013-05-30 19:04:15
daily = 2013-05-30 09:04:15
openweathermap = 2013-05-30 18:59:15
underground = 2013-05-30 18:58:34
metoffice = 2013-05-30 18:59:15
12 hourly = 2013-05-30 09:04:15

Questi record data & ora sono dell’ultimo completamento riuscito delle varie attività. Essi sono utilizzati per consentire alle attività infruttuose (per esempio mancanza di rete prevenzione upload) ad essere riprovata dopo pochi minuti.


Commenti o domande? Si prega di iscriversi per al mailing list pywws http://groups.google.com/group/pywws e facci sapere.