Support for areas

This commit is contained in:
2026-08-21 09:32:31 +03:00
parent d74699cd79
commit d31a6d893e
3 changed files with 23 additions and 16 deletions
+7 -5
View File
@@ -13,8 +13,8 @@ import Data.Bool (bool)
bedroomLights :: [T.Text]
bedroomLights = ["light.bedroom_masse","light.bedroom_jemina","light.bedroom_ceiling","light.bedroom_led_switch"]
bedroomLights :: [Target]
bedroomLights = map EntityId ["light.bedroom_masse","light.bedroom_jemina","light.bedroom_ceiling","light.bedroom_led_switch"]
createBedroomScene :: Service
createBedroomScene = Service
@@ -22,7 +22,7 @@ createBedroomScene = Service
, serviceName= "create"
, serviceData= Just $ object
[ "scene_id" .= ("makuuhuone_lights_snapshot" :: T.Text)
, "snapshot_entities" .= bedroomLights
, "snapshot_entities" .= [l | EntityId l <- bedroomLights]
]
, serviceTarget= []
}
@@ -32,7 +32,7 @@ activateScene :: T.Text -> Service
activateScene sceneId = Service
{ serviceDomain="scene"
, serviceName= "turn_on"
, serviceTarget= [sceneId]
, serviceTarget= [EntityId sceneId]
, serviceData = Nothing
}
@@ -99,9 +99,11 @@ bedroomButtonController = proc x -> do
Event (Masse (OnButton ShortRelease)) -> callService (activateScene "scene.makuuhuone_masse") -< () -- this should be on release
Event (Masse (OnButton DoubleClick)) -> callService (activateScene "scene.makuuhuone_keski") -< ()
Event (Masse (OnButton LongClick)) -> callService (activateScene "scene.makuuhuone_kirkas") -< ()
Event (Masse (OffButton _)) -> callService (light [AreaId "makuuhuone"] False) -< ()
Event (Enishen (OnButton ShortRelease)) -> callService (activateScene "scene.makuuhuone_jemina") -< ()
Event (Enishen (OnButton DoubleClick)) -> callService (activateScene "scene.makuuhuone_keski") -< ()
Event (Enishen (OnButton LongClick)) -> callService (activateScene "scene.makuuhuone_kirkas") -< ()
Event (Enishen (OffButton _)) -> callService (light [AreaId "makuuhuone"] False) -< ()
_ -> returnA -< ()
@@ -118,4 +120,4 @@ bedroomDrawerController = proc x -> do
Event Closed -> callService (switch [entity] False) -< ()
_ -> returnA -< ()
where
entity = "bedroom_drawer_light_masse"
entity = EntityId "bedroom_drawer_light_masse"