@@ -61,9 +61,9 @@ class BLEServiceMonitoring : public interface::BLEService
61
61
62
62
auto isScreensaverEnable () const -> bool { return _screensaver_enable; }
63
63
64
- void onTemperatureRequested (const std::function<void ()> &callback)
64
+ void onTemperatureHumidityRequested (const std::function<void ()> &callback)
65
65
{
66
- _on_temperature_requested_callback = callback;
66
+ _on_temperature_humidity_requested_callback = callback;
67
67
}
68
68
69
69
void onDataReceived (const data_received_handle_t ¶ms) final
@@ -89,9 +89,10 @@ class BLEServiceMonitoring : public interface::BLEService
89
89
90
90
void onDataRequested (const data_requested_handle_t ¶ms) final
91
91
{
92
- if (params.handle == _temperature_characteristic.getValueHandle () &&
93
- _on_temperature_requested_callback != nullptr ) {
94
- _on_temperature_requested_callback ();
92
+ if ((params.handle == _temperature_characteristic.getValueHandle () ||
93
+ params.handle == _humidity_characteristic.getValueHandle ()) &&
94
+ _on_temperature_humidity_requested_callback != nullptr ) {
95
+ _on_temperature_humidity_requested_callback ();
95
96
}
96
97
}
97
98
@@ -107,13 +108,14 @@ class BLEServiceMonitoring : public interface::BLEService
107
108
ReadOnlyArrayGattCharacteristic<uint8_t , 4 > _temperature_characteristic {
108
109
service::monitoring::characteristic::temperature, temperature.begin (),
109
110
GattCharacteristic::BLE_GATT_CHAR_PROPERTIES_NOTIFY};
110
- std::function<void ()> _on_temperature_requested_callback {};
111
111
112
112
std::array<uint8_t , 4 > humidity {};
113
113
ReadOnlyArrayGattCharacteristic<uint8_t , 4 > _humidity_characteristic {
114
114
service::monitoring::characteristic::humidity, humidity.begin (),
115
115
GattCharacteristic::BLE_GATT_CHAR_PROPERTIES_NOTIFY};
116
116
117
+ std::function<void ()> _on_temperature_humidity_requested_callback {};
118
+
117
119
bool _screensaver_enable {true };
118
120
WriteOnlyGattCharacteristic<bool > _screensaver_enable_characteristic {
119
121
service::monitoring::characteristic::screensaver_enable,
0 commit comments