TapHome

Sensibo Controllo intelligente del condizionatore

Packet Parser → HTTP
Inviato da
Ultimo aggiornamento: 06. 2026
Sensibo Controllo intelligente del condizionatore

Il template Sensibo Air Conditioner Smart Control collega TapHome a qualsiasi condizionatore controllato a infrarossi tramite un controller intelligente Sensibo (Sky, Air o Air Pro). Il dispositivo Sensibo viene posizionato vicino al condizionatore, apprende i codici IR e rende disponibile il controllo completo tramite la Sensibo Cloud API v2. TapHome comunica con i server Sensibo tramite HTTPS e riceve dati di stato in formato JSON — non è richiesto alcun cablaggio fisico al condizionatore.

Il template fornisce 8 dispositivi che coprono accensione/spegnimento, selezione della modalità operativa, velocità del ventilatore, posizione delle alette verticali, termostato con controllo del setpoint, monitoraggio di temperatura e umidità, controllo del display e avvisi di manutenzione filtro. Gli unici requisiti sono un account Sensibo, un dispositivo Sensibo connesso al Wi-Fi e una chiave API.

Configurazione

Account Sensibo e configurazione dispositivo

Il dispositivo Sensibo (Sky, Air o Air Pro) deve essere installato, abbinato al condizionatore tramite l’app Sensibo e connesso alla rete Wi-Fi. Il dispositivo deve risultare online nell’app Sensibo prima di procedere con l’integrazione TapHome.

Ottenere la chiave API
  1. Aprire home.sensibo.com/me/api nel browser
  2. Accedere con le credenziali dell’account Sensibo
  3. Fare clic su Generate API Key se non si dispone già di una chiave
  4. Copiare la chiave API — è una lunga stringa alfanumerica

La chiave API garantisce l’accesso a tutti i dispositivi Sensibo dell’account.

Trovare l’identificatore POD

Il POD è un identificatore univoco per ogni dispositivo Sensibo. Dove trovarlo:

  • Nell’app Sensibo — aprire le impostazioni del dispositivo e cercare il Device ID
  • Tramite API — chiamare GET https://home.sensibo.com/api/v2/users/me/pods?apiKey={apiKey} e annotare il campo id per ogni dispositivo

Ogni dispositivo Sensibo ha un POD diverso. Se si dispone di più dispositivi Sensibo, è necessario importare il template separatamente per ognuno con il proprio POD.

Parametri di importazione

Durante l’importazione del template in TapHome, inserire:

  • API Key — la chiave API dal portale sviluppatori Sensibo
  • POD — l’identificatore univoco per l’unità Sensibo specifica
Dipendenza da internet

Questa è un’integrazione esclusivamente cloud. Tutti i dati transitano attraverso i server Sensibo (home.sensibo.com:443). Il template non funzionerà senza una connessione internet attiva sia sul TapHome Core che sul dispositivo Sensibo.

Capacità dei dispositivi

Monitoraggio temperatura e umidità

Il sensore Current Temperature & Humidity legge i sensori integrati di temperatura e umidità del dispositivo Sensibo. La temperatura viene riportata nell’unità configurata sul dispositivo Sensibo (tipicamente Celsius). L’umidità viene divisa per 100 per l’intervallo di ingresso analogico TapHome 0–1 (es. 60% diventa 0,60).

Controllo termostato

Il Thermostat fornisce il controllo climatico completo con setpoint di temperatura. Legge la temperatura ambiente attuale, l’umidità e la temperatura target dallo stato del condizionatore. La scrittura di un nuovo setpoint invia una richiesta PATCH all’API Sensibo, che trasmette il corrispondente comando IR al condizionatore. L’intervallo di temperatura disponibile dipende dal modello di condizionatore abbinato (tipicamente 16–32 °C).

Controllo alimentazione

L’interruttore Power accende e spegne il condizionatore. Allo spegnimento, Sensibo invia il comando IR di spegnimento. All’accensione, il condizionatore riprende nell’ultima modalità attiva.

Selezione modalità

Il commutatore AC Mode controlla la modalità operativa con 6 stati:

ValoreModalità
0SPENTO
1Raffreddamento
2Riscaldamento
3Ventilatore
4Deumidificazione
5Auto

