TapHome

Somfy TaHoma – io és RTS árnyékolók (helyi API)

Packet Parser → HTTP
Beküldő
Utoljára frissítve: 11. 2026

Külső átjáró szükséges

Somfy TaHoma with Developer Mode (local API, HTTPS port 8443) — termékoldal

Ez az eszköz támogatja az mDNS-t

IP-cím helyett az eszközt a következő címen érheti el:

gateway-{pin}.local.local

Cserélje ki a {MAC} részt az eszköz MAC-címére (nagybetűk, kettőspont nélkül).

A TapHome támogatja az mDNS-t — a hostnév használata megbízhatóbb, mint a statikus IP.

Somfy TaHoma – io és RTS árnyékolók (helyi API)

A Somfy TaHoma sablon a TapHome-ot egy Somfy TaHoma átjáróval (például TaHoma Switch) köti össze az átjáró hivatalos helyi API-ján keresztül, amelyet a Somfy Developer Mode-nak nevez. A motorokat a szokásos módon a TaHoma by Somfy alkalmazásban kell párosítani az átjáróval; a TapHome csak az átjáróval kommunikál, HTTPS-en a 8443-as porton a helyi hálózatban, felhőkapcsolat nélkül.

A sablon vezérli az io-homecontrol redőnyök és napellenzők helyzetét, az io-homecontrol kültéri lamellás redőnyök helyzetét és lamellaszögét, az egyirányú RTS motoroknak pedig Nyitás, My, Stop és Zárás parancsot küld.

Közösségi sablon — a TapHome-mal még nincs tesztelve. A sablon a TapHome portálon készült a Somfy Developer Mode dokumentációjából; az eszközállapotok és parancsok nevei közösségi forrásokból származnak (a Somfy nem sorolja fel őket). Csak egy szimulált átjáróval tesztelték egy helyi TapHome Core 2025.2-n, valódi TaHoma átjáróval és valódi Somfy motorokkal nem, a gyakorlati tapasztalatokat szívesen fogadjuk. Az XML-t letöltheted ezen az oldalon vagy a TapHome portálon: Somfy TaHoma — közösségi sablon, és importáld új modulként.

A vezetékes Somfy motorokhoz nem kell átjáró. A rádióvevő nélküli 230 V-os Somfy motort (például Somfy WT, négy vezeték — PE, N, fel, le) a TapHome közvetlenül relémodulokkal vezérli, mint bármely más árnyékolómotort — lásd Követelmények → Árnyékolás. Ez a sablon a TaHoma átjáróval párosított rádiós (io-homecontrol vagy RTS) motorokhoz készült.

Támogatott átjárók

A Somfy szerint a Developer Mode a TaHoma átjárók túlnyomó többségén működik. Nem érhető el:

  • az 1. generációs (négyzet alakú) TaHoma boxon vagy Somfy boxon
  • a Connectivity Kiten

Hardveres csatlakozás

Kábelezésre nincs szükség. A TaHoma átjárónak és a TapHome Core-nak ugyanabban a helyi hálózatban kell lennie. Az átjáró a saját aláírású Overkiz hitelesítésszolgáltató által aláírt tanúsítványt használ; a sablon a tanúsítványhibák figyelmen kívül hagyásával csatlakozik, így tanúsítványt nem kell telepíteni.

Konfiguráció

A Developer Mode bekapcsolása és token létrehozása

  1. Nyisd meg a TaHoma by Somfy alkalmazást.
  2. Lépj a TaHoma box Configure the installation › Access the parameters menüjébe.
  3. Koppints 7-szer az átjáró PIN-kódjára (például 2001-1234-5678) — bekapcsol a Developer Mode, és elindul az átjáró helyi API-ja.
  4. A Developer Mode menüben hozz létre egy tokent.

A token csak a létrehozásakor olvasható és másolható — azonnal mentsd el. Több token is létrehozható; ha egy token elveszik, hozz létre újat, és add meg a TapHome-ban.

Az eszközcímek megkeresése

Minden, az átjáróval párosított motornak van egy címe, a deviceURL. A címeket az átjáró eszközlistája adja meg a tokennel — például egy ugyanabban a hálózatban lévő számítógépről:

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

Keresd meg a motort a label alapján (a TaHoma alkalmazásban megadott név), és másold ki a deviceURL értékét pontosan úgy, ahogy látható. A sablon a kéréshez maga kódolja.

ProtokollFormátumPélda
io-homecontrolio://{gateway-pin}/{device-id}io://1234-5678-9012/4820485
RTSrts://{gateway-pin}/{device-id}rts://1234-5678-9012/987654321

Ugyanez a válasz mutatja, mit támogat az egyes motor: definition.states és definition.commands. A sablon redőnynél vagy napellenzőnél a core:ClosureState állapotot és a setClosure parancsot, lamellás redőnynél a core:ClosureState, core:SlateOrientationState és setClosureAndOrientation nevet, RTS motornál pedig az open, my, stop és close parancsot várja. Az a motor, amelynek definíciójában ezek a nevek nincsenek meg, az adott eszközzel nem fog működni.

