TapHome

Somfy TaHoma – žalúzie a rolety io a RTS (lokálne API)

Packet Parser → HTTP
Pridal
Posledná aktualizácia: 11. 2026

Vyžaduje externú bránu

Somfy TaHoma with Developer Mode (local API, HTTPS port 8443) — stránka produktu

Toto zariadenie podporuje mDNS

Namiesto IP adresy môžete zariadenie osloviť na:

gateway-{pin}.local.local

Nahraďte {MAC} MAC adresou zariadenia (veľké písmená, bez dvojbodiek).

TapHome podporuje mDNS — použitie hostname je spoľahlivejšie ako statická IP.

Somfy TaHoma – žalúzie a rolety io a RTS (lokálne API)

Šablóna Somfy TaHoma prepája TapHome s bránou Somfy TaHoma (napríklad TaHoma Switch) cez oficiálne lokálne API brány, ktoré Somfy nazýva Developer Mode. Motory sa s bránou spárujú ako zvyčajne v aplikácii TaHoma by Somfy; TapHome komunikuje len s bránou, cez HTTPS na porte 8443 v lokálnej sieti, bez pripojenia ku cloudu.

Šablóna ovláda polohu rolet a markíz io-homecontrol, polohu a natočenie lamiel vonkajších žalúzií io-homecontrol a jednosmerným motorom RTS posiela príkazy Otvoriť, My, Stop a Zatvoriť.

Komunitná šablóna — zatiaľ neotestovaná s TapHome. Šablóna vznikla v portáli TapHome z dokumentácie Somfy k režimu Developer Mode; mená stavov a príkazov zariadení pochádzajú z komunitných zdrojov (Somfy ich nevymenúva). Otestovaná bola len so simulátorom brány na lokálnom TapHome Core 2025.2, nie so skutočnou bránou TaHoma ani so skutočnými motormi Somfy, a skúsenosti z praxe sú vítané. XML stiahnete na tejto stránke alebo v portáli TapHome: Somfy TaHoma — komunitná šablóna, a importujete ho ako nový modul.

Drôtové motory Somfy bránu nepotrebujú. Motor Somfy na 230 V bez rádiového prijímača (napríklad Somfy WT, štyri vodiče — PE, N, hore, dole) ovláda TapHome priamo reléovými modulmi ako každý iný motor tienenia — pozrite Požiadavky → Tienenie. Táto šablóna je pre motory s rádiom (io-homecontrol alebo RTS) spárované s bránou TaHoma.

Podporované brány

Podľa Somfy funguje Developer Mode na veľkej väčšine brán TaHoma. Nie je dostupný na:

  • TaHoma box alebo Somfy box 1. generácie (štvorcový tvar)
  • Connectivity Kit

Hardvérové pripojenie

Žiadna kabeláž nie je potrebná. Brána TaHoma a TapHome Core musia byť v tej istej lokálnej sieti. Brána používa certifikát podpísaný vlastnou autoritou Overkiz; šablóna sa pripája s ignorovaním chýb certifikátu, takže netreba inštalovať žiadny certifikát.

Konfigurácia

Zapnutie režimu Developer Mode a vytvorenie tokenu

  1. Otvorte aplikáciu TaHoma by Somfy.
  2. Prejdite do Configure the installation › Access the parameters vašej brány TaHoma.
  3. 7-krát ťuknite na PIN brány (napríklad 2001-1234-5678) — zapne sa Developer Mode a spustí sa lokálne API brány.
  4. V ponuke Developer Mode vygenerujte token.

Token sa dá prečítať a skopírovať len pri vytvorení — hneď si ho uložte. Tokenov sa dá vygenerovať viac; ak sa token stratí, vygenerujte nový a zadajte ho v TapHome.

Zistenie adries zariadení

Každý motor spárovaný s bránou má adresu, deviceURL. Adresy zistíte zo zoznamu zariadení brány s tokenom — napríklad z počítača v tej istej sieti:

