Open ghost opened 12 years ago
deviceid field got mangled in makdown. should be < device MAC address >
A similar situation may occur with a _raop._tcp. device (AirTunes) already presenting itself over both raop and upnp:
Say a UPnP-capable audio device (pulseaudio-rygel) is running shairplay:
Service Type: _raop._tcp Service Name:581F8C740FC1@Dining Room Speakers Domain Name: local Interface: wlan0 IPv4 Address: speakers.local/192.168.2.204:5000 TXT ch = 2 TXT pw = false TXT ek = 1 TXT ss = 16 TXT sr = 44100 TXT sv = false TXT vn = 3 TXT tp = UDP TXT sm = false TXT et = 0,1 TXT txtvers = 1 TXT cn = 0,1
Some custom UPnP players can already have AirPlay capability added to them.
I propose an extra check before a bridge for a UPnP device is created. Inquire for a list of _airplay._tcp devices, lookup their IP addresses and if a bridge that's about to be created points to a device that already advertises AirPlay, skip bridge creation for that device.
Example zeroconf/bonjour entry:
Service Type: _airplay._tcp Service Name: Media-Player-AirPlay-UPnP Domain Name: local Interface: wlan0 IPv4 Address: Media-Player-AirPlay-and-UPnP.local/192.168.2.17:7000 TXT model = AppleTV2,1 TXT srcvers = 130.14 TXT features = 0x39f7 TXT deviceid =
The IP address is looked up by mDNS most probably.
Let me know if you need any additional zeroconf/uPnP device information.