package soundbox import ( "fmt" "net" ) // Port is the default network port a soundbox is listening to for incoming // audio stream data. const Port = 5316 type Soundbox struct { HardwareAddr net.HardwareAddr } func NewSoundbox(mac string) (Soundbox, error) { hardwareAddr, err := net.ParseMAC(mac) if err != nil { return Soundbox{}, err } return fromHardwareAddr(hardwareAddr) } func fromHardwareAddr(addr net.HardwareAddr) (Soundbox, error) { if len(addr) != 6 { return Soundbox{}, fmt.Errorf("Only IEEE 802 MAC-48 addresses supported") } return Soundbox{HardwareAddr: addr}, nil }