1
curl -k -H "Authorization: Bearer <token>" https://<gateway-address>:8443/enduser-mobile-web/1/enduserAPI/setup/devices

Motor nájdite podľa label (meno z aplikácie TaHoma) a jeho deviceURL skopírujte presne tak, ako je zobrazená. Šablóna si ju pre požiadavku zakóduje sama.

ProtokolFormátPríklad
io-homecontrolio://{gateway-pin}/{device-id}io://1234-5678-9012/4820485
RTSrts://{gateway-pin}/{device-id}rts://1234-5678-9012/987654321

Tá istá odpoveď ukazuje, čo každý motor podporuje: definition.states a definition.commands. Šablóna očakáva stav core:ClosureState a príkaz setClosure pri rolete alebo markíze, core:ClosureState, core:SlateOrientationState a setClosureAndOrientation pri žalúzii a open, my, stop a close pri motore RTS. Motor, ktorého definícia tieto mená nemá, s daným zariadením fungovať nebude.

Parametre importu

Parameter importuPopisZástupná hodnota
GatewayAddressIP adresa alebo názov hostiteľa brány TaHoma, napríklad gateway-1234-5678-9012.local192.168.1.100
BearerTokenToken z režimu Developer Mode(prázdne)
SlideDeviceUrldeviceURL rolety alebo markízy ioio://1234-5678-9012/12345678
BlindDeviceUrldeviceURL žalúzie ioio://1234-5678-9012/12345678
RtsDeviceUrldeviceURL motora RTSrts://1234-5678-9012/12345678

Ak použijete IP adresu, rezervujte ju pre bránu v routeri, aby sa nemenila.

Šablóna má od každého druhu jedno zariadenie. Zariadenia, ktoré nepotrebujete, vymažte. Pre ďalšie motory importujte šablónu znova s ďalšími adresami — každý import pridá modul brány s vlastnými zariadeniami — a nadbytočné zariadenia vymažte, alebo zmeňte premennú DeviceUrl zariadenia.

Možnosti zariadení

Brána

Modul číta bránu každých 30 s a ukazuje tri servisné atribúty: Verzia protokolu (verzia lokálneho API), ID brány (PIN brány) a Stav pripojenia (napríklad OK). Pri nesprávnom tokene modul ukáže chybu „Check Bearer token in TaHoma By Somfy app → Developer Mode“.

Rolety a markízy io

  • io roleta / markíza — poloha rolety alebo markízy io-homecontrol. Brána hlási 0 = úplne otvorená a 100 = úplne zatvorená; v TapHome je 0 % úplne hore a 100 % úplne dole, rovnaký smer. Zariadenie číta polohu každých 5 s a motorom hýbe príkazom setClosure.

Vonkajšie žalúzie io

  • io vonkajšia žalúzia — poloha a natočenie lamiel vonkajšej žalúzie io-homecontrol. Obe sa posielajú spolu jedným príkazom setClosureAndOrientation, takže zmena polohy pošle aj aktuálne natočenie lamiel a zmena lamiel aktuálnu polohu. Keď TapHome zmení polohu aj lamely naraz, rovnaký príkaz ide len raz.

Motory RTS

Motory RTS (Radio Technology Somfy) sú jednosmerné rádio: príkazy prijímajú, ale svoju polohu nehlásia.

HodnotaPríkazČinnosť
OtvoriťopenPohyb hore / úplne otvoriť
MymyPrejsť do obľúbenej polohy uloženej v motore
StopstopZastaviť pohyb
ZatvoriťclosePohyb dole / úplne zatvoriť
  • Motor RTS — po každom príkaze prepínač ukáže Pripravené, takže ten istý príkaz sa dá poslať znova, napríklad Zatvoriť po tom, čo sa motorom pohlo jeho vlastným ovládačom. Voľba Pripravené pošle Stop.

Žiadne zo zariadení nepohne motorom pri štarte TapHome Core: stav berú z brány, nie z poslednej hodnoty v TapHome.

