org.bluez.AdvertisementMonitorManager(5) Linux System Administration org.bluez.AdvertisementMonitorManager(5)

# [Name](#Name)

org.bluez.AdvertisementMonitorManager - BlueZ D-Bus AdvertisementMonitorManager API documentation

# [Interface](#Interface)

[**Service**](#Service)

org.bluez

[**Interface**](#Interface~2)

org.bluez.AdvertisementMonitorManager1 \[experimental]

[**Object path**](#Object)

/org/bluez/{hci0,hci1,...}

[**Used by**](#Used)

[**bluetoothctl-monitor(1)**](/man/os/bluez/bluetoothctl-monitor.1)

## [Methods](#Methods)

## [void RegisterMonitor(object application)](#void_RegisterMonitor%28object_application%29)

Registers the root path of a hierarchy of advertisement monitors implementing [**org.bluez.AdvertisementMonitor(5)**](/man/os/bluez/org.bluez.AdvertisementMonitor.5).

The application object path together with the D-Bus ystem bus connection ID define the identification of the application registering advertisement monitors.

Once a root path is registered by a client via this method, the client can freely expose/unexpose advertisement monitors without re-registering the root path again.

After use, the client should call **UnregisterMonitor()** method to invalidate the advertisement monitors.

Possible errors:

[**org.bluez.Error.InvalidArguments**](#org.bluez.Error.InvalidArguments)

[**org.bluez.Error.AlreadyExists**](#org.bluez.Error.AlreadyExists)

[**org.bluez.Error.Failed**](#org.bluez.Error.Failed)

Examples:

[**bluetoothctl**](#bluetoothctl)

\[monitor] &gt; add-or-pattern &lt;start\_pos&gt; &lt;ad\_type&gt; &lt;content&gt;

## [void UnregisterMonitor(object application)](#void_UnregisterMonitor%28object_application%29)

Unregisters a hierarchy of advertisement monitors that has been previously registered with **RegisterMonitor()**. The object path parameter must match the same value that has been used on registration.

Upon unregistration, the advertisement monitor(s) should expect to receive **Release()** method as the signal that the advertisement monitor(s) has been deactivated.

Possible errors:

[**org.bluez.Error.InvalidArguments**](#org.bluez.Error.InvalidArguments~2)

[**org.bluez.Error.DoesNotExist**](#org.bluez.Error.DoesNotExist)

Examples:

[**bluetoothctl**](#bluetoothctl~2)

\[monitor] &gt; remove-pattern &lt;monitor-id/all&gt;

## [Properties](#Properties)

## [array{string} SupportedMonitorTypes \[read-only\]](#array_string__SupportedMonitorTypes__read)

This lists the supported types of advertisement monitors. An application should check this before instantiate and expose an object of [**org.bluez.AdvertisementMonitor(5)**](/man/os/bluez/org.bluez.AdvertisementMonitor.5).

Possible values:

**"or\_patterns"**

Patterns with logic OR applied. With this type, property **Patterns** must exist and has at least one pattern.

## [array{string} SupportedFeatures \[read-only\]](#array_string__SupportedFeatures__read)

This lists the features of advertisement monitoring supported by [**bluetoothd(8)**](/man/os/bluez/bluetoothd.8).

Possible values:

**"controller-patterns"**

If the controller is capable of performing advertisement monitoring by patterns, [**bluetoothd(8)**](/man/os/bluez/bluetoothd.8) would offload the patterns to the controller to reduce power consumption.

October 2023 BlueZ

---

Document: org.bluez.AdvertisementMonitorManager(5) from bluez 5.87-r2 (Chainguard OS)
Source: https://github.com/bluez/bluez