Importálási paraméterek

Importálási paraméterLeírásHelykitöltő
GatewayAddressA TaHoma átjáró IP-címe vagy hosztneve, például gateway-1234-5678-9012.local192.168.1.100
BearerTokenToken a Developer Mode-ból(üres)
SlideDeviceUrlAz io redőny vagy napellenző deviceURL címeio://1234-5678-9012/12345678
BlindDeviceUrlAz io lamellás redőny deviceURL címeio://1234-5678-9012/12345678
RtsDeviceUrlAz RTS motor deviceURL címerts://1234-5678-9012/12345678

Ha IP-címet használsz, foglald le az átjárónak a routerben, hogy ne változzon.

A sablonban minden fajtából egy eszköz van. Töröld azokat az eszközöket, amelyekre nincs szükséged. További motorokhoz importáld újra a sablont a többi címmel — minden importálás egy átjárómodult ad hozzá saját eszközökkel — és töröld a fölösleges eszközöket, vagy módosítsd egy eszköz DeviceUrl változóját.

Eszközfunkciók

Átjáró

A modul 30 másodpercenként kiolvassa az átjárót, és három szervizattribútumot mutat: Protokollverzió (a helyi API verziója), Átjáró azonosító (az átjáró PIN-kódja) és Kapcsolati állapot (például OK). Hibás token esetén a modul ezt a hibát mutatja: „Check Bearer token in TaHoma By Somfy app → Developer Mode”.

io redőnyök és napellenzők

  • io redőny / napellenző — az io-homecontrol redőny vagy napellenző helyzete. Az átjáró 0 = teljesen nyitva és 100 = teljesen zárva értéket jelent; a TapHome-ban 0 % a teljesen felhúzott és 100 % a teljesen leengedett helyzet, ugyanabban az irányban. Az eszköz 5 másodpercenként kiolvassa a helyzetet, és a setClosure paranccsal mozgatja a motort.

io lamellás redőnyök

  • io lamellás redőny — az io-homecontrol kültéri lamellás redőny helyzete és lamellaszöge. Mindkettő együtt megy egy setClosureAndOrientation paranccsal, így a helyzet módosítása az aktuális lamellaszöget, a lamellák módosítása pedig az aktuális helyzetet is elküldi. Ha a TapHome egyszerre módosítja a helyzetet és a lamellákat, az azonos parancs csak egyszer megy ki.

RTS motorok

Az RTS (Radio Technology Somfy) motorok egyirányú rádiót használnak: fogadják a parancsokat, de a helyzetüket nem jelentik.

ÉrtékParancsMűvelet
NyitásopenFelfelé mozgás / teljes nyitás
MymyA motorban tárolt kedvenc helyzetbe állás
StopstopA mozgás leállítása
ZáráscloseLefelé mozgás / teljes zárás
  • RTS motor — minden parancs után a kapcsoló Kész állapotot mutat, így ugyanaz a parancs újra elküldhető, például Zárás azután, hogy a motort a saját távirányítójával mozgatták. A Kész kiválasztása Stop parancsot küld.

Egyik eszköz sem mozgat motort a TapHome Core indulásakor: az állapotot az átjárótól veszik át, nem a TapHome utolsó értékéből.

Hogyan kommunikál a sablon az átjáróval

Minden hívás a https://<gateway-address>:8443/enduser-mobile-web/1/enduserAPI címre megy az Authorization: Bearer <token> fejléccel; token nélkül csak a GET /apiVersion működik. Minden io eszköz 5 másodpercenként kiolvassa az állapotait a /setup/devices/{deviceURL}/states címről, és minden eszköz a POST /exec/apply hívással küld parancsot. A Somfy nem korlátozza a helyi API hívásainak számát, de figyelmeztet, hogy a túl gyakori hívások túlterhelik az átjárót, és késleltetik a motorok vezérlését — gondolj erre, ha egy átjárón sok motor van.

Hibaelhárítás

„Check Bearer token in TaHoma By Somfy app → Developer Mode” hiba

Az átjáró HTTP 401-gyel válaszolt: a token hibás, vagy nem teljesen lett kimásolva. Hozz létre új tokent a TaHoma by Somfy alkalmazásban (Developer Mode), és add meg a TapHome-ban.

„Device unavailable (HTTP …)” eszközhiba

Az átjáró nem ismeri a címet. Ellenőrizd, hogy a deviceURL pontosan a GET /setup/devices válaszából van-e kimásolva — kódolás és szóközök nélkül —, és hogy a megfelelő eszközfajtához tartozik-e.

„Closure state not available” eszközhiba

Az átjáró válaszolt, de a core:ClosureState állapot nélkül. Ellenőrizd a motor definition.states listáját. Egyes napellenzők helyette a core:DeploymentState állapotot jelentik (0 = behúzva, 100 = kinyitva); ezt a sablon nem olvassa.