Ako šablóna komunikuje s bránou

Všetky volania idú na https://<gateway-address>:8443/enduser-mobile-web/1/enduserAPI s hlavičkou Authorization: Bearer <token>; bez tokenu funguje len GET /apiVersion. Každé zariadenie io číta svoje stavy z /setup/devices/{deviceURL}/states každých 5 s a všetky zariadenia posielajú príkazy cez POST /exec/apply. Somfy nestanovuje pre lokálne API žiadny limit volaní, ale upozorňuje, že príliš časté volania bránu preťažia a oneskoria ovládanie motorov — pamätajte na to pri mnohých motoroch na jednej bráne.

Riešenie problémov

Chyba „Check Bearer token in TaHoma By Somfy app → Developer Mode“

Brána odpovedala HTTP 401: token je nesprávny alebo nebol skopírovaný celý. Vygenerujte nový token v aplikácii TaHoma by Somfy › Developer Mode a zadajte ho v TapHome.

Chyba zariadenia „Device unavailable (HTTP …)“

Brána adresu nepozná. Skontrolujte, či je deviceURL skopírovaná presne z GET /setup/devices — nezakódovaná, bez medzier — a či patrí k správnemu druhu zariadenia.

Chyba zariadenia „Closure state not available“

Brána odpovedala, ale bez stavu core:ClosureState. Skontrolujte definition.states motora. Niektoré markízy hlásia namiesto neho stav core:DeploymentState (0 = zatiahnutá, 100 = vysunutá); ten šablóna nečíta.

Brána ukazuje zariadenie ako nedostupné, ale funguje

Niektoré verzie firmvéru TaHoma hlásia zariadenia io ako nedostupné (available: false), hoci fungujú normálne — nahlásené Somfy v repozitári Developer Mode. Šablóna tento príznak nepoužíva a chybu kvôli nemu neukáže.

Motor RTS sa nepohne

Príkazy RTS sú jednosmerné rádiové signály bez potvrdenia doručenia, preto TapHome neukáže chybu, keď motor nezareaguje. Skontrolujte, či je motor v rádiovom dosahu brány a či sa pohne z aplikácie TaHoma by Somfy.

Názov hostiteľa brány nie je dostupný

Ak sa gateway-{pin}.local nepreloží, použite IP adresu brány — nájdete ju v routeri. Developer Mode musí ostať zapnutý: práve ten zapína lokálne API brány.

Dostupné zariadenia

Brána Somfy TaHoma Modul
Servisné atribúty
Verzia protokoluVerzia lokálneho API, ktorú hlási brána
ID brányPIN brány (napríklad 1234-5678-9012), ten istý PIN, ktorý je súčasťou adresy každého zariadenia
Stav pripojeniaStav pripojenia, ktorý hlási brána, napríklad OK
Vlastné premenné
BearerToken (string)Token lokálneho API TaHoma, vytvorený v aplikácii TaHoma by Somfy › Developer Mode; modul aj každé zariadenie ho posielajú ako 'Authorization: Bearer <token>'
TaHoma by Somfy app → Configure the installation → Access the parameters of your TaHoma box → tap the gateway PIN 7 times → Developer Mode → generate a token. The token can be copied only when it is created; enter it as the import parameter Bearer token.

Somfy TaHoma Gateway

Čítanie (modul)
VAR r := SENDHTTPREQUEST("/enduser-mobile-web/1/enduserAPI/apiVersion");
IF r.IsSuccess
    ApiVersion := r.Content;
END

r := SENDHTTPREQUEST("/enduser-mobile-web/1/enduserAPI/setup/gateways", "GET", "", "Authorization: Bearer " + BearerToken);
IF r.StatusCode = 401
    ADDERROR(0, "Check Bearer token in TaHoma By Somfy app → Developer Mode");
ELSEIF r.IsSuccess
    GatewayData := r.Content;
