Files
pmomusic/upnp/srv_reg_devices.go

45 lines
898 B
Go

package upnp
import (
"gargoton.petite-maison-orange.fr/eric/pmomusic/pmoconfig"
log "github.com/sirupsen/logrus"
)
func (s *Server) RegisterDevice(name string, d *Device) {
s.mu.Lock()
defer s.mu.Unlock()
if s.devices == nil {
s.devices = make(DeviceInstanceSet)
}
if name == "" {
name = d.Name()
}
config := pmoconfig.GetConfig()
udn := config.GetDeviceUDN(string(d.DeviceType()), name)
instance := d.NewInstance(s, udn)
log.Infof("✅ Registering device %s", name)
err := s.devices.Insert(instance)
if err != nil {
log.Panicf("❌ Device %s is already registered", instance.Name())
}
log.Infof("✅ New device %s get UDN : %s", instance.Name(), instance.UDN())
// s.devices[name] = d
// d.mu.Lock()
// defer d.mu.Unlock()
// d.UDN = s.UDN + "-" + name
// d.Name = name
// for _, service := range d.Services.All() {
// service.DeviceName = name
// }
}