3 #include "../EventLimiter.h"
4 #include "../SinricProStrings.h"
6 #include "../SinricProNamespace.h"
7 namespace SINRICPRO_NAMESPACE {
9 FSTR(DOORBELL, DoorbellPress);
10 FSTR(DOORBELL, state);
11 FSTR(DOORBELL, pressed);
23 EventLimiter event_limiter;
28 : event_limiter(EVENT_LIMIT_SENSOR_STATE) {}
40 if (event_limiter)
return false;
41 T* device =
static_cast<T*
>(
this);
43 JsonDocument eventMessage = device->prepareEvent(FSTR_DOORBELL_DoorbellPress, cause.c_str());
44 JsonObject event_value = eventMessage[FSTR_SINRICPRO_payload][FSTR_SINRICPRO_value];
45 event_value[FSTR_DOORBELL_state] = FSTR_DOORBELL_pressed;
46 return device->sendEvent(eventMessage);
52 using Doorbell = SINRICPRO_NAMESPACE::Doorbell<T>;
Dorbell.
Definition: Doorbell.h:18
bool sendDoorbellEvent(String cause=FSTR_SINRICPRO_PHYSICAL_INTERACTION)
Send Doorbell event to SinricPro Server indicating someone pressed the doorbell button.
Definition: Doorbell.h:39