Configured targets take priority over discovery
If a target address is configured for a universe, use it directly instead of looking for discovered nodes. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
19
main.go
19
main.go
@@ -257,9 +257,15 @@ func (a *App) sendOutputs(outputs []remap.Output) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
default: // ArtNet
|
default: // ArtNet
|
||||||
nodes := a.discovery.GetNodesForUniverse(out.Universe)
|
// Configured target takes priority over discovery
|
||||||
|
if target, ok := a.targets[out.Universe]; ok {
|
||||||
if len(nodes) > 0 {
|
if a.debug {
|
||||||
|
log.Printf("[->artnet] dst=%s universe=%s", target.IP, out.Universe)
|
||||||
|
}
|
||||||
|
if err := a.artSender.SendDMX(target, out.Universe, out.Data[:]); err != nil {
|
||||||
|
log.Printf("[->artnet] error: dst=%s err=%v", target.IP, err)
|
||||||
|
}
|
||||||
|
} else if nodes := a.discovery.GetNodesForUniverse(out.Universe); len(nodes) > 0 {
|
||||||
for _, node := range nodes {
|
for _, node := range nodes {
|
||||||
addr := &net.UDPAddr{
|
addr := &net.UDPAddr{
|
||||||
IP: node.IP,
|
IP: node.IP,
|
||||||
@@ -272,13 +278,6 @@ func (a *App) sendOutputs(outputs []remap.Output) {
|
|||||||
log.Printf("[->artnet] error: dst=%s err=%v", node.IP, err)
|
log.Printf("[->artnet] error: dst=%s err=%v", node.IP, err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if target, ok := a.targets[out.Universe]; ok {
|
|
||||||
if a.debug {
|
|
||||||
log.Printf("[->artnet] dst=%s universe=%s", target.IP, out.Universe)
|
|
||||||
}
|
|
||||||
if err := a.artSender.SendDMX(target, out.Universe, out.Data[:]); err != nil {
|
|
||||||
log.Printf("[->artnet] error: dst=%s err=%v", target.IP, err)
|
|
||||||
}
|
|
||||||
} else if len(a.broadcasts) > 0 {
|
} else if len(a.broadcasts) > 0 {
|
||||||
for _, bcast := range a.broadcasts {
|
for _, bcast := range a.broadcasts {
|
||||||
if a.debug {
|
if a.debug {
|
||||||
|
|||||||
Reference in New Issue
Block a user