Widgets personalizzati

Hai un sensore non supportato dall'applicazione? Crea il tuo widget personalizzato! Scrivi il tuo script sul Raspberry Pi e leggi i risultati dall'app RaspController.

Crea il tuo script personalizzato sul Raspberry Pi. Lo script deve terminare con la stampa di almeno un risultato, questo risultato verrà catturato da RaspController e visualizzato.

Il risultato deve essere stampato nel formato <result1>x</result1>.

Possono essere stampati fino a 9 risultati (<result9>x</result9>).

Se qualcosa viene stampato dallo script senza i tag <result>, l’applicazione mostrerà una finestra di dialogo con il testo; utile per segnalare errori:

print("Questo è il testo del mio errore")

#!/usr/bin/python

import random

#Generating a string that contains a random number
value1 = str(random.randint(0, 100))
value2 = str(random.randint(0, 100))
value3 = str(random.randint(0, 100))

#Preparation of the result
result1 = "<result1>{}</result1>".format(value1)
result2 = "<result2>{}</result2>".format(value2)
result3 = "<result3>{}</result3>".format(value3)

#Print the result that will be read by the application
print(result1)
print(result2)
print(result3)

Script di esempio in python

Configurazione dell'app

Crea un nuovo “Widget utente” inserendo il nome e il comando per eseguire il tuo script.

Quando utilizzi il Widget, lo script verrà eseguito e alla fine il risultato verrà mostrato nell’applicazione.

In questo passaggio è possibile assegnare un’etichetta da associare a ciascun risultato.

Ricorsività

Importante: non usare cicli infiniti nei tuoi script per mostrare risultati aggiornati. Usa invece la funzione “Ricorsivo” appropriata dell’app.

L’app eseguirà lo script e quando riceverà un risultato lo visualizzerà. In modalità “ricorsivo”, dopo aver visualizzato i dati, lo script verrà eseguito di nuovo. Se lo script fallisce o viene visualizzata una finestra di dialogo, la ricorsione si interrompe e lo script deve essere riavviato manualmente.

Se la modalità “Ricorsivo” è attiva, è possibile impostare un valore di ritardo tra una lettura e l’altra (si consiglia almeno 1 secondo).

Risultati

I risultati ottenuti dallo script saranno visualizzati nell’applicazione insieme alle etichette assegnate durante la configurazione.

È possibile visualizzare i risultati come testo normale o come indicatore.

Uso dell'indicatore

Invece del testo normale, puoi mostrare i risultati con un indicatore.

Nella fase di configurazione, seleziona “Usa indicatore” e imposta anche il valore minimo, il valore massimo, l’unità di misura e il numero di cifre decimali.

IMPORTANTE: per usare l’indicatore, lo script deve restituire solo un valore numerico (senza unità di misura): <result1>27,2</result1>

Se restituisci un valore che contiene anche una stringa (ad esempio <result1>Temp = 27,2°C</result1>), l’indicatore non può essere utilizzato e il risultato verrà visualizzato come testo normale.