Condividi tramite


BluetoothSignalStrengthFilter Classe

Definizione

Raggruppa i parametri usati per configurare l'indicatore di intensità del segnale ricevuto (RSSI) basato sul filtro.

public ref class BluetoothSignalStrengthFilter sealed
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class BluetoothSignalStrengthFilter final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class BluetoothSignalStrengthFilter final
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class BluetoothSignalStrengthFilter
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class BluetoothSignalStrengthFilter
function BluetoothSignalStrengthFilter()
Public NotInheritable Class BluetoothSignalStrengthFilter
Ereditarietà
Object Platform::Object IInspectable BluetoothSignalStrengthFilter
Attributi

Requisiti Windows

Famiglia di dispositivi
Windows 10 (è stato introdotto in 10.0.10240.0 - for Xbox, see UWP features that aren't yet supported on Xbox)
API contract
Windows.Foundation.UniversalApiContract (è stato introdotto in v1.0)
Funzionalità dell'app
bluetooth

Commenti

La classe BluetoothSignalStrengthFilter accetta solo un intervallo limitato per le relative proprietà. Tuttavia, a seconda del modo in cui questa classe viene usata da un'app, possono essere applicate restrizioni aggiuntive. Ad esempio, l'intervallo valido per i valori RSSI è diverso tra i dispositivi Bluetooth LE e Bluetooth BR/EDR.

L'intervallo valido per queste proprietà è il seguente:

  • InRangeThresholdInDBm : soglia minima per un evento RSSI da considerare nell'intervallo. L'intervallo valido è compreso tra -128 e 127.
  • OutOfRangeThresholdInDBm : soglia minima per un evento RSSI da considerare fuori intervallo. L'intervallo valido è compreso tra -128 e 127.
  • OutOfRangeTimeout : timeout per un evento RSSI da considerare fuori intervallo. L'intervallo valido è uguale o maggiore di 1 secondo.
  • SamplingInterval : intervallo in cui vengono campionati gli eventi RSSI. L'intervallo valido è uguale o maggiore di 0. Qualsiasi intervallo di campionamento maggiore o uguale a 25,5 secondi disabiliterà completamente il campionamento. In questo caso speciale, il filtro è basato su trigger. Esistono due possibili stati per filtrare i valori RSSI per qualsiasi dispositivo:
  • Nell'intervallo.
  • Non compreso nell'intervallo. Eventuali eventi RSSI vengono propagati se considerati nell'intervallo. Sono inclusi gli eventi con valori RSSI inferiori o uguali a OutOfRangeThresholdInDBm purché OutOfRangeTimeout non sia scaduto.

Questa classe presenta limitazioni aggiuntive sulle relative proprietà quando viene usata dalla classe BluetoothLEAdvertisementWatcher . Verrà generata un'eccezione quando BluetoothLEAdvertisementWatcher viene avviato con parametri esterni all'intervallo valido per BluetoothLEAdvertisementWatcher.

In generale, esistono tre casi d'uso principali per questa API:

InRangeThresholdInDBm OutOfRangeThresholdInDBm OutOfRangeTimeout SamplingInterval Comportamento
Qualsiasi <= InRangeThresholdInDBm >= 1 0 Riceverà tutti gli eventi RSSI non appena arrivano purché vengano considerati "in intervallo". Gli eventi vengono considerati "fuori intervallo" se OutOfRangeTimeout scade senza eventi o senza eventi con valori RSSI maggiori di OutOfRangeThresholdInDBm. Nessun evento aggiuntivo viene generato alla scadenza di OutOfRangeTimeout .
Qualsiasi <= InRangeThresholdInDBm >= 1 (0, 25.5) Riceverà gli eventi RSSI su un intervallo regolare definito da SamplingInterval purché siano considerati "nell'intervallo". Il valore RSSI sarà una media dei valori degli eventi ricevuti in un oggetto SamplingInterval. Se non vengono ricevuti eventi all'interno di SamplingInterval, non verrà propagato alcun evento. Se OutOfRangeTimeout scade senza eventi o senza eventi con valori RSSI maggiori di OutOfRangeThresholdInDBm, gli eventi vengono considerati "fuori intervallo" e verrà generato un evento con l'ultimo valore RSSI ricevuto. Se l'ultimo valore RSSI è superiore a OutOfRangeThresholdInDBm, viene impostato su -127 dBm.
Qualsiasi <= InRangeThresholdInDBm >= 1 >=25.5 (disabilitato) Riceverà un evento RSSI quando gli eventi RSSI passano a "in intervallo" da "fuori intervallo". Se OutOfRangeTimeout scade senza eventi o senza eventi con valori RSSI maggiori di OutOfRangeThresholdInDBm, gli eventi vengono considerati "fuori intervallo" e verrà generato un evento con l'ultimo valore RSSI ricevuto. Se l'ultimo valore RSSI è superiore a OutOfRangeThresholdInDBm, viene impostato su OutOfRangeThresholdInDBm.

Costruttori

BluetoothSignalStrengthFilter()

Creare un nuovo oggetto BluetoothSignalStrengthFilter .

Proprietà

InRangeThresholdInDBm

Valore RSSI (Signal Strength Indicator) minimo ricevuto in dBm in cui gli eventi RSSI verranno propagati o considerati nell'intervallo se gli eventi precedenti sono stati considerati fuori intervallo.

OutOfRangeThresholdInDBm

Valore minimo dell'indicatore di forza del segnale ricevuto (RSSI) in dBm in cui gli eventi RSSI verranno considerati fuori intervallo.

OutOfRangeTimeout

Timeout per un evento RSSI (Signal Strength Indicator) ricevuto da considerare fuori intervallo.

SamplingInterval

Viene campionato l'intervallo in cui vengono campionati gli eventi RSSI (Signal Strength Indicator).

Si applica a

Vedi anche