Impostare la modalità su 0 (SPENTO) invia un comando di spegnimento anziché un cambio di modalità. Le modalità disponibili dipendono dal condizionatore abbinato — non tutte le unità supportano ogni modalità.

Controllo velocità ventilatore

Il commutatore Fan Level controlla la velocità del ventilatore con 6 livelli:

ValoreLivello
0Nessuno
1Basso
2Medio
3Alto
4Auto
5Forte

I livelli disponibili dipendono dal modello di condizionatore abbinato.

Controllo alette verticali

Il commutatore Vertical Swing controlla la posizione delle alette verticali con 10 stati:

ValorePosizione
0Fermo
1Fisso alto
2Fisso medio-alto
3Fisso medio
4Fisso medio-basso
5Fisso basso
6Intervallo alto
7Intervallo medio
8Intervallo basso
9Intervallo completo

Le posizioni disponibili dipendono dal condizionatore abbinato. Molte unità supportano solo un sottoinsieme di queste posizioni.

Controllo display

L’interruttore Display Light controlla il pannello LED del condizionatore. Non tutti i modelli supportano il controllo del display tramite IR — se l’unità abbinata non supporta questa funzione, il comando non avrà effetto.

Avviso manutenzione filtro

Il sensore Filter Clean Required (contatto reed) indica quando i filtri del condizionatore necessitano di pulizia. Legge il flag shouldCleanFilters dall’API Sensibo — il valore è 1 quando i filtri necessitano di pulizia e 0 quando sono puliti. L’indicatore del filtro può essere resettato tramite l’app Sensibo.

Funzionalità aggiuntive

L’API Sensibo offre anche controllo delle alette orizzontali, funzioni timer, Climate React (controllo climatico automatico basato su soglie), misurazioni storiche e sensori di qualità dell’aria (TVOC, CO2 su Air Pro). Queste funzionalità possono essere aggiunte in un futuro aggiornamento del template.

Risoluzione problemi

L’API restituisce errore o nessun dato
  1. Verificare che il dispositivo Sensibo sia online — controllare il LED di stato e l’app Sensibo
  2. Confermare che la chiave API sia corretta e non sia stata rigenerata
  3. Assicurarsi che il parametro POD corrisponda esattamente all’identificatore del dispositivo (distinzione maiuscole/minuscole)
  4. Controllare che sia il TapHome Core che il dispositivo Sensibo abbiano una connessione internet attiva
Errore “API Key is empty” o “Pod is empty”

Il template verifica che entrambi i parametri siano impostati prima di inviare le richieste API. Se viene visualizzato questo errore, aprire le variabili del modulo in TapHome e verificare che i campi API Key e POD contengano i valori corretti.

I comandi non hanno effetto sul condizionatore

Il dispositivo Sensibo controlla il condizionatore tramite segnali IR (infrarossi). Assicurarsi che il dispositivo Sensibo abbia una linea di vista libera verso il ricevitore IR del condizionatore. Se una funzione specifica (display, posizione alette) non funziona, il condizionatore abbinato potrebbe non supportare tale funzione tramite il suo protocollo IR.

La Sensibo Cloud API richiede una connessione internet attiva e dipende dalla disponibilità dei server Sensibo. Durante interruzioni del cloud o della connessione internet, il template non riceverà dati aggiornati né invierà comandi. Non esiste un fallback locale — tutta la comunicazione passa attraverso i server Sensibo.

Dispositivi disponibili

