QBluetoothServiceInfo

The QBluetoothServiceInfo class enables access to the attributes of a Bluetooth service. More

Inheritance diagram of PySide6.QtBluetooth.QBluetoothServiceInfo

Synopsis

Functions

Detailed Description

QBluetoothServiceInfo provides information about a service offered by a Bluetooth device. In addition it can be used to register new services on the local device. Note that such a registration only affects the Bluetooth SDP entries. Any server listening for incoming connections (e.g an RFCOMM server) must be started before registerService() is called. Deregistration must happen in the reverse order.

QBluetoothServiceInfo is not a value type in the traditional sense. All copies of the same service info object share the same data as they do not detach upon changing them. This ensures that two copies can (de)register the same Bluetooth service.

On iOS, this class cannot be used because the platform does not expose an API which may permit access to QBluetoothServiceInfo related features.

class PySide6.QtBluetooth.QBluetoothServiceInfo

PySide6.QtBluetooth.QBluetoothServiceInfo(other)

Parameters

otherPySide6.QtBluetooth.QBluetoothServiceInfo

Construct a new invalid QBluetoothServiceInfo ;

Construct a new QBluetoothServiceInfo that is a copy of other.

The two copies continue to share the same underlying data which does not detach upon write.

PySide6.QtBluetooth.QBluetoothServiceInfo.AttributeId

Bluetooth service attributes. Please check the Bluetooth Core Specification for a more detailed description of these attributes.

Constant

Description

QBluetoothServiceInfo.ServiceRecordHandle

Specifies a service record from which attributes can be retrieved.

QBluetoothServiceInfo.ServiceClassIds

UUIDs of service classes that the service conforms to. The most common service classes are defined in ( ServiceClassUuid )

QBluetoothServiceInfo.ServiceRecordState

Attibute changes when any other service attribute is added, deleted or modified.

QBluetoothServiceInfo.ServiceId

UUID that uniquely identifies the service.

QBluetoothServiceInfo.ProtocolDescriptorList

List of protocols used by the service. The most common protocol Uuids are defined in ProtocolUuid

QBluetoothServiceInfo.BrowseGroupList

List of browse groups the service is in.

QBluetoothServiceInfo.LanguageBaseAttributeIdList

List of language base attribute IDs to support human-readable attributes.

QBluetoothServiceInfo.ServiceInfoTimeToLive

Number of seconds for which the service record is expected to remain valid and unchanged.

QBluetoothServiceInfo.ServiceAvailability

Value indicating the availability of the service.

QBluetoothServiceInfo.BluetoothProfileDescriptorList

List of profiles to which the service conforms.

QBluetoothServiceInfo.DocumentationUrl

URL that points to the documentation on the service..

QBluetoothServiceInfo.ClientExecutableUrl

URL that refers to the location of an application that can be used to utilize the service.

QBluetoothServiceInfo.IconUrl

URL to the location of the icon representing the service.

QBluetoothServiceInfo.AdditionalProtocolDescriptorList

Additional protocols used by the service. This attribute extends ProtocolDescriptorList.

QBluetoothServiceInfo.PrimaryLanguageBase

Base index for primary language text descriptors.

QBluetoothServiceInfo.ServiceName

Name of the Bluetooth service in the primary language.

QBluetoothServiceInfo.ServiceDescription

Description of the Bluetooth service in the primary language.

QBluetoothServiceInfo.ServiceProvider

Name of the company / entity that provides the Bluetooth service primary language.

Note

On Windows and are automatically set to default values when a service is created. Manually setting values for these attributes will not work and might lead to unexpected results on this platform.

PySide6.QtBluetooth.QBluetoothServiceInfo.Protocol

This enum describes the socket protocol used by the service.

Constant

Description

QBluetoothServiceInfo.UnknownProtocol

The service uses an unknown socket protocol.

QBluetoothServiceInfo.L2capProtocol

The service uses the L2CAP socket protocol. This protocol is not supported for direct socket connections on Android.

