Gets a value that indicates which discovery options are available to use with the PeerFinder class.
Syntax
var supportedDiscoveryTypes = Windows.Networking.Proximity.PeerFinder.supportedDiscoveryTypes;
Property value
Type: PeerDiscoveryTypes
A value that indicates which discovery options are available to use with the PeerFinder class.
Remarks
The SupportedDiscoveryTypes property indicates which PeerFinder discovery methods are currently supported. You can use the SupportedDiscoveryTypes property to determine whether the current PC has a working proximity device or whether the Wi-Fi device supports Wifi-Direct browsing.
Examples
var started = false; // Click event for "Advertise" button. function advertiseForPeers(launchedFromTap) { Windows.Networking.Proximity.PeerFinder.displayName = displayNameTextBox.Text; if (Windows.Networking.Proximity.PeerFinder.supportedDiscoveryTypes & Windows.Networking.Proximity.PeerDiscoveryTypes.triggered) { Windows.Networking.Proximity.PeerFinder.addEventListener( "triggeredconnectionstatechanged", triggeredConnectionStateChanged); id("messageDiv").innerHTML += "You can tap to connect a peer device that is " + "also advertising for a connection.<br />"; } else { id("messageDiv").innerHTML += "Tap to connect is not supported.<br />"; } if (!launchedFromTap) { if (!(Windows.Networking.Proximity.PeerFinder.SupportedDiscoveryTypes & Windows.Networking.Proximity.PeerDiscoveryTypes.Browse)) { id("messageDiv").innerHTML += "Peer discovery using Wifi-Direct is not supported.<br />"; } } if (!started) { Windows.Networking.Proximity.PeerFinder.start(); started = true; } } function triggeredConnectionStateChanged(e) { if (e.state === Windows.Networking.Proximity.TriggeredConnectState.peerFound) { id("messageDiv").innerHTML += "Peer found. You may now pull your devices out of proximity.<br />"; } if (e.state === Windows.Networking.Proximity.TriggeredConnectState.completed) { id("messageDiv").innerHTML += "Connected. You may now send a message.<br />"; sendMessage(e.socket); } } // Click event for "Browse" button. function findPeers() { if (Windows.Networking.Proximity.PeerFinder.supportedDiscoveryTypes & Windows.Networking.Proximity.PeerDiscoveryTypes.browse) { Windows.Networking.Proximity.PeerFinder.findAllPeersAsync().done( function (peerInfoCollection) { if (peerInfoCollection.length > 0) { // Connect to first peer found - example only. // In your app, provide the user with a list of available peers. connectToPeer(peerInfoCollection[0]); } }, function (err) { id("messageDiv").innerHTML += "Error finding peers: " + err + "<br />"; }); } else { id("messageDiv").innerHTML += "Peer discovery using Wi-Fi Direct is not supported.<br />"; } } function connectToPeer(peerInfo) { id("messageDiv").innerHTML += ("Peer found. Connecting to " + peerInfo.displayName + "<br />"); Windows.Networking.Proximity.PeerFinder.connectAsync(peerInfo).done( function (socket) { id("messageDiv").innerHTML += "Connection successful. You may now send messages.<br />"; sendMessage(socket); }, function (err) { id("messageDiv").innerHTML += "Connection failed: " + err + "<br />"; }); requestingPeer = null; } function stopFindingPeers() { Windows.Networking.Proximity.PeerFinder.stop(); started = false; if (proximitySocket != null) { closeSocket(); } } // Handle external connection requests. var requestingPeer; function connectionRequested(e) { id("messageDiv").innerHTML += "Connection requested by " + e.peerInformation.DisplayName + ". " + "Click 'Accept Connection' to connect."; requestingPeer = e.PeerInformation; } function acceptConnection() { if (requestingPeer == null) { id("messageDiv").innerHTML += "No peer connection has been requested."; return; } connectToPeer(requestingPeer); }
Requirements
|
Minimum supported client | Windows 8 |
|---|---|
|
Minimum supported server | Windows Server 2012 |
|
Minimum supported phone | Windows Phone 8 |
|
Namespace |
|
|
Metadata |
|
|
Capabilities |
|
See also
- PeerFinder
- Proximity and Tapping (JavaScript)
- Proximity and Tapping (C#/VB/C++)
- Samples
- Proximity sample
Build date: 2/25/2013