partial subscriptions

not really partial. they just happen per peripheral now
This commit is contained in:
2026-09-23 17:41:06 +01:00
parent a519cf473e
commit 2952528a60
12 changed files with 172 additions and 110 deletions
+4 -6
View File
@@ -37,7 +37,7 @@ type TelemetryService struct {
// Callbacks
// Devices data request
// peripheralProvider func() []peripheral.Peripheral
getRequiredFields func() []telemetry.FieldID
// getRequiredFields func() []telemetry.FieldID
}
func NewTelemetryService(
@@ -114,13 +114,11 @@ func (t *TelemetryService) UnsubscribeListener(id string) {
}
}
func (t *TelemetryService) SubscribeToAllFields() []telem.FieldID {
fields := t.getRequiredFields()
func (t *TelemetryService) SubscribeToFields(fields []telemetry.FieldID) []string {
t.logger.Debug("requested fields", "fields", fields)
t.activeProvider.Subscribe(fields)
subscribed := t.activeProvider.Subscribe(fields)
return fields
return subscribed
}
// Listener Control [END] ------------------------------------------------------