QBluetoothServiceInfo.RfcommProtocol

The service uses the RFCOMM socket protocol.

PySide6.QtBluetooth.QBluetoothServiceInfo.attribute(attributeId)
Parameters

attributeIdquint16

Return type

object

Returns the value of the attribute attributeId.

See also

setAttribute()

PySide6.QtBluetooth.QBluetoothServiceInfo.attributes()
Return type

Returns a list of all attribute ids that the QBluetoothServiceInfo object has.

PySide6.QtBluetooth.QBluetoothServiceInfo.contains(attributeId)
Parameters

attributeIdquint16

Return type

bool

Returns true if the QBluetoothServiceInfo object contains the attribute attributeId, otherwise returns false.

PySide6.QtBluetooth.QBluetoothServiceInfo.device()
Return type

PySide6.QtBluetooth.QBluetoothDeviceInfo

Returns the address of the Bluetooth device that provides this service.

See also

setDevice()

PySide6.QtBluetooth.QBluetoothServiceInfo.isComplete()
Return type

bool

Returns true if the QBluetoothServiceInfo object is considered complete, otherwise returns false.

A complete QBluetoothServiceInfo object contains a ProtocolDescriptorList attribute.

PySide6.QtBluetooth.QBluetoothServiceInfo.isRegistered()
Return type

bool

Returns true if the service information is registered with the platform’s Service Discovery Protocol (SDP) implementation, otherwise returns false.

PySide6.QtBluetooth.QBluetoothServiceInfo.isValid()
Return type

bool

Returns true if the QBluetoothServiceInfo object is valid, otherwise returns false.

An invalid QBluetoothServiceInfo object will have no attributes.

PySide6.QtBluetooth.QBluetoothServiceInfo.protocolDescriptor(protocol)
Parameters

protocolProtocolUuid

Return type

PySide6.QtBluetooth.QBluetoothServiceInfo.Sequence

Returns the protocol parameters as a Sequence for protocol protocol.

An empty Sequence is returned if protocol is not supported.

PySide6.QtBluetooth.QBluetoothServiceInfo.protocolServiceMultiplexer()
Return type

int

This is a convenience function. Returns the protocol/service multiplexer for services which support the L2CAP protocol, otherwise returns -1.

This function is equivalent to extracting the information from Sequence returned by attribute ( ProtocolDescriptorList ).

PySide6.QtBluetooth.QBluetoothServiceInfo.registerService([localAdapter=QBluetoothAddress()])
Parameters

localAdapterPySide6.QtBluetooth.QBluetoothAddress

Return type

bool

Registers this service with the platform’s Service Discovery Protocol (SDP) implementation, making it findable by other devices when they perform service discovery. Returns true if the service is successfully registered, otherwise returns false. Once registered changes to the record cannot be made. The service must be unregistered and registered again with the changes.

The localAdapter parameter determines the local Bluetooth adapter under which the service should be registered. If localAdapter is null the default Bluetooth adapter will be used. If this service info object is already registered via a local adapter and this is function is called using a different local adapter, the previous registration is removed and the service reregistered using the new adapter.

PySide6.QtBluetooth.QBluetoothServiceInfo.removeAttribute(attributeId)
Parameters

attributeIdquint16

Removes the attribute attributeId from the QBluetoothServiceInfo object.

If the service information is already registered with the platforms SDP database, the database entry will not be updated until registerService() was called again.

PySide6.QtBluetooth.QBluetoothServiceInfo.serverChannel()
Return type

int

This is a convenience function. Returns the server channel for services which support the RFCOMM protocol, otherwise returns -1.

This function is equivalent to extracting the information from Sequence returned by attribute (QBluetootherServiceInfo::ProtocolDescriptorList).

PySide6.QtBluetooth.QBluetoothServiceInfo.serviceAvailability()
Return type

quint8

This is a convenience function. It is equivalent to calling attribute( ServiceAvailability ).toUInt().

Returns the availability of the service.

