SinricPro Library
TemperatureEventSource.h
1 
2 #ifndef _TEMPERATURECONTROLLER_H_
3 #define _TEMPERATURECONTROLLER_H_
4 
9 template <typename T>
11  public:
12  bool sendTemperatureEvent(float temperature, float humidity = -1, String cause = "PERIODIC_POLL");
13 };
14 
25 template <typename T>
26 bool TemperatureEventSource<T>::sendTemperatureEvent(float temperature, float humidity, String cause) {
27  T& device = static_cast<T&>(*this);
28 
29  DynamicJsonDocument eventMessage = device.prepareEvent("currentTemperature", cause.c_str());
30  JsonObject event_value = eventMessage["payload"]["value"];
31  event_value["humidity"] = humidity;
32  event_value["temperature"] = roundf(temperature * 10) / 10;
33  return device.sendEvent(eventMessage);
34 }
35 
36 #endif
TemperatureEventSource.
Definition: TemperatureEventSource.h:10
bool sendTemperatureEvent(float temperature, float humidity=-1, String cause="PERIODIC_POLL")
Send currentTemperature event to report actual temperature (measured by a sensor)
Definition: TemperatureEventSource.h:26