Az átjáró elérhetetlennek mutat egy eszközt, pedig működik

Egyes TaHoma firmware-ek az io eszközöket elérhetetlennek jelentik (available: false), pedig normálisan működnek — ezt a Developer Mode tárolójában jelentették a Somfynak. A sablon ezt a jelzőt nem használja, és miatta nem mutat hibát.

Az RTS motor nem mozdul

Az RTS parancsok egyirányú rádiójelek kézbesítési visszaigazolás nélkül, ezért a TapHome nem mutat hibát, ha a motor nem reagál. Ellenőrizd, hogy a motor az átjáró rádiós hatótávolságán belül van-e, és hogy mozdul-e a TaHoma by Somfy alkalmazásból.

Az átjáró hosztneve nem érhető el

Ha a gateway-{pin}.local név nem oldódik fel, használd az átjáró IP-címét — megtalálod a routerben. A Developer Mode-nak bekapcsolva kell maradnia: ez engedélyezi az átjáró helyi API-ját.

Elérhető eszközök

Somfy TaHoma átjáró Modul
Szerviz attribútumok
ProtokollverzióA helyi API verziója, amelyet az átjáró jelent
Átjáró azonosítóAz átjáró PIN-kódja (például 1234-5678-9012), ugyanaz a PIN, amely minden eszköz címének része
Kapcsolati állapotAz átjáró által jelentett kapcsolati állapot, például OK
Egyéni változók
BearerToken (string)A TaHoma helyi API tokenje, amely a TaHoma by Somfy alkalmazásban készül (Developer Mode); a modul és minden eszköz 'Authorization: Bearer <token>' formában küldi
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

Olvasás (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
Szerviz attribútumok
Protocol Version
PARSEJSON(ApiVersion, "$.protocolVersion", true)
Gateway ID
PARSEJSON(GatewayData, "[0].gatewayId", true)
Connectivity Status
PARSEJSON(GatewayData, "[0].connectivity.status", true)
io redőny / napellenző Csúszka

Az io-homecontrol redőny vagy napellenző helyzete — 0 % teljesen nyitva, 100 % teljesen zárva, ugyanabban az irányban, mint az átjáróban

numeric (0–100) Egység: % json_path
Változó: DeviceUrl — A motor címe a TaHoma átjáróban (deviceURL a GET /setup/devices válaszából), például io://1234-5678-9012/4820485

io redőny / napellenző

Olvasás (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
Redőnyszint olvasása
VAR closure := PARSEJSON(StatesJson, "$.value", true);
IF ISNULL(closure)
    ADDERROR(0, "Closure state not available");
    RETURN(NaN);
END
RETURN(closure / 100);
Redőnyszint írása
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 lamellás redőny Redőny

Az io-homecontrol kültéri lamellás redőny helyzete és lamellaszöge — mindkettő egy paranccsal együtt megy

numeric (0–100) Egység: % json_path
Változó: DeviceUrl — A lamellás redőny címe a TaHoma átjáróban (deviceURL), például io://1234-5678-9012/5932104

io lamellás redőny

Olvasás (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
Redőnyszint olvasása
VAR closure := PARSEJSON(StatesJson, "$[?(@.name=='core:ClosureState')].value", true);
IF ISNULL(closure)
    ADDERROR(0, "Closure state not available");
    RETURN(NaN);
END
RETURN(closure / 100);
Redőnyszint írása
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
Lamella dőlés olvasása
VAR orientation := PARSEJSON(StatesJson, "$[?(@.name=='core:SlateOrientationState')].value", true);
IF ISNULL(orientation)
    RETURN(NaN);
END
RETURN(orientation / 100);
Lamella dőlés írása
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
RTS motor Többértékű kapcsoló

Parancsok az egyirányú RTS motorhoz — Nyitás, My (kedvenc helyzet), Stop vagy Zárás; az RTS nem jelenti a helyzetet, ezért a kapcsoló minden parancs után Kész állapotot mutat

enum numeric
Értékek / Állapotok: Kész · Nyitás · My · Stop · Zárás
Változó: DeviceUrl — Az RTS motor címe a TaHoma átjáróban (deviceURL), például rts://1234-5678-9012/987654321

RTS motor

Kapcsoló állapot olvasása
RETURN(0);
Kapcsoló állapot írása
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");
Kapcsolat: Packet Parser → HTTP • Hostname: gateway-{pin}.local.local
Lehetséges fejlesztések (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.

Források

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

Talált problémát ezzel az eszközsablonnal?

Írja meg, mi nem működik, mi hiányzik, vagy hogyan kellene a sablonnak viselkednie. Visszajelzése segít, hogy a katalógus pontos maradjon.

Közösség — felülvizsgálatlan

Használni szeretnéd ezt a TapHome Core-odban?

Nyisd meg ezt a sablont az ügyfélportálon, hogy alkalmazd az otthonaid egyikére, vagy készíts egy módosítást és küldd vissza a katalógusba.

Megnyitás a portálon