END
Servisné atribúty
Protocol Version
PARSEJSON(ApiVersion, "$.protocolVersion", true)
Gateway ID
PARSEJSON(GatewayData, "[0].gatewayId", true)
Connectivity Status
PARSEJSON(GatewayData, "[0].connectivity.status", true)
io roleta / markíza Posuvný

Poloha rolety alebo markízy io-homecontrol — 0 % úplne otvorená, 100 % úplne zatvorená, rovnaký smer ako v bráne

numeric (0–100) Jednotka: % json_path
Premenná: DeviceUrl — Adresa motora v bráne TaHoma (deviceURL z GET /setup/devices), napríklad io://1234-5678-9012/4820485

io roleta / markíza

Čítanie (modul)
VAR encodedUrl := REPLACE(REPLACE(DeviceUrl, ":", "%3A"), "/", "%2F");
VAR r := SENDHTTPREQUEST("/enduser-mobile-web/1/enduserAPI/setup/devices/" + encodedUrl + "/states/core%3AClosureState", "GET", "", "Authorization: Bearer " + BearerToken);
IF r.StatusCode = 401
    ADDERROR(0, "Check Bearer token in TaHoma By Somfy app → Developer Mode");
ELSEIF r.IsSuccess
    StatesJson := r.Content;
ELSE
    ADDERROR(1, "Device unavailable (HTTP " + r.StatusCode + ")");
END
Čítanie úrovne žalúzie
VAR closure := PARSEJSON(StatesJson, "$.value", true);
IF ISNULL(closure)
    ADDERROR(0, "Closure state not available");
    RETURN(NaN);
END
RETURN(closure / 100);
Zápis úrovne žalúzie
VAR pos := ROUND(Bl * 100);
VAR body := "{\"label\":\"Set roller shutter\",\"actions\":[{\"deviceURL\":\"" + DeviceUrl + "\",\"commands\":[{\"name\":\"setClosure\",\"parameters\":[" + pos + "]}]}]}";
SENDHTTPREQUEST("/enduser-mobile-web/1/enduserAPI/exec/apply", "POST", body, "Authorization: Bearer " + BearerToken, "Content-Type: application/json");
io vonkajšia žalúzia Žalúzia

Poloha a natočenie lamiel vonkajšej žalúzie io-homecontrol — obe sa posielajú spolu jedným príkazom

numeric (0–100) Jednotka: % json_path
Premenná: DeviceUrl — Adresa žalúzie v bráne TaHoma (deviceURL), napríklad io://1234-5678-9012/5932104

io vonkajšia žalúzia

Čítanie (modul)
VAR encodedUrl := REPLACE(REPLACE(DeviceUrl, ":", "%3A"), "/", "%2F");
VAR r := SENDHTTPREQUEST("/enduser-mobile-web/1/enduserAPI/setup/devices/" + encodedUrl + "/states", "GET", "", "Authorization: Bearer " + BearerToken);
IF r.StatusCode = 401
    ADDERROR(0, "Check Bearer token in TaHoma By Somfy app → Developer Mode");
ELSEIF r.IsSuccess
    StatesJson := r.Content;
ELSE
    ADDERROR(1, "Device unavailable (HTTP " + r.StatusCode + ")");
END
Čítanie úrovne žalúzie
VAR closure := PARSEJSON(StatesJson, "$[?(@.name=='core:ClosureState')].value", true);
IF ISNULL(closure)
    ADDERROR(0, "Closure state not available");
    RETURN(NaN);
END
RETURN(closure / 100);
Zápis úrovne žalúzie
VAR pos := ROUND(Bl * 100);
VAR ori := ROUND(Bs * 100);
VAR body := "{\"label\":\"Set venetian blind\",\"actions\":[{\"deviceURL\":\"" + DeviceUrl + "\",\"commands\":[{\"name\":\"setClosureAndOrientation\",\"parameters\":[" + pos + "," + ori + "]}]}]}";
VAR date := NOW();
IF body != LastBody OR date.UNIXTIME - LastSentAt > 3
    SENDHTTPREQUEST("/enduser-mobile-web/1/enduserAPI/exec/apply", "POST", body, "Authorization: Bearer " + BearerToken, "Content-Type: application/json");
    LastBody := body;
    LastSentAt := date.UNIXTIME;
