Make the onEventReceived type more explicit

This commit is contained in:
Sven van Heugten 2026-01-03 19:06:58 +01:00
parent 31e9312731
commit ae66114ca1
2 changed files with 5 additions and 3 deletions

View file

@ -22,15 +22,17 @@ type Event =
| ReceivedZigbeeEvent of payload: string
| TimeChanged of DateTime
type ParseEventError = ParseZigbeeEventError of ParseZigbeeEventError
type State = { Time: DateTime }
let onEventReceived (state: State) (event: Event) =
let onEventReceived (state: State) (event: Event) : Result<State * ZigbeeCommand seq, ParseEventError> =
result {
let partOfDay = getPartOfDay state.Time
match event with
| ReceivedZigbeeEvent payload ->
let! zigbeeEvent = parseZigbeeEvent payload
let! zigbeeEvent = parseZigbeeEvent payload |> Result.mapError ParseZigbeeEventError
return
state,