decoupled the winIDs from the telemetry data #11

Merged
esilva merged 3 commits from decouple-cdash-from-field-subscription into auto-detect-devices 2026-09-18 00:07:39 +01:00
Showing only changes of commit bd10d6b4d6 - Show all commits
+13 -7
View File
@@ -7,6 +7,7 @@ import (
"time" "time"
"esdi/providers" "esdi/providers"
"esdi/telemetry"
telem "esdi/telemetry" telem "esdi/telemetry"
) )
@@ -203,15 +204,20 @@ func (t *TelemetryService) UnsubscribeListener(id string) {
} }
func (t *TelemetryService) SubscribeToFields() { func (t *TelemetryService) SubscribeToFields() {
// _ = t.devService.SubscribeFields() seen := make(map[telemetry.FieldID]struct{})
// TODO: we need to find a way of requesting devices to send all subscribed fields var allFields []telemetry.FieldID
// instead of going through the devices on DevService here
// REVAMP
for _, dev := range t.devService.Devices { for _, dev := range t.devService.Devices {
fields := dev.RequiredFields() for _, field := range dev.RequiredFields() {
t.logger.Debug("requested fields", "fields", fields) if _, exists := seen[field]; !exists {
t.activeProvider.Subscribe(fields) seen[field] = struct{}{}
allFields = append(allFields, field)
}
}
} }
t.logger.Debug("requested fields", "fields", allFields)
t.activeProvider.Subscribe(allFields)
} }
func (t *TelemetryService) StartStream() { func (t *TelemetryService) StartStream() {