END
Čítanie sklonu žalúzie
VAR orientation := PARSEJSON(StatesJson, "$[?(@.name=='core:SlateOrientationState')].value", true);
IF ISNULL(orientation)
    RETURN(NaN);
END
RETURN(orientation / 100);
Zápis sklonu žalúzie
VAR pos := ROUND(Bl * 100);
VAR ori := ROUND(Bs * 100);
VAR body := "{\"label\":\"Set venetian blind\",\"actions\":[{\"deviceURL\":\"" + DeviceUrl + "\",\"commands\":[{\"name\":\"setClosureAndOrientation\",\"parameters\":[" + pos + "," + ori + "]}]}]}";
VAR date := NOW();
IF body != LastBody OR date.UNIXTIME - LastSentAt > 3
    SENDHTTPREQUEST("/enduser-mobile-web/1/enduserAPI/exec/apply", "POST", body, "Authorization: Bearer " + BearerToken, "Content-Type: application/json");
    LastBody := body;
    LastSentAt := date.UNIXTIME;
END
Motor RTS Viacstavový prepínač

Príkazy pre jednosmerný motor RTS — Otvoriť, My (obľúbená poloha), Stop alebo Zatvoriť; RTS polohu nehlási, preto prepínač po každom príkaze ukáže Pripravené

enum numeric
Hodnoty / Stavy: Pripravené · Otvoriť · My · Stop · Zatvoriť
Premenná: DeviceUrl — Adresa motora RTS v bráne TaHoma (deviceURL), napríklad rts://1234-5678-9012/987654321

Motor RTS

Čítanie stavu prepínača
RETURN(0);
Zápis stavu prepínača
VAR cmd := SWITCH(Mu, 1, "open", 2, "my", 3, "stop", 4, "close", "stop");
VAR body := "{\"label\":\"RTS command\",\"actions\":[{\"deviceURL\":\"" + DeviceUrl + "\",\"commands\":[{\"name\":\"" + cmd + "\",\"parameters\":[]}]}]}";
SENDHTTPREQUEST("/enduser-mobile-web/1/enduserAPI/exec/apply", "POST", body, "Authorization: Bearer " + BearerToken, "Content-Type: application/json");
Pripojenie: Packet Parser → HTTP • Hostname: gateway-{pin}.local.local
Možné vylepšenia (6)
  • Event-driven state updates — Somfy recommends reading /setup at start and then fetching events at most once per second; the listener expires after 10 minutes without a fetch. The template polls the states of each device every 5 s instead.
  • Automatic device discovery — The gateway lists every paired device with its deviceURL, label, controllableName and definition. The template does not create devices from it; the installer enters one deviceURL per device.
  • Open / Close / Stop / My on io motors — io roller shutters and venetian blinds accept the same commands as RTS; the template drives them by position only (setClosure / setClosureAndOrientation).
  • Awnings that report the deployment instead of the closure — Awnings of type io:HorizontalAwningIOComponent may report core:DeploymentState (0 = retracted, 100 = deployed) instead of core:ClosureState; the roller shutter device reads ClosureState only.
  • Cancel running executions — Cancels all running commands launched from the local API.
  • Availability of a motor — The device description carries available and the state core:StatusState; some gateway firmware reports io devices as unavailable although they work (reported in the Developer Mode repository), so the template does not use it.

Zdroje

  • Somfy TaHoma Developer Mode — README (activation, token, certificate, mDNS, supported gateways)
    github.com 2026-11-04
  • Somfy TaHoma local API — OpenAPI specification

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ý.

Komunita — nepreverené

Chcete to použiť vo svojom TapHome jadre?

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.

Otvoriť v portáli