private async Task <ObservableCollection <ChromeCast> > LocateDevicesAsync(SsdpDeviceLocator deviceLocator) { var responses = await ZeroconfResolver.ResolveAsync("_googlecast._tcp.local."); foreach (var resp in responses) { Uri uri; if (Uri.TryCreate("https://" + resp.IPAddress, UriKind.Absolute, out uri)) { var chromecast = new ChromeCast { DeviceUri = uri, FriendlyName = resp.Services.Select(a => a.Value.Properties.Select(b => b["fn"])).FirstOrDefault().FirstOrDefault() }; DiscoveredDevices.Add(chromecast); } } return(DiscoveredDevices); }
public async Task ConnectToChromecast(ChromeCast chromecast) { ConnectedChromecast = chromecast; await ChromeCastClient.ConnectChromecast(chromecast.DeviceUri); }