TapHome
Oficiálna · TapHome Overená Energia a meranie

SmartThings Spínač/Zásuvka s Meraním Spotreby

SmartThings spínač/zásuvka s meraním spotreby cez SmartThings Cloud API. Ovládaj zapnutie/vypnutie a monitoruj spotrebu energie z TapHome cez HTTPS.

SamsungPacket Parser → HTTP2 zariadeniaRevízia 1.0 Posledná aktualizácia: 28. marca 2026
SmartThings Spínač/Zásuvka s Meraním Spotreby

Import do aplikácie TapHomeHardvér › Packet Parser › Pridať zo šablóny

Stiahnuť šablónu
Na tejto stránke

Návod na integráciu

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

  1. Prejdi na account.smartthings.com/tokens a prihlás sa Samsung účtom
  2. Klikni na Generate new token a pomenuj ho (napr. „TapHome Integration")
  3. Vyber oprávnenie Devices — je potrebné na čítanie stavu a odosielanie príkazov
  4. 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

  1. Prihlás sa na my.smartthings.com
  2. Nájdi cieľové zariadenie v zozname zariadení
  3. 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.value reportovaný vo wattoch, konvertovaný na kW šablónou (÷ 1000)
  • Celková spotreba — components.main.energyMeter.energy.value reportovaná 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á

  1. Over, že SmartThings zariadenie je online — skontroluj jeho stav v aplikácii SmartThings
  2. Potvrď, že premenná DeviceId zodpovedá správnemu UUID zariadenia
  3. Otestuj API manuálne: GET https://api.smartthings.com/v1/devices/{DeviceId}/status s hlavičkou Authorization: Bearer {Token} — malo by vrátiť JSON odpoveď so stavom zariadenia
  4. Uisti sa, že Token má správne oprávnenie (Devices — čítanie a vykonávanie)

Meranie výkonu ukazuje nulu

  1. Potvrď, že zariadenie skutočne spotrebúva energiu — zapni pripojenú záťaž
  2. Over, že SmartThings zariadenie podporuje schopnosti powerMeter a energyMeter — nie všetky spínače reportujú výkon
  3. Manuálne odošli dotaz na status API a over, že components.main.powerMeter.power.value vracia 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.

Dostupné zariadenia 2

Tieto zariadenia sa po importe zobrazia v TapHome.

SmartThings Spínač/Zásuvka Modul
Vlastné premenné
Token (string) = 0ead2552-e331-4355-b483-81d3898eb5baSmartThings Personal Access Token pre autentifikáciu API (vygenerujte na account.smartthings.com/tokens)
DeviceId (string) = 47eff6bf-83c9-4374-a367-b254759b486dSmartThings UUID zariadenia — identifikuje cieľový spínač alebo zásuvku

SmartThings Switch/Plug with Power Metering

Čítanie (modul)
VAR response := SENDHTTPREQUEST("/v1/devices/"+DeviceId+"/status", "GET", "", "Authorization: Bearer "+Token);
IF response.IsSuccess
 StatusJson := response.Content;
ELSE
 ADDERROR(response.StatusCode + " (" + response.ReasonPhrase + ")");
END
Elektromer Elektromer Len na čítanie

Meranie spotreby energie — okamžitý výkon (kW) a kumulatívna energia (kWh) cez SmartThings Cloud API

numeric Jednotka: kW / kWh JSON
Premenná: DeviceId

Elektromer

Čítanie celkovej spotreby
VAR value := PARSEJSON(StatusJson, "components.main.energyMeter.energy.value", 1);
IF(ISNULL(value), NaN, value);
Čítanie odberu
VAR value := PARSEJSON(StatusJson, "components.main.powerMeter.power.value", 1);
IF(ISNULL(value), NaN, value / 1000);
Spínač Prepínač Čítanie aj zápis
boolean JSON
Hodnoty / Stavy: ON · OFF

Spínač

Čítanie stavu prepínača
VAR value := PARSEJSON(StatusJson, "components.main.switch.switch.value", 1);
IF(ISNULL(value), NaN, if(value="on", 1, 0));
Zápis stavu prepínača
# Set Http request method, body and headers
VAR response := SENDHTTPREQUEST("/v1/devices/"+DeviceId+"/commands", 
"POST", 
"{\"commands\": [ { \"component\": \"main\", \"capability\": \"switch\", \"command\": \""+IF(St=1, "on", "off")+"\", \"arguments\": [] } ] }",
"Authorization: Bearer "+Token);


# Wait a little an read the state again to prevent state shuffle
SLEEP(500);
response := SENDHTTPREQUEST("/v1/devices/"+DeviceId+"/status", "GET", "", "Authorization: Bearer "+Token);
IF response.IsSuccess
 StatusJson := response.Content;
 # ADDINFO("StatusJson refreshed");
ELSE
 ADDERROR(response.StatusCode + " (" + response.ReasonPhrase + ")");
END
Pripojenie: Packet Parser → HTTP
Možné vylepšenia (4)
  • Power Unit — Unit string for power reading (W), available in status response
  • Energy Unit — Unit string for energy reading (kWh), available in status response
  • Health Check — Device health/online status, available via SmartThings Health API
  • Refresh — Force refresh device state via SmartThings refresh capability command

Zdroje

Našli ste problém s touto šablónou zariadenia?

Napíšte nám, čo nefunguje, čo chýba, alebo ako by sa mala šablóna správať. Vaša spätná väzba nám pomáha udržiavať katalóg presný.

Šablóna · portál TapHome SmartThings Spínač/Zásuvka s Meraním Spotreby Otvorte túto šablónu v Customer Portali a aplikujte ju na svoj domov, alebo navrhnite zmenu a odošlite ju späť do katalógu. Packet Parser → HTTP Zobraziť v portáli TapHome