Versions in this module Expand all Collapse all v0 v0.11.0 Mar 21, 2023 Changes in this version + func ChangeVolume(ctx context.Context, r hub.Radio, delta int) error + func DeleteRadio(h *hub.Hub, r hub.Radio) error + func GetState(ctx context.Context, r hub.Radio) (*state.State, error) + func ListRadios(h *hub.Hub) []model.Radio + func ListStates(ctx context.Context, h *hub.Hub) []state.State + func PlayPreset(ctx context.Context, r hub.Radio, preset int) error + func RefreshSubscription(ctx context.Context, r hub.Radio) error + func RefreshVolume(ctx context.Context, r hub.Radio) error + func SetAudioSource(ctx context.Context, r hub.Radio, audioSource string) error + func SetPower(ctx context.Context, r hub.Radio, power bool) error + func SetVolume(ctx context.Context, r hub.Radio, volume int) error + type DefaultStateHook struct + func (DefaultStateHook) OnChanged(ctx context.Context, s *state.State, c state.Changed) state.Changed + func (DefaultStateHook) OnStart(ctx context.Context, s *state.State, c state.Changed) state.Changed + type Discoverer struct + func NewDiscoverer(hub *hub.Hub, controlPoint upnpsub.ControlPoint, stateHook StateHook) *Discoverer + func (d *Discoverer) Background(ctx context.Context, doneC chan<- struct{}) + func (d *Discoverer) Discover(force bool) error + func (d *Discoverer) Discovering() bool + type StateHook interface + OnChanged func(context.Context, *state.State, state.Changed) state.Changed + OnStart func(context.Context, *state.State, state.Changed) state.Changed