3#include "../SinricProRequest.h"
4#include "../EventLimiter.h"
5#include "../SinricProStrings.h"
7#include "../SinricProNamespace.h"
8namespace SINRICPRO_NAMESPACE {
10FSTR(OPEN_CLOSE, openPercent);
11FSTR(OPEN_CLOSE, openRelativePercent);
12FSTR(OPEN_CLOSE, openDirection);
13FSTR(OPEN_CLOSE, setOpenClose);
14FSTR(OPEN_CLOSE, adjustOpenClose);
155 bool handleOpenCloseController(SinricProRequest &
request);
158 EventLimiter event_limiter;
167:event_limiter(EVENT_LIMIT_STATE) {
168 T*
device =
static_cast<T*
>(
this);
197 if (event_limiter)
return false;
198 T*
device =
static_cast<T*
>(
this);
220 if (event_limiter)
return false;
221 T*
device =
static_cast<T*
>(
this);
241 T*
device =
static_cast<T*
>(
this);
285using OpenCloseController = SINRICPRO_NAMESPACE::OpenCloseController<T>;
AirQuality.
Definition AirQualitySensor.h:19
Controller class for devices with open/close functionalityThis controller handles open/close operatio...
Definition OpenCloseController.h:89
std::function< bool(const String &, const String &, int &)> DirectionOpenCloseCallback
Callback definition for onDirectionOpenClose callback.
Definition OpenCloseController.h:62
std::function< bool(const String &, int &)> OpenCloseCallback
Callback definition for onOpenClose callback.
Definition OpenCloseController.h:30
std::function< bool(const String &, const String &, int &)> AdjustDirectionOpenCloseCallback
Callback definition for onAdjustDirectionOpenClose callback.
Definition OpenCloseController.h:79
std::function< bool(const String &, int &)> AdjustOpenCloseCallback
Callback definition for onAdjustOpenClose callback.
Definition OpenCloseController.h:46