3 #include "../EventLimiter.h"
4 #include "../SinricProStrings.h"
6 #include "../SinricProNamespace.h"
7 namespace SINRICPRO_NAMESPACE {
9 FSTR(AIRQUALITY, airQuality);
10 FSTR(AIRQUALITY, pm1);
11 FSTR(AIRQUALITY, pm2_5);
12 FSTR(AIRQUALITY, pm10);
22 bool sendAirQualityEvent(
int pm1 = 0,
int pm2_5 = 0,
int pm10 = 0, String cause = FSTR_SINRICPRO_PERIODIC_POLL);
24 EventLimiter event_limiter;
29 : event_limiter (EVENT_LIMIT_SENSOR_VALUE) {}
44 if (event_limiter)
return false;
45 T* device =
static_cast<T*
>(
this);
47 JsonDocument eventMessage = device->prepareEvent(FSTR_AIRQUALITY_airQuality, cause.c_str());
48 JsonObject event_value = eventMessage[FSTR_SINRICPRO_payload][FSTR_SINRICPRO_value];
50 event_value[FSTR_AIRQUALITY_pm1] = pm1;
51 event_value[FSTR_AIRQUALITY_pm2_5] = pm2_5;
52 event_value[FSTR_AIRQUALITY_pm10] = pm10;
54 return device->sendEvent(eventMessage);
60 using AirQualitySensor = SINRICPRO_NAMESPACE::AirQualitySensor<T>;
AirQuality.
Definition: AirQualitySensor.h:19
bool sendAirQualityEvent(int pm1=0, int pm2_5=0, int pm10=0, String cause=FSTR_SINRICPRO_PERIODIC_POLL)
Sending air quality to SinricPro server.
Definition: AirQualitySensor.h:43