Skip to content

Commit

Permalink
Merge pull request dotnet-bluetooth-le#899 from K-Type-de/master
Browse files Browse the repository at this point in the history
Added CustomPairing for Windows
  • Loading branch information
janusw authored Dec 7, 2024
2 parents ba3f066 + e407679 commit 686334f
Showing 1 changed file with 18 additions and 1 deletion.
19 changes: 18 additions & 1 deletion Source/Plugin.BLE/Windows/Adapter.cs
Original file line number Diff line number Diff line change
Expand Up @@ -49,10 +49,27 @@ public override async Task BondAsync(IDevice device)
Trace.Message($"BondAsync cannot pair with: {device.Name}: {device.Id}");
return;
}
DevicePairingResult result = await deviceInformation.Pairing.PairAsync();
DeviceInformationCustomPairing p = deviceInformation.Pairing.Custom;
p.PairingRequested += PairingRequestedHandler;
var result = await p.PairAsync(DevicePairingKinds.ConfirmOnly);
p.PairingRequested -= PairingRequestedHandler;
Trace.Message($"BondAsync pairing result was {result.Status} with: {device.Name}: {device.Id}");
}

private static void PairingRequestedHandler(DeviceInformationCustomPairing sender, DevicePairingRequestedEventArgs args)
{
switch (args.PairingKind)
{
case DevicePairingKinds.ConfirmOnly:
args.Accept();
break;

default:
Trace.Message("PairingKind " + args.PairingKind + " not supported");
break;
}
}

protected override Task StartScanningForDevicesNativeAsync(ScanFilterOptions scanFilterOptions, bool allowDuplicatesKey, CancellationToken scanCancellationToken)
{
var serviceUuids = scanFilterOptions?.ServiceUuids;
Expand Down

0 comments on commit 686334f

Please sign in to comment.