Sensibo Controllo intelligente del condizionatore Modulo
Variabili personalizzate
apiKey (string)Chiave API Sensibo Cloud (ottenere da https://home.sensibo.com/me/api)
pod (string)Identificatore dispositivo Sensibo (POD ID, univoco per ogni dispositivo Sensibo)

Sensibo Air Conditioner Smart Control

Lettura (modulo)
responseJson := "error";
IF LENGTH(apiKey) = 0
    ADDERROR("API Key is empty. Fill API Key in module variables");
	RETURN(0);
END

IF LENGTH(pod) = 0
    ADDERROR("Pod is empty. Fill pod in module variables");
	RETURN(0);
END

VAR response := SENDHTTPREQUEST("/api/v2/pods/"+pod+"/?fields=*&apiKey="+apiKey, "GET", "");

IF(response.IsSuccess)
    responseJson := response.Content;
    mode := PARSEJSON(responseJson,"$.result.acState.mode");
ELSE
    VAR contentJson := response.Content;
    VAR errCode := response.StatusCode;
    VAR message := PARSEJSON(contentJson, "message", 1);
	IF ISNULL(message)
		message := PARSETEXT(response.Content, "<title>", "</title>");
	END
    ADDERROR("Failed to read data - (" + errCode + ") " + message);
END
Temperatura e umidità attuali Sensore di temperatura Solo lettura

Sensori di temperatura e umidità integrati — umidità divisa per 100 per intervallo TapHome 0–1

numeric Unità: °C / % JSON parsejson()

Temperatura e umidità attuali

Lettura umidità
PARSEJSON(responseJson,"$.result.measurements.humidity")/100.0;
Lettura temperatura
PARSEJSON(responseJson,"$.result.measurements.temperature");
Livello ventilatore Interruttore multivalore

Controllo velocità ventilatore — basso, medio, alto, auto, forte (livelli disponibili dipendono dal modello abbinato)

string → numeric JSON parsejson() + SWITCH mapping
Valori / Stati: low · medium · high · auto · strong

Livello ventilatore

Lettura stato interruttore
VAR fanLevel := PARSEJSON(responseJson,"$.result.acState.fanLevel");
SWITCH(fanLevel, "low", 1, "medium", 2, "high", 3, "auto", 4, "strong", 5, 0);
Scrittura stato interruttore
VAR localfan := SWITCH(Mu, 1, "low", 2, "medium", 3, "high", 4, "auto", 5, "strong", "");

SENDHTTPREQUEST("/api/v2/pods/"+pod+"/acStates/fanLevel?apiKey="+apiKey, "PATCH", "{\"newValue\": \""+localfan+"\"}");
Luce display Interruttore

Controllo LED pannello display — non tutti i modelli supportano questa funzione

string/boolean JSON parsejson() + IF comparison
Valori / Stati: ON · OFF

Luce display

Lettura stato interruttore
IF(PARSEJSON(responseJson,"$.result.acState.light")="on",1,0)
Scrittura stato interruttore
SENDHTTPREQUEST("/api/v2/pods/"+pod+"/acStates/light?apiKey="+apiKey, "PATCH", "{\"newValue\": "+IF(St,"true","false")+"}");
Modalità condizionatore Interruttore multivalore

Modalità operativa — SPENTO, Raffreddamento, Riscaldamento, Ventilatore, Deumidificazione, Auto (modalità disponibili dipendono dal modello abbinato)

string → numeric Custom variable + SWITCH mapping
Valori / Stati: OFF · Cool · Heat · Fan · Dry · Auto

Modalità condizionatore

Lettura stato interruttore
SWITCH(mode, "cool", 1, "heat", 2, "fan", 3, "dry", 4, "auto", 5, 0);
Scrittura stato interruttore
VAR localmode := SWITCH(Mu, 1, "cool", 2, "heat", 3, "fan", 4, "dry", 5, "auto", "");

IF (Mu > 0)
SENDHTTPREQUEST("/api/v2/pods/"+pod+"/acStates/mode?apiKey="+apiKey, "PATCH", "{\"newValue\": \""+localmode+"\"}");

ELSE

SENDHTTPREQUEST("/api/v2/pods/"+pod+"/acStates/on?apiKey="+apiKey, "PATCH", "{\"newValue\": false}");

END
Alimentazione Interruttore

Controllo accensione/spegnimento via comando IR

boolean JSON parsejson() + IF
Valori / Stati: ON · OFF

Alimentazione

Lettura stato interruttore
IF(PARSEJSON(responseJson,"$.result.acState.on"),1,0)
Scrittura stato interruttore
SENDHTTPREQUEST("/api/v2/pods/"+pod+"/acStates/on?apiKey="+apiKey, "PATCH", "{\"newValue\": "+IF(St,"true","false")+"}");
Pulizia filtro necessaria Contatto reed Solo lettura

Avviso manutenzione filtro — indica quando i filtri necessitano di pulizia

boolean JSON parsejson() + IF

Pulizia filtro necessaria

Lettura
IF(PARSEJSON(responseJson,"$.result.filtersCleaning.shouldCleanFilters"),1,0)
Alette verticali Interruttore multivalore

Controllo posizione alette verticali — 10 posizioni da fissa a oscillazione (posizioni disponibili dipendono dal modello abbinato)

string → numeric JSON parsejson() + SWITCH mapping
Valori / Stati: stopped · fixedTop · fixedMiddleTop · fixedMiddle · fixedMiddleBottom · fixedBottom · rangeTop · rangeMiddle · rangeBottom · rangeFull

Alette verticali

Lettura stato interruttore
VAR swing := PARSEJSON(responseJson,"$.result.acState.swing");
SWITCH(swing, 
"stopped", 0, 
"fixedTop", 1, 
"fixedMiddleTop", 2, 
"fixedMiddle", 3, 
"fixedMiddleBottom", 4, 
"fixedBottom", 5, 
"rangeTop", 6, 
"rangeMiddle", 7, 
"rangeBottom", 8, 
"rangeFull", 9, 
0);
Scrittura stato interruttore
VAR localswing := SWITCH(Mu, 

0, "stopped", 
1, "fixedTop", 
2, "fixedMiddleTop", 
3, "fixedMiddle", 
4, "fixedMiddleBottom", 
5, "fixedBottom", 
6, "rangeTop", 
7, "rangeMiddle", 
8, "rangeBottom", 
9, "rangeFull"

, "");

SENDHTTPREQUEST("/api/v2/pods/"+pod+"/acStates/swing?apiKey="+apiKey, "PATCH", "{\"newValue\": \""+localswing+"\"}");
Termostato Termostato

Controllo setpoint temperatura con letture attuali di temperatura e umidità

numeric Unità: °C JSON parsejson()

Termostato

Lettura temperatura
PARSEJSON(responseJson,"$.result.measurements.temperature");
Lettura umidità
PARSEJSON(responseJson,"$.result.measurements.humidity")/100.0;
Lettura temperatura desiderata
PARSEJSON(responseJson,"$.result.acState.targetTemperature");
Scrittura temperatura desiderata
SENDHTTPREQUEST("/api/v2/pods/"+pod+"/acStates/targetTemperature?apiKey="+apiKey, "PATCH", "{\"newValue\": "+Se+"}");
Connessione: Packet Parser → HTTP
Possibili miglioramenti (10)
  • Horizontal Swing — Horizontal swing/louver position control. Available values vary by AC model. Present in acState but not implemented in TapHome template
  • Timer — GET/PUT/DELETE /pods/{pod}/timer — set countdown timer for AC on/off. Available in HA as 10-minute timer toggle
  • Schedules — GET/POST/PUT/DELETE /pods/{pod}/schedules — create and manage recurring AC schedules
  • Climate React — GET/PUT/POST /pods/{pod}/smartMode — automatic climate control based on temperature/humidity thresholds. Configurable high/low triggers with independent AC states
  • Historical Measurements — GET /pods/{pod}/historicalMeasurements — temperature and humidity history over time
  • TVOC Sensor — Total Volatile Organic Compounds sensor. Available on Sensibo Air Pro only
  • CO2 Sensor — Carbon dioxide level sensor. Available on Sensibo Air Pro only
  • Feels-Like Temperature — Computed feels-like temperature based on temperature and humidity. Available on Sky, Air, Air Pro
  • Filter Last Reset — Timestamp of last filter cleaning indicator reset
  • Filter Reset — Button to reset filter cleaning indicator (currently template only reads shouldCleanFilters, cannot reset)

Fonti

Hai trovato un problema con questo template?

Dicci cosa non funziona, cosa manca o come dovrebbe comportarsi il template. Il tuo feedback ci aiuta a mantenere il catalogo accurato.

Verificato da TapHome

Vuoi usarlo nel tuo TapHome Core?

Apri questo template nel Customer Portal per applicarlo a una delle tue case, o crea una proposta di modifica e inviala al catalogo.

Apri nel portale