mirror of
https://git.kernel.org/pub/scm/bluetooth/bluez.git
synced 2024-11-23 20:24:21 +08:00
f96e4a9fb6
This exposed Advertising Flags to BlueZ Device API
237 lines
6.6 KiB
Plaintext
237 lines
6.6 KiB
Plaintext
BlueZ D-Bus Device API description
|
|
**********************************
|
|
|
|
|
|
Device hierarchy
|
|
================
|
|
|
|
Service org.bluez
|
|
Interface org.bluez.Device1
|
|
Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX
|
|
|
|
Methods void Connect()
|
|
|
|
This is a generic method to connect any profiles
|
|
the remote device supports that can be connected
|
|
to and have been flagged as auto-connectable on
|
|
our side. If only subset of profiles is already
|
|
connected it will try to connect currently disconnected
|
|
ones.
|
|
|
|
If at least one profile was connected successfully this
|
|
method will indicate success.
|
|
|
|
For dual-mode devices only one bearer is connected at
|
|
time, the conditions are in the following order:
|
|
|
|
1. Connect the disconnected bearer if already
|
|
connected.
|
|
|
|
2. Connect first the bonded bearer. If no
|
|
bearers are bonded or both are skip and check
|
|
latest seen bearer.
|
|
|
|
3. Connect last seen bearer, in case the
|
|
timestamps are the same BR/EDR takes
|
|
precedence.
|
|
|
|
Possible errors: org.bluez.Error.NotReady
|
|
org.bluez.Error.Failed
|
|
org.bluez.Error.InProgress
|
|
org.bluez.Error.AlreadyConnected
|
|
|
|
void Disconnect()
|
|
|
|
This method gracefully disconnects all connected
|
|
profiles and then terminates low-level ACL connection.
|
|
|
|
ACL connection will be terminated even if some profiles
|
|
were not disconnected properly e.g. due to misbehaving
|
|
device.
|
|
|
|
This method can be also used to cancel a preceding
|
|
Connect call before a reply to it has been received.
|
|
|
|
Possible errors: org.bluez.Error.NotConnected
|
|
|
|
void ConnectProfile(string uuid)
|
|
|
|
This method connects a specific profile of this
|
|
device. The UUID provided is the remote service
|
|
UUID for the profile.
|
|
|
|
Possible errors: org.bluez.Error.Failed
|
|
org.bluez.Error.InProgress
|
|
org.bluez.Error.InvalidArguments
|
|
org.bluez.Error.NotAvailable
|
|
org.bluez.Error.NotReady
|
|
|
|
void DisconnectProfile(string uuid)
|
|
|
|
This method disconnects a specific profile of
|
|
this device. The profile needs to be registered
|
|
client profile.
|
|
|
|
There is no connection tracking for a profile, so
|
|
as long as the profile is registered this will always
|
|
succeed.
|
|
|
|
Possible errors: org.bluez.Error.Failed
|
|
org.bluez.Error.InProgress
|
|
org.bluez.Error.InvalidArguments
|
|
org.bluez.Error.NotSupported
|
|
|
|
void Pair()
|
|
|
|
This method will connect to the remote device,
|
|
initiate pairing and then retrieve all SDP records
|
|
(or GATT primary services).
|
|
|
|
If the application has registered its own agent,
|
|
then that specific agent will be used. Otherwise
|
|
it will use the default agent.
|
|
|
|
Only for applications like a pairing wizard it
|
|
would make sense to have its own agent. In almost
|
|
all other cases the default agent will handle
|
|
this just fine.
|
|
|
|
In case there is no application agent and also
|
|
no default agent present, this method will fail.
|
|
|
|
Possible errors: org.bluez.Error.InvalidArguments
|
|
org.bluez.Error.Failed
|
|
org.bluez.Error.AlreadyExists
|
|
org.bluez.Error.AuthenticationCanceled
|
|
org.bluez.Error.AuthenticationFailed
|
|
org.bluez.Error.AuthenticationRejected
|
|
org.bluez.Error.AuthenticationTimeout
|
|
org.bluez.Error.ConnectionAttemptFailed
|
|
|
|
void CancelPairing()
|
|
|
|
This method can be used to cancel a pairing
|
|
operation initiated by the Pair method.
|
|
|
|
Possible errors: org.bluez.Error.DoesNotExist
|
|
org.bluez.Error.Failed
|
|
|
|
Properties string Address [readonly]
|
|
|
|
The Bluetooth device address of the remote device.
|
|
|
|
string Name [readonly, optional]
|
|
|
|
The Bluetooth remote name. This value can not be
|
|
changed. Use the Alias property instead.
|
|
|
|
This value is only present for completeness. It is
|
|
better to always use the Alias property when
|
|
displaying the devices name.
|
|
|
|
If the Alias property is unset, it will reflect
|
|
this value which makes it more convenient.
|
|
|
|
string Icon [readonly, optional]
|
|
|
|
Proposed icon name according to the freedesktop.org
|
|
icon naming specification.
|
|
|
|
uint32 Class [readonly, optional]
|
|
|
|
The Bluetooth class of device of the remote device.
|
|
|
|
uint16 Appearance [readonly, optional]
|
|
|
|
External appearance of device, as found on GAP service.
|
|
|
|
array{string} UUIDs [readonly, optional]
|
|
|
|
List of 128-bit UUIDs that represents the available
|
|
remote services.
|
|
|
|
boolean Paired [readonly]
|
|
|
|
Indicates if the remote device is paired.
|
|
|
|
boolean Connected [readonly]
|
|
|
|
Indicates if the remote device is currently connected.
|
|
A PropertiesChanged signal indicate changes to this
|
|
status.
|
|
|
|
boolean Trusted [readwrite]
|
|
|
|
Indicates if the remote is seen as trusted. This
|
|
setting can be changed by the application.
|
|
|
|
boolean Blocked [readwrite]
|
|
|
|
If set to true any incoming connections from the
|
|
device will be immediately rejected. Any device
|
|
drivers will also be removed and no new ones will
|
|
be probed as long as the device is blocked.
|
|
|
|
string Alias [readwrite]
|
|
|
|
The name alias for the remote device. The alias can
|
|
be used to have a different friendly name for the
|
|
remote device.
|
|
|
|
In case no alias is set, it will return the remote
|
|
device name. Setting an empty string as alias will
|
|
convert it back to the remote device name.
|
|
|
|
When resetting the alias with an empty string, the
|
|
property will default back to the remote name.
|
|
|
|
object Adapter [readonly]
|
|
|
|
The object path of the adapter the device belongs to.
|
|
|
|
boolean LegacyPairing [readonly]
|
|
|
|
Set to true if the device only supports the pre-2.1
|
|
pairing mechanism. This property is useful during
|
|
device discovery to anticipate whether legacy or
|
|
simple pairing will occur if pairing is initiated.
|
|
|
|
Note that this property can exhibit false-positives
|
|
in the case of Bluetooth 2.1 (or newer) devices that
|
|
have disabled Extended Inquiry Response support.
|
|
|
|
string Modalias [readonly, optional]
|
|
|
|
Remote Device ID information in modalias format
|
|
used by the kernel and udev.
|
|
|
|
int16 RSSI [readonly, optional]
|
|
|
|
Received Signal Strength Indicator of the remote
|
|
device (inquiry or advertising).
|
|
|
|
int16 TxPower [readonly, optional]
|
|
|
|
Advertised transmitted power level (inquiry or
|
|
advertising).
|
|
|
|
dict ManufacturerData [readonly, optional]
|
|
|
|
Manufacturer specific advertisement data. Keys are
|
|
16 bits Manufacturer ID followed by its byte array
|
|
value.
|
|
|
|
dict ServiceData [readonly, optional]
|
|
|
|
Service advertisement data. Keys are the UUIDs in
|
|
string format followed by its byte array value.
|
|
|
|
bool ServicesResolved [readonly]
|
|
|
|
Indicate whether or not service discovery has been
|
|
resolved.
|
|
|
|
array{byte} AdvertisingFlags [readonly, experimental]
|
|
|
|
The Advertising Data Flags of the remote device.
|