3#include "../SinricProRequest.h"
4#include "../EventLimiter.h"
5#include "../SinricProStrings.h"
7#include "../SinricProNamespace.h"
8namespace SINRICPRO_NAMESPACE {
10FSTR(COLORTEMPERATURE, colorTemperature);
11FSTR(COLORTEMPERATURE, setColorTemperature);
12FSTR(COLORTEMPERATURE, increaseColorTemperature);
13FSTR(COLORTEMPERATURE, decreaseColorTemperature);
77 bool handleColorTemperatureController(SinricProRequest &
request);
80 EventLimiter event_limiter;
89: event_limiter(EVENT_LIMIT_STATE) {
90 T*
device =
static_cast<T*
>(
this);
103 colorTemperatureCallback =
cb;
115 increaseColorTemperatureCallback =
cb;
127 decreaseColorTemperatureCallback =
cb;
141 if (event_limiter)
return false;
142 T*
device =
static_cast<T*
>(
this);
152 T*
device =
static_cast<T*
>(
this);
162 if (increaseColorTemperatureCallback && request.action == FSTR_COLORTEMPERATURE_increaseColorTemperature) {
163 int colorTemperature = 1;
164 success = increaseColorTemperatureCallback(device->deviceId, colorTemperature);
165 request.response_value[FSTR_COLORTEMPERATURE_colorTemperature] = colorTemperature;
168 if (decreaseColorTemperatureCallback && request.action == FSTR_COLORTEMPERATURE_decreaseColorTemperature) {
169 int colorTemperature = -1;
170 success = decreaseColorTemperatureCallback(device->deviceId, colorTemperature);
171 request.response_value[FSTR_COLORTEMPERATURE_colorTemperature] = colorTemperature;
180using ColorTemperatureController = SINRICPRO_NAMESPACE::ColorTemperatureController<T>;
AirQuality.
Definition AirQualitySensor.h:19
ColorTemperatureController.
Definition ColorTemperatureController.h:66
bool sendColorTemperatureEvent(int colorTemperature, String cause=FSTR_SINRICPRO_PHYSICAL_INTERACTION)
Send setColorTemperature event to SinricPro Server indicating actual color temperature.
Definition ColorTemperatureController.h:140
void onDecreaseColorTemperature(DecreaseColorTemperatureCallback cb)
Set callback function for decreaseColorTemperature request.
Definition ColorTemperatureController.h:126
void onIncreaseColorTemperature(IncreaseColorTemperatureCallback cb)
Set callback function for increaseColorTemperature request.
Definition ColorTemperatureController.h:114
void onColorTemperature(ColorTemperatureCallback cb)
Set callback function for setColorTemperature request.
Definition ColorTemperatureController.h:102
std::function< bool(const String &, int &)> ColorTemperatureCallback
Callback definition for onColorTemperature function.
Definition ColorTemperatureController.h:28
std::function< bool(const String &, int &)> DecreaseColorTemperatureCallback
Callback definition for onDecreaseColorTemperature function.
Definition ColorTemperatureController.h:58
std::function< bool(const String &, int &)> IncreaseColorTemperatureCallback
Callback definition for onIncreaseColorTemperature function.
Definition ColorTemperatureController.h:43