1
0
Fork 0

Send events in batches

This commit is contained in:
Michał Rudowicz 2024-03-05 21:52:59 +01:00
parent 6b3159eed0
commit 053187c5d1
1 changed files with 9 additions and 3 deletions

View File

@ -8,12 +8,16 @@ import (
"time"
)
type Event struct {
type BasicEventElement struct {
Type ChangeType
Index int
Value bool
}
type Event struct {
BasicEvents []BasicEventElement
}
type Config struct {
EventsQueueSize int
LongCommands bool
@ -125,16 +129,18 @@ func (s *Satel) readRawEvents() {
if cmd == 0xEF {
return
}
basicElements := make([]BasicEventElement, 0)
for i, bb := range bytes {
for j := 0; j < 8; j++ {
index := byte(1 << j)
s.Events <- Event{
basicElements = append(basicElements, BasicEventElement{
Type: ChangeType(cmd),
Index: i*8 + j,
Value: bb&index != 0,
})
}
}
}
s.Events <- Event{basicElements}
}
func (s *Satel) read() {