update json_data and model so more than one address can be revieved from server

This commit is contained in:
Adrian Zuercher
2025-07-30 17:16:50 +02:00
parent 3704edebd5
commit 49dff4f609
6 changed files with 24 additions and 11 deletions

View File

@@ -216,6 +216,7 @@ func (b *Bus) ParsePayload(c *gin.Context) error {
}
func (b *Bus) SetDMXData(channel uint, value uint8) error {
fmt.Println(100, channel, value)
b.DMX.SetValue(channel, value)
b.Send = true
return nil

View File

@@ -5,11 +5,11 @@ import (
json_dataModels "github.com/tecamino/tecamino-json_data/models"
)
type Subscriptions map[uuid.UUID]Subscription
type Subscriptions map[uuid.UUID][]Subscription
type Subscription struct {
Bus string
Address uint
Address []uint
}
func NewSubscriptions() Subscriptions {
@@ -17,8 +17,11 @@ func NewSubscriptions() Subscriptions {
}
func (s *Subscriptions) AddSubscription(uid uuid.UUID, drv *json_dataModels.Driver) {
(*s)[uid] = Subscription{
Bus: drv.Bus,
Address: drv.Address,
subs := []Subscription{}
for _, bus := range drv.Buses {
sub := Subscription{Bus: bus.Name}
sub.Address = append(sub.Address, bus.Address...)
subs = append(subs, sub)
}
(*s)[uid] = subs
}