
Táto šablóna integruje ľubovoľný SmartThings-kompatibilný spínač alebo zásuvku s meraním spotreby do TapHome. Komunikácia prebieha cez SmartThings Cloud REST API v1 na api.smartthings.com cez HTTPS — šablóna nekomunikuje priamo s fyzickým zariadením. Zariadenie môže byť ZigBee, Z-Wave alebo Matter — pokiaľ je pripojené k SmartThings účtu a vystavuje schopnosti switch, powerMeter a energyMeter, šablóna bude fungovať.
Šablónu vytvoril Csongor Varga a demonštroval ju na ZigBee zásuvke BlitzWolf BW-SHP15, ale nie je obmedzená na tento model.
Konfigurácia
Šablóna vyžaduje dve premenné nakonfigurované v TapHome po importe:
- Token — SmartThings Personal Access Token (PAT) používaný na Bearer autentifikáciu
- DeviceId — UUID cieľového zariadenia v platforme SmartThings
Vygenerovanie Personal Access Tokenu
- Prejdi na account.smartthings.com/tokens a prihlás sa Samsung účtom
- Klikni na Generate new token a pomenuj ho (napr. „TapHome Integration")
- Vyber oprávnenie Devices — je potrebné na čítanie stavu a odosielanie príkazov
- Klikni na Generate Token a okamžite skopíruj token — toto je jediná príležitosť na získanie hodnoty
Štandardné Personal Access Tokeny (vytvorené po 30. decembri 2024) sú platné iba 24 hodín. Token musí byť pregenerovaný a aktualizovaný v TapHome pred vypršaním, inak integrácia prestane fungovať. Staršie tokeny vytvorené pred týmto dátumom môžu mať dlhšiu platnosť.
Nájdenie Device ID
- Prihlás sa na my.smartthings.com
- Nájdi cieľové zariadenie v zozname zariadení
- Skopíruj Device ID zo stránky s detailmi zariadenia — ide o UUID reťazec (napr.
47eff6bf-83c9-4374-a367-b254759b486d)
Pridanie viacerých zariadení
Každé SmartThings zariadenie vyžaduje vlastnú inštanciu modulu. Na pridanie ďalšieho zariadenia importuj šablónu znova a nakonfiguruj nové DeviceId. Rovnaký Token je možné použiť pre všetky moduly.
Schopnosti zariadenia
Ovládanie spínača
Šablóna vystavuje zariadenie ako spínač. Stav sa číta zo SmartThings status odpovede (components.main.switch.switch.value — "on" alebo "off", mapované na 1/0). Príkazy spínača sa odosielajú cez POST /v1/devices/{DeviceId}/commands so schopnosťou switch.
Po odoslaní príkazu spínača šablóna čaká 500 ms a znovu načíta stav zariadenia, aby zabránila premiešaniu stavov medzi príkazom a ďalším cyklom pollingu. Spínač sa polluje každých 2,5 sekundy.
Meranie spotreby
Vstavaný elektromer číta dve hodnoty zo status odpovede:
- Okamžitý výkon —
components.main.powerMeter.power.valuereportovaný vo wattoch, konvertovaný na kW šablónou (÷ 1000) - Celková spotreba —
components.main.energyMeter.energy.valuereportovaná priamo v kWh
Elektromer je len na čítanie a polluje sa každých 15 sekúnd.
Ďalšie schopnosti
SmartThings API tiež vystavuje reťazce jednotiek výkonu a energie, stav zariadenia (health) a schopnosť refresh na vynútenie okamžitej aktualizácie stavu. Tieto môžu byť pridané v budúcej aktualizácii šablóny.
Riešenie problémov
Integrácia prestane fungovať po 24 hodinách
Štandardné SmartThings PAT tokeny vypršia po 24 hodinách. Vygeneruj nový token na account.smartthings.com/tokens a aktualizuj premennú Token v TapHome module. Ak je časté obnovovanie tokenu nepraktické, over, či je na účte dostupný starší token s dlhšou platnosťou.
Zariadenie neodpovedá
- Over, že SmartThings zariadenie je online — skontroluj jeho stav v aplikácii SmartThings
- Potvrď, že premenná DeviceId zodpovedá správnemu UUID zariadenia
- Otestuj API manuálne:
GET https://api.smartthings.com/v1/devices/{DeviceId}/statuss hlavičkouAuthorization: Bearer {Token}— malo by vrátiť JSON odpoveď so stavom zariadenia - Uisti sa, že Token má správne oprávnenie (Devices — čítanie a vykonávanie)
Meranie výkonu ukazuje nulu
- Potvrď, že zariadenie skutočne spotrebúva energiu — zapni pripojenú záťaž
- Over, že SmartThings zariadenie podporuje schopnosti
powerMeteraenergyMeter— nie všetky spínače reportujú výkon - Manuálne odošli dotaz na status API a over, že
components.main.powerMeter.power.valuevracia nenulovú hodnotu
Toto je cloudová integrácia — vyžaduje aktívne internetové pripojenie na TapHome CCU. Šablóna komunikuje so servermi Samsungu, nie s fyzickým zariadením v lokálnej sieti.
