State -> NightLightStateMachine

This commit is contained in:
Sven van Heugten 2026-01-04 10:24:55 +01:00
parent 285874777a
commit c7c5de9e21
4 changed files with 8 additions and 8 deletions

View file

@ -11,7 +11,7 @@
<Compile Include="Moods.fs" />
<Compile Include="ZigbeeEvents.fs" />
<Compile Include="ZigbeeCommands.fs" />
<Compile Include="Core.fs" />
<Compile Include="NightLightStateMachine.fs" />
</ItemGroup>
<ItemGroup>

View file

@ -17,8 +17,8 @@ let internal generateZigbeeCommandToFixLight partOfDay light =
generateZigbeeCommand light.FriendlyName color brightness
type State(time: DateTime) =
member this.OnEventReceived(event: Event) : Result<State * Message seq, ParseEventError> =
type NightLightStateMachine(time: DateTime) =
member this.OnEventReceived(event: Event) : Result<NightLightStateMachine * Message seq, ParseEventError> =
result {
let partOfDay = getPartOfDay time
@ -36,7 +36,7 @@ type State(time: DateTime) =
| Some light -> generateZigbeeCommandToFixLight partOfDay light |> Seq.singleton
| None -> Seq.empty
| TimeChanged newTime ->
let newState = State newTime
let newState = NightLightStateMachine newTime
let newPartOfDay = getPartOfDay newTime
return