
Acest șablon integrează în TapHome orice întrerupător sau priză compatibilă cu SmartThings, cu măsurarea consumului. Comunicația se realizează prin SmartThings Cloud REST API v1 (api.smartthings.com), folosind HTTPS — șablonul nu comunică direct cu dispozitivul fizic. Dispozitivul poate fi ZigBee, Z-Wave sau Matter — atât timp cât este conectat la un cont SmartThings și oferă capabilitățile switch, powerMeter și energyMeter, șablonul va funcționa.
Șablonul a fost creat de Csongor Varga și testat cu o priză ZigBee BlitzWolf BW-SHP15, dar nu este limitat la acest model.
Configurare
După import, șablonul necesită configurarea a două variabile în TapHome:
- Token — un SmartThings Personal Access Token (PAT) folosit pentru autentificarea Bearer
- DeviceId — UUID-ul dispozitivului țintă în platforma SmartThings
Generarea unui Personal Access Token
- Accesați account.smartthings.com/tokens și conectați-vă cu un cont Samsung
- Faceți clic pe Generate new token și dați-i un nume (de ex. „TapHome Integration”)
- Selectați domeniul de permisiuni Devices — este necesar pentru citirea stării și trimiterea comenzilor
- Faceți clic pe Generate Token și copiați imediat tokenul — aceasta este singura ocazie de a obține valoarea
Personal Access Token-urile standard (create după 30 decembrie 2024) sunt valabile doar 24 de ore. Tokenul trebuie regenerat și actualizat în TapHome înainte de expirare, altfel integrarea nu va mai funcționa. Tokenurile mai vechi, create înainte de această dată, pot avea o valabilitate mai lungă.
Găsirea Device ID-ului
- Conectați-vă la my.smartthings.com
- Găsiți dispozitivul țintă în lista de dispozitive
- Copiați Device ID din pagina cu detaliile dispozitivului — este un șir UUID (de ex.
47eff6bf-83c9-4374-a367-b254759b486d)
Adăugarea mai multor dispozitive
Fiecare dispozitiv SmartThings necesită propria instanță de modul. Pentru a adăuga un alt dispozitiv, importați din nou șablonul și configurați un nou DeviceId. Același Token poate fi folosit pentru toate modulele.
Funcțiile dispozitivului
Controlul întrerupătorului
Șablonul oferă dispozitivul ca întrerupător. Starea se citește din răspunsul de stare SmartThings (components.main.switch.switch.value — "on" sau "off", transformate în 1/0). Comenzile de comutare se trimit prin POST /v1/devices/{DeviceId}/commands cu capabilitatea switch.
După trimiterea unei comenzi de comutare, șablonul așteaptă 500 ms și citește din nou starea dispozitivului, pentru a evita oscilarea stării între comandă și următorul ciclu de interogare. Întrerupătorul este interogat la fiecare 2,5 secunde.
Măsurarea consumului
Contorul electric integrat citește două valori din răspunsul de stare:
- Puterea instantanee —
components.main.powerMeter.power.value, raportată în wați și convertită de șablon în kW (÷ 1000) - Consumul total —
components.main.energyMeter.energy.value, raportat direct în kWh
Contorul este doar pentru citire și este interogat la fiecare 15 secunde.
Funcții suplimentare
API-ul SmartThings furnizează și unitățile de măsură pentru putere și energie (ca șiruri de caractere), starea de funcționare a dispozitivului și o capabilitate de reîmprospătare pentru forțarea unei actualizări imediate a stării. Acestea pot fi adăugate într-o actualizare viitoare a șablonului.
Depanare
Integrarea nu mai funcționează după 24 de ore
Tokenurile PAT SmartThings standard expiră după 24 de ore. Generați un token nou la account.smartthings.com/tokens și actualizați variabila Token în modulul TapHome. Dacă reînnoirea frecventă a tokenului nu este practică, verificați dacă în cont este disponibil un token mai vechi, cu valabilitate mai lungă.
Dispozitivul nu răspunde
- Verificați dacă dispozitivul SmartThings este online — verificați starea lui în aplicația SmartThings
- Verificați dacă variabila DeviceId corespunde UUID-ului corect al dispozitivului
- Testați manual API-ul:
GET https://api.smartthings.com/v1/devices/{DeviceId}/statuscu antetulAuthorization: Bearer {Token}— ar trebui să returneze un răspuns JSON cu starea dispozitivului - Asigurați-vă că Tokenul are domeniul de permisiuni corect (Devices — citire și execuție)
Valorile puterii arată zero
- Verificați dacă dispozitivul consumă efectiv energie — porniți consumatorul conectat
- Verificați dacă dispozitivul SmartThings acceptă capabilitățile
powerMeterșienergyMeter— nu toate întrerupătoarele raportează puterea - Interogați manual API-ul de stare și verificați dacă
components.main.powerMeter.power.valuereturnează o valoare diferită de zero
Aceasta este o integrare prin cloud — necesită o conexiune activă la internet pe unitatea centrală TapHome (CCU). Șablonul comunică cu serverele Samsung, nu cu dispozitivul fizic din rețeaua locală.
