Поделиться через


BluetoothSignalStrengthFilter Класс

Определение

Группирование параметров, используемых для настройки фильтрации на основе индикаторов мощности полученного сигнала (RSSI).

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
Наследование
Object Platform::Object IInspectable BluetoothSignalStrengthFilter
Атрибуты

Требования к Windows

Семейство устройств
Windows 10 (появилось в 10.0.10240.0 - for Xbox, see UWP features that aren't yet supported on Xbox)
API contract
Windows.Foundation.UniversalApiContract (появилось в v1.0)
Возможности приложения
bluetooth

Комментарии

Класс BluetoothSignalStrengthFilter принимает только ограниченный диапазон для своих свойств. Однако в зависимости от того, как этот класс используется приложением, могут применяться дополнительные ограничения. Например, допустимый диапазон для значений RSSI отличается для устройств Bluetooth LE и Bluetooth BR/EDR.

Допустимый диапазон для этих свойств выглядит следующим образом:

  • InRangeThresholdInDBm — минимальное пороговое значение для события RSSI, которое должно рассматриваться в диапазоне. Допустимый диапазон — от -128 до 127.
  • OutOfRangeThresholdInDBm — минимальное пороговое значение для события RSSI, которое будет считаться вне диапазона. Допустимый диапазон — от -128 до 127.
  • OutOfRangeTimeout — время ожидания для события RSSI, которое будет считаться не в диапазоне. Допустимый диапазон равен или больше 1 секунды.
  • SamplingInterval — интервал выборки событий RSSI. Допустимый диапазон равен или больше 0. Любой интервал выборки, превышающий или равный 25,5 секунды, полностью отключает выборку. В этом особом случае фильтрация выполняется на основе триггера. Существует два возможных состояния для фильтрации значений RSSI для любого устройства:
  • В диапазоне.
  • Вне диапазона. Все события RSSI распространяются, если они считаются в диапазоне. Сюда входят события со значениями RSSI ниже или равными OutOfRangeThresholdInDBm , если outOfRangeTimeout не истек.

Этот класс имеет дополнительные ограничения на его свойства при использовании классом BluetoothLEAdvertisementWatcher . Исключение будет возникать при запуске BluetoothLEAdvertisementWatcher с параметрами вне допустимого диапазона для BluetoothLEAdvertisementWatcher.

Как правило, существует три main вариантов использования этого API:

InRangeThresholdInDBm OutOfRangeThresholdInDBm OutOfRangeTimeout SamplingInterval Поведение
Любой <= InRangeThresholdInDBm > = 1 0 Будет получать все события RSSI по мере их поступления, если они считаются "в диапазоне". События считаются "вне диапазона", если срок действия OutOfRangeTimeout истекает без каких-либо событий или событий со значениями RSSI, превышающими OutOfRangeThresholdInDBm. По истечении срока действия OutOfRangeTimeout дополнительные события не создаются.
Любой <= InRangeThresholdInDBm > = 1 (0, 25.5) Будет получать события RSSI через регулярный интервал, определенный в SamplingInterval , если они считаются "в диапазоне". Значение RSSI будет средним для значений событий, полученных в SamplingInterval. Если в SamplingInterval не получено никаких событий, событие не будет распространяться. Если срок действия OutOfRangeTimeout истекает без каких-либо событий или событий со значениями RSSI, превышающими OutOfRangeThresholdInDBm, события считаются "вне диапазона" и создается событие с последним полученным значением RSSI. Если последнее значение RSSI было выше OutOfRangeThresholdInDBm, оно имеет значение -127 dBm.
Любой <= InRangeThresholdInDBm > = 1 >=25,5 (отключено) Будет получать событие RSSI, когда события RSSI переходят на "в диапазоне" из "вне диапазона". Если срок действия OutOfRangeTimeout истекает без каких-либо событий или событий со значениями RSSI, превышающими OutOfRangeThresholdInDBm, события считаются "вне диапазона" и создается событие с последним полученным значением RSSI. Если последнее значение RSSI было выше OutOfRangeThresholdInDBm, оно имеет значение OutOfRangeThresholdInDBm.

Конструкторы

BluetoothSignalStrengthFilter()

Создайте новый объект BluetoothSignalStrengthFilter .

Свойства

InRangeThresholdInDBm

Минимальное значение индикатора силы полученного сигнала (RSSI) в dBm, при котором события RSSI будут распространяться или рассматриваться в диапазоне, если предыдущие события были признаны вне диапазона.

OutOfRangeThresholdInDBm

Минимальное значение показателя мощности сигнала (RSSI) в dBm, при котором события RSSI будут считаться вне диапазона.

OutOfRangeTimeout

Время ожидания для события полученного индикатора силы сигнала (RSSI), которое будет считаться вне диапазона.

SamplingInterval

Интервал, через который выполняется выборка событий полученного индикатора силы сигнала (RSSI).

Применяется к

См. также раздел