196 lines
		
	
	
		
			5.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			196 lines
		
	
	
		
			5.5 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.
 | |
| 
 | |
| 			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.DoesNotExist
 | |
| 					 org.bluez.Error.AlreadyConnected
 | |
| 					 org.bluez.Error.ConnectFailed
 | |
| 
 | |
| 		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.DoesNotExist
 | |
| 					 org.bluez.Error.Failed
 | |
| 					 org.bluez.Error.NotConnected
 | |
| 					 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 in the
 | |
| 			Adapter.DeviceFound signal to anticipate whether
 | |
| 			legacy or simple pairing will occur.
 | |
| 
 | |
| 			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.
 | 
