Inviare i dati degli script fuori da TapHome: una variabile di testo e HTTP dalle smart rule
Un'integrazione che calcola centinaia di valori negli script delle smart rule oggi non può inviarli a un servizio esterno con una sola richiesta. Una variabile di testo, collezioni condivise o richieste HTTP dagli script delle smart rule permetterebbero a qualsiasi script di costruire un unico JSON e inviarlo.
Oggi i valori calcolati in più script arrivano al modulo che invia le richieste HTTP solo attraverso centinaia di dispositivi ausiliari. Con questa idea gli script condividerebbero un unico valore, ad esempio un intero documento JSON, e il modulo lo invierebbe con una sola richiesta.
Perché e come lo useresti
Sempre più installazioni lavorano con un servizio esterno: gestione energetica tramite il mercato spot, un backend aziendale, uno strumento di reportistica. Un servizio così di solito si aspetta una sola richiesta con molti dati. TapHome sa calcolare questi dati, ma non sa metterli insieme e inviarli in modo semplice:
- La smart rule Script può leggere ogni dispositivo dell’installazione ed eseguire calcoli complessi, ma non può inviare una richiesta HTTP.
SENDHTTPREQUESTfunziona solo negli script Packet parser. - Un modulo Packet parser può inviare richieste, ma i suoi script vedono solo le variabili e i dispositivi di quel modulo.
- L’unico modo per passare valori tra i due è attraverso i dispositivi, e un dispositivo Variabile contiene un numero, non un testo né un elenco.
Un caso tipico: un servizio cloud pianifica quando una batteria domestica si carica, si scarica o vende energia alla rete. Ogni due minuti si aspetta una richiesta JSON con la previsione dei guadagni solari e la previsione dei consumi per ogni ora di oggi e di domani (4 × 24 valori) e con i prezzi spot di acquisto e di vendita per ogni quarto d’ora (2 × 96 valori). Sono 288 campioni, ciascuno con il suo orario, quindi quasi 600 numeri. I prezzi, la previsione e il modello dei consumi si trovano già in script diversi dell’installazione. Per portarli nell’unico modulo che chiama il servizio, l’installatore avrebbe bisogno di centinaia di dispositivi Variabile, uno per ogni valore.
Rileggere il risultato non è il problema: un modulo Packet parser può chiedere al servizio il comando attuale ogni 20 secondi e mostrarlo come Selettore multi-valore. Manca solo la strada verso l’esterno.
| Oggi | Con questa idea | |
|---|---|---|
| 600 valori da inviare | 600 dispositivi Variabile | Un valore condiviso |
| Richiesta HTTP | Solo Packet parser | Anche dalle smart rule |
| JSON costruito in | Modulo che invia | Qualsiasi script |
Cosa sarà possibile
Stiamo valutando questa idea e non abbiamo ancora scelto una soluzione. Niente di quanto segue è pianificato e i dettagli possono ancora cambiare. Una qualsiasi di queste opzioni risolverebbe il caso descritto sopra:
- Una variabile di testo. Un dispositivo Variabile che contiene testo invece di un numero. Uno script costruisce una stringa JSON e la salva, un altro script, ad esempio in un modulo Packet parser, la legge e la invia come corpo della richiesta.
- Collezioni condivise. Una collezione di valori, come un elenco di prezzi, definita una volta e leggibile dagli script delle smart rule e dagli script Packet parser.
- Richieste HTTP dalla smart rule Script.
SENDHTTPREQUESTo una funzione simile direttamente nella smart rule, così lo script che calcola i dati li invia anche. - Invio tramite un canale definito. Una destinazione, come un endpoint HTTP, verrebbe definita una volta e qualsiasi script potrebbe inviarle dati, in modo simile a come si invia una notifica.
Cosa non sarà possibile
- Nuovi calcoli in TapHome. L’idea sposta i dati tra gli script e fuori da TapHome. Non aggiunge ottimizzazione né previsioni a TapHome stesso.
- Più server da un solo modulo. Anche con una variabile di testo o con collezioni condivise, un modulo Packet parser invia le sue richieste all’unico indirizzo impostato nelle sue impostazioni. Ogni server in più richiede comunque un proprio modulo.
- Storico illimitato in un solo valore. L’idea è pensata per i dati di un calcolo, come una previsione per i prossimi giorni, non per conservare mesi di misure.
Come risolverlo oggi
- Fai tutto in un solo modulo Packet parser. Le variabili del modulo sono condivise da tutti gli script e i dispositivi del modulo e possono contenere un’intera risposta JSON. Quando i dati arrivano dallo stesso server a cui li invii, il modulo può scaricarli, elaborarli e inviarli senza una smart rule. Vedi Script e variabili ausiliarie sul modulo.
- Usa percorsi diversi sullo stesso server.
SENDHTTPREQUESTinvia all’indirizzo del modulo, ma percorso, metodo, corpo e intestazioni possono cambiare a ogni chiamata. Vedi Funzioni Packet parser. - Lascia che il servizio ricevente raccolga i dati pubblici. Se gestisci tu il servizio che riceve i dati, può scaricare da solo i dati pubblici, come i prezzi spot. TapHome invia allora solo ciò che conosce soltanto lui, come lo stato della batteria o i consumi.
- Dispositivi nel modulo per pochi valori. Una smart rule Script scrive ogni valore nel proprio dispositivo Variabile all’interno del modulo Packet parser. Lo script di scrittura del modulo può leggere tutti i suoi dispositivi e inviarli con una sola richiesta. Funziona per qualche decina di valori; per centinaia non è pratico, perché ogni valore richiede un proprio dispositivo.
Per saperne di più
- Dove si usano gli script elenca cosa può fare ogni tipo di script.
- Script nelle smart rule e nelle notifiche descrive cosa una smart rule passa al suo script.
Quale servizio vuoi collegare e di quanti dati ha bisogno? Vota questa idea, seguila, rispondi al sondaggio e raccontaci nei commenti.
Quali di queste opzioni risolverebbero la tua integrazione? Scegli tutte quelle valide.
Correlati
Cronologia dello stato
- 3 nov 2026 Raccolta interesse Pubblicato
Commenti 0
Accedi con il tuo account TapHome per commentare. Il team approva i commenti prima che vengano pubblicati.
Ancora nessun commento.
·
Il commento originale è stato eliminato.
Le idee descrivono la direzione, non sono impegni. Non pubblichiamo date; le funzionalità rilasciate vengono annunciate nelle note di rilascio.
Accedi con il tuo account TapHome per seguirla. Ti invieremo un'email quando cambia qualcosa; puoi annullare l'iscrizione con un clic.
Conferma del voto in corso…