PySide6.QtBluetooth.QBluetoothServiceInfo.serviceClassUuids()
Return type

Returns a list of UUIDs describing the service classes that this service conforms to.

This is a convenience function. It is equivalent to calling attribute( ServiceClassIds ).value< Sequence >() and subsequently iterating over its QBluetoothUuid entries.

See also

attribute()

PySide6.QtBluetooth.QBluetoothServiceInfo.serviceDescription()
Return type

str

This is a convenience function. It is equivalent to calling attribute( ServiceDescription ).toString().

Returns the service description in the primary language.

PySide6.QtBluetooth.QBluetoothServiceInfo.serviceName()
Return type

str

This is a convenience function. It is equivalent to calling attribute( ServiceName ).toString().

Returns the service name in the primary language.

PySide6.QtBluetooth.QBluetoothServiceInfo.serviceProvider()
Return type

str

This is a convenience function. It is equivalent to calling attribute( ServiceProvider ).toString().

Returns the service provider in the primary language.

PySide6.QtBluetooth.QBluetoothServiceInfo.serviceUuid()
Return type

PySide6.QtBluetooth.QBluetoothUuid

This is a convenience function. It is equivalent to calling attribute( ServiceId ).value< QBluetoothUuid >().

Returns the custom UUID of the service. This UUID may be null. UUIDs based on Bluetooth SIG standards should be retrieved via serviceClassUuids() .

PySide6.QtBluetooth.QBluetoothServiceInfo.setAttribute(attributeId, value)
Parameters
PySide6.QtBluetooth.QBluetoothServiceInfo.setAttribute(attributeId, value)
Parameters
PySide6.QtBluetooth.QBluetoothServiceInfo.setAttribute(attributeId, value)
Parameters
PySide6.QtBluetooth.QBluetoothServiceInfo.setAttribute(attributeId, value)
Parameters
  • attributeIdquint16

  • value – object

PySide6.QtBluetooth.QBluetoothServiceInfo.setDevice(info)
Parameters

infoPySide6.QtBluetooth.QBluetoothDeviceInfo

Sets the Bluetooth device that provides this service to device.

See also

device()

PySide6.QtBluetooth.QBluetoothServiceInfo.setServiceAvailability(availability)
Parameters

availabilityquint8

This is a convenience function. It is equivalent to calling setAttribute ( ServiceAvailability , availability).

Sets the availabiltiy of the service to availability.

PySide6.QtBluetooth.QBluetoothServiceInfo.setServiceDescription(description)
Parameters

description – str

This is a convenience function. It is equivalent to calling setAttribute ( ServiceDescription , description).

Sets the service description in the primary language to description.

PySide6.QtBluetooth.QBluetoothServiceInfo.setServiceName(name)
Parameters

name – str

This is a convenience function. It is equivalent to calling setAttribute ( ServiceName , name).

Sets the service name in the primary language to name.

PySide6.QtBluetooth.QBluetoothServiceInfo.setServiceProvider(provider)
Parameters

provider – str

This is a convenience function. It is equivalent to calling setAttribute ( ServiceProvider , provider).

Sets the service provider in the primary language to provider.

PySide6.QtBluetooth.QBluetoothServiceInfo.setServiceUuid(uuid)
Parameters

uuidPySide6.QtBluetooth.QBluetoothUuid

This is a convenience function. It is equivalent to calling setAttribute ( ServiceId , uuid).

Sets the custom service UUID to uuid. This function should not be used to set a standardized service UUID.

PySide6.QtBluetooth.QBluetoothServiceInfo.socketProtocol()
Return type

Protocol

Returns the protocol that the QBluetoothServiceInfo object uses.

PySide6.QtBluetooth.QBluetoothServiceInfo.unregisterService()
Return type

bool

Unregisters this service with the platform’s Service Discovery Protocol (SDP) implementation. After this, the service will no longer be findable by other devices through service discovery.

Returns true if the service is successfully unregistered, otherwise returns false.