Bluetooth: Make the bluetooth server work with Qt6 bluez5 backend
parent
81fc582087
commit
07d7479240
|
|
@ -511,8 +511,10 @@ void BluetoothServer::start()
|
||||||
|
|
||||||
// Note: https://www.bluetooth.com/specifications/gatt/services
|
// Note: https://www.bluetooth.com/specifications/gatt/services
|
||||||
m_deviceInfoService = m_controller->addService(deviceInformationServiceData(), m_controller);
|
m_deviceInfoService = m_controller->addService(deviceInformationServiceData(), m_controller);
|
||||||
|
#if QT_VERSION < QT_VERSION_CHECK(6,0,0)
|
||||||
m_genericAccessService = m_controller->addService(genericAccessServiceData(), m_controller);
|
m_genericAccessService = m_controller->addService(genericAccessServiceData(), m_controller);
|
||||||
m_genericAttributeService = m_controller->addService(genericAttributeServiceData(), m_controller);
|
m_genericAttributeService = m_controller->addService(genericAttributeServiceData(), m_controller);
|
||||||
|
#endif
|
||||||
|
|
||||||
// Create custom services
|
// Create custom services
|
||||||
m_networkService = new NetworkService(m_controller->addService(NetworkService::serviceData(m_networkManager), m_controller),
|
m_networkService = new NetworkService(m_controller->addService(NetworkService::serviceData(m_networkManager), m_controller),
|
||||||
|
|
|
||||||
|
|
@ -72,9 +72,7 @@ QLowEnergyServiceData NetworkService::serviceData(NetworkManager *networkManager
|
||||||
serviceData.setType(QLowEnergyServiceData::ServiceTypePrimary);
|
serviceData.setType(QLowEnergyServiceData::ServiceTypePrimary);
|
||||||
serviceData.setUuid(networkServiceUuid);
|
serviceData.setUuid(networkServiceUuid);
|
||||||
|
|
||||||
#if QT_VERSION >= QT_VERSION_CHECK(6,0,0)
|
#if QT_VERSION < QT_VERSION_CHECK(6,0,0)
|
||||||
QLowEnergyDescriptorData clientConfigDescriptorData(QBluetoothUuid::DescriptorType::ClientCharacteristicConfiguration, QByteArray(2, 0));
|
|
||||||
#else
|
|
||||||
QLowEnergyDescriptorData clientConfigDescriptorData(QBluetoothUuid::ClientCharacteristicConfiguration, QByteArray(2, 0));
|
QLowEnergyDescriptorData clientConfigDescriptorData(QBluetoothUuid::ClientCharacteristicConfiguration, QByteArray(2, 0));
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
@ -83,7 +81,9 @@ QLowEnergyServiceData NetworkService::serviceData(NetworkManager *networkManager
|
||||||
networkStatusData.setUuid(networkStatusCharacteristicUuid);
|
networkStatusData.setUuid(networkStatusCharacteristicUuid);
|
||||||
networkStatusData.setValue(QByteArray(1, 0));
|
networkStatusData.setValue(QByteArray(1, 0));
|
||||||
networkStatusData.setProperties(QLowEnergyCharacteristic::Read | QLowEnergyCharacteristic::Notify);
|
networkStatusData.setProperties(QLowEnergyCharacteristic::Read | QLowEnergyCharacteristic::Notify);
|
||||||
|
#if QT_VERSION < QT_VERSION_CHECK(6,0,0)
|
||||||
networkStatusData.addDescriptor(clientConfigDescriptorData);
|
networkStatusData.addDescriptor(clientConfigDescriptorData);
|
||||||
|
#endif
|
||||||
networkStatusData.setValue(NetworkService::getNetworkManagerStateByteArray(networkManager->state()));
|
networkStatusData.setValue(NetworkService::getNetworkManagerStateByteArray(networkManager->state()));
|
||||||
serviceData.addCharacteristic(networkStatusData);
|
serviceData.addCharacteristic(networkStatusData);
|
||||||
|
|
||||||
|
|
@ -98,7 +98,9 @@ QLowEnergyServiceData NetworkService::serviceData(NetworkManager *networkManager
|
||||||
QLowEnergyCharacteristicData networkResponseCharacteristicData;
|
QLowEnergyCharacteristicData networkResponseCharacteristicData;
|
||||||
networkResponseCharacteristicData.setUuid(networkResponseCharacteristicUuid);
|
networkResponseCharacteristicData.setUuid(networkResponseCharacteristicUuid);
|
||||||
networkResponseCharacteristicData.setProperties(QLowEnergyCharacteristic::Notify);
|
networkResponseCharacteristicData.setProperties(QLowEnergyCharacteristic::Notify);
|
||||||
|
#if QT_VERSION < QT_VERSION_CHECK(6,0,0)
|
||||||
networkResponseCharacteristicData.addDescriptor(clientConfigDescriptorData);
|
networkResponseCharacteristicData.addDescriptor(clientConfigDescriptorData);
|
||||||
|
#endif
|
||||||
networkResponseCharacteristicData.setValueLength(1, 1);
|
networkResponseCharacteristicData.setValueLength(1, 1);
|
||||||
serviceData.addCharacteristic(networkResponseCharacteristicData);
|
serviceData.addCharacteristic(networkResponseCharacteristicData);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -80,9 +80,7 @@ QLowEnergyServiceData WirelessService::serviceData(NetworkManager *networkManage
|
||||||
serviceData.setType(QLowEnergyServiceData::ServiceTypePrimary);
|
serviceData.setType(QLowEnergyServiceData::ServiceTypePrimary);
|
||||||
serviceData.setUuid(wirelessServiceUuid);
|
serviceData.setUuid(wirelessServiceUuid);
|
||||||
|
|
||||||
#if QT_VERSION >= QT_VERSION_CHECK(6,0,0)
|
#if QT_VERSION < QT_VERSION_CHECK(6,0,0)
|
||||||
QLowEnergyDescriptorData clientConfigDescriptorData(QBluetoothUuid::DescriptorType::ClientCharacteristicConfiguration, QByteArray(2, 0));
|
|
||||||
#else
|
|
||||||
QLowEnergyDescriptorData clientConfigDescriptorData(QBluetoothUuid::ClientCharacteristicConfiguration, QByteArray(2, 0));
|
QLowEnergyDescriptorData clientConfigDescriptorData(QBluetoothUuid::ClientCharacteristicConfiguration, QByteArray(2, 0));
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
@ -104,7 +102,9 @@ QLowEnergyServiceData WirelessService::serviceData(NetworkManager *networkManage
|
||||||
QLowEnergyCharacteristicData wirelessResponseCharacteristicData;
|
QLowEnergyCharacteristicData wirelessResponseCharacteristicData;
|
||||||
wirelessResponseCharacteristicData.setUuid(wirelessResponseCharacteristicUuid);
|
wirelessResponseCharacteristicData.setUuid(wirelessResponseCharacteristicUuid);
|
||||||
wirelessResponseCharacteristicData.setProperties(QLowEnergyCharacteristic::Notify);
|
wirelessResponseCharacteristicData.setProperties(QLowEnergyCharacteristic::Notify);
|
||||||
|
#if QT_VERSION < QT_VERSION_CHECK(6,0,0)
|
||||||
wirelessResponseCharacteristicData.addDescriptor(clientConfigDescriptorData);
|
wirelessResponseCharacteristicData.addDescriptor(clientConfigDescriptorData);
|
||||||
|
#endif
|
||||||
wirelessResponseCharacteristicData.setValueLength(0, 20);
|
wirelessResponseCharacteristicData.setValueLength(0, 20);
|
||||||
serviceData.addCharacteristic(wirelessResponseCharacteristicData);
|
serviceData.addCharacteristic(wirelessResponseCharacteristicData);
|
||||||
|
|
||||||
|
|
@ -112,7 +112,9 @@ QLowEnergyServiceData WirelessService::serviceData(NetworkManager *networkManage
|
||||||
QLowEnergyCharacteristicData wirelessStatusCharacteristicData;
|
QLowEnergyCharacteristicData wirelessStatusCharacteristicData;
|
||||||
wirelessStatusCharacteristicData.setUuid(wirelessStateCharacteristicUuid);
|
wirelessStatusCharacteristicData.setUuid(wirelessStateCharacteristicUuid);
|
||||||
wirelessStatusCharacteristicData.setProperties(QLowEnergyCharacteristic::Read | QLowEnergyCharacteristic::Notify);
|
wirelessStatusCharacteristicData.setProperties(QLowEnergyCharacteristic::Read | QLowEnergyCharacteristic::Notify);
|
||||||
|
#if QT_VERSION < QT_VERSION_CHECK(6,0,0)
|
||||||
wirelessStatusCharacteristicData.addDescriptor(clientConfigDescriptorData);
|
wirelessStatusCharacteristicData.addDescriptor(clientConfigDescriptorData);
|
||||||
|
#endif
|
||||||
wirelessStatusCharacteristicData.setValueLength(1, 1);
|
wirelessStatusCharacteristicData.setValueLength(1, 1);
|
||||||
if (networkManager->wirelessNetworkDevices().isEmpty()) {
|
if (networkManager->wirelessNetworkDevices().isEmpty()) {
|
||||||
wirelessStatusCharacteristicData.setValue(WirelessService::getWirelessNetworkDeviceState(NetworkDevice::NetworkDeviceStateUnknown));
|
wirelessStatusCharacteristicData.setValue(WirelessService::getWirelessNetworkDeviceState(NetworkDevice::NetworkDeviceStateUnknown));
|
||||||
|
|
@ -125,7 +127,9 @@ QLowEnergyServiceData WirelessService::serviceData(NetworkManager *networkManage
|
||||||
QLowEnergyCharacteristicData wirelessModeCharacteristicData;
|
QLowEnergyCharacteristicData wirelessModeCharacteristicData;
|
||||||
wirelessModeCharacteristicData.setUuid(wirelessModeCharacteristicUuid);
|
wirelessModeCharacteristicData.setUuid(wirelessModeCharacteristicUuid);
|
||||||
wirelessModeCharacteristicData.setProperties(QLowEnergyCharacteristic::Read | QLowEnergyCharacteristic::Notify);
|
wirelessModeCharacteristicData.setProperties(QLowEnergyCharacteristic::Read | QLowEnergyCharacteristic::Notify);
|
||||||
|
#if QT_VERSION < QT_VERSION_CHECK(6,0,0)
|
||||||
wirelessModeCharacteristicData.addDescriptor(clientConfigDescriptorData);
|
wirelessModeCharacteristicData.addDescriptor(clientConfigDescriptorData);
|
||||||
|
#endif
|
||||||
wirelessModeCharacteristicData.setValueLength(1, 1);
|
wirelessModeCharacteristicData.setValueLength(1, 1);
|
||||||
if (networkManager->wirelessNetworkDevices().isEmpty()) {
|
if (networkManager->wirelessNetworkDevices().isEmpty()) {
|
||||||
wirelessModeCharacteristicData.setValue(WirelessService::getWirelessMode(WirelessNetworkDevice::WirelessModeUnknown));
|
wirelessModeCharacteristicData.setValue(WirelessService::getWirelessMode(WirelessNetworkDevice::WirelessModeUnknown));
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue