Come integrare pywws con vari servizi meteorologici

Questa guida dà brevi istruzioni su come utilizzare pywws con alcuni altri servizi meteorologici e software. Non è completo, e alcuni servizi (come Twitter) sono trattati più dettagliatamente altrove.

YoWindow

YoWindow è un display widget meteo in grado di visualizzare i dati da internet o dalla tua stazione meteo. Per visualizzare i dati della tua stazione pywws devi scrivere in un file locale, in genere ogni 48 secondi quando vengono ricevuti i dati nuovi. Questo è facile da fare:

  1. Arrestare tutti i software pywws

  2. Copiare il modello di esempio ‘ yowindow.xml ‘ nella directory modelli di testo.

  3. Se non hai già fatto, modifica weather.ini e imposta la voce local_files nella sezione [paths] una directory adatta per il vostro file di yowindow.

  4. Aggiungere il modello yowindow per le attività di [live] in weather.ini. Impostare il flag 'L' così il risultato è copiato in una directory locale invece di essere caricata su un sito ftp:

    [live]
    text = [('yowindow.xml', 'L')]
    
  5. Riavviare pywws in registrazione ‘live’.

È possibile controllare se il file è aggiornato ogni 48 secondi usando more o cat per visualizzare sullo schermo il file.

Infine configurare yowindow per utilizzare questo file. Vedere http://yowindow.com/pws_setup.php per le istruzioni su come effettuare questa operazione.

Twitter

Vedere Come configurare pywws per pubblicare messaggi su Twitter per le istruzioni complete.

Weather Underground

Weather Underground (or Wunderground) è uno dei più longevi siti meteo nel mondo. Come molti altri tali servizi, pywws può inviare i dati meteo in internet. Il pywws.toservice modulo gestisce la comunicazione per una serie di servizi on line.

Il primo passo è di impostare un account Weather Underground in http://www.wunderground.com/members/signup.asp. Quindi utilizzare la scheda “Add A Station” e fornire dettagli della stazione come la sua posizione e il tipo. Si dovrebbe quindi avere una stazione ID e password, prendere nota di questi.

Ora arrestare qualsiasi pywws software in esecuzione, quindi provare a utilizzare direttamente pywws.toservice:

python -m pywws.toservice ~/weather/data underground

Questo deve fallire, siccome non è stata impostata la stazione ID e la password, ma crea le voci in weather.ini per la modifica. Modificare weather.ini e la sezione [underground]:

[underground]
station = unknown
password = unknown

Sostituire i valori unknown con stazione ID e password.

Ora provate dinuovo pywws.toservice:

python -m pywws.toservice ~/weather/data underground

Se questo ha funzionato, allora è possibile caricare i vostri ultimi 7 giorni di dati. Si noti che questo potrebbe richiedere molto tempo, soprattutto se avete una breve ‘intervallo di registrazione’. In primo luogo modificare status.ini e rimuovere la voce underground nella sezione [last update]. Quindi eseguire pywws.toservice con l’opzione ‘catchup’ e l’elevato livello di dettaglio così può vederla lavorare:

python -m pywws.toservice -vvc ~/weather/data underground

Una volta che tutto funziona, è possibile aggiungere ‘underground’ alla sezione [logged] nel file weather.ini:

[logged]
services = ['underground']

“RapidFire” aggiornamenti

Weather Underground ha un secondo upload URL per aggiornamenti in tempo reale appena 2,5 secondi. Se si esegue pywws con ‘live logging’ (vedere Come impostare una registrazione ‘live’ con pywws) è possibile utilizzare questa opzione per inviare gli aggiornamenti ogni 48 secondi, con l’aggiunta di ‘underground_rf’ nella sezione [live] delle attività weather.ini:

[live]
services = ['underground_rf']

Non è chiaro se Weather Underground approva l’invio normale RapidFire e aggiornamenti per la stessa stazione. (Vedi http://wiki.wunderground.com/index.php/PWS_-_Upload_Protocol#RapidFire_Updates.) Se si utilizzano solo RapidFire c’è la possibilità di lacune nella continuità dei dati se la stazione “off air” per qualche motivo.

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