SinricPro Library
SinricProGarageDoor

Device to control a garage door. More...

Inheritance diagram for SinricProGarageDoor:
SinricProDevice

Public Types

typedef std::function< bool(const String &, bool &)> DoorStateCallback
 Callback definition for onDoorState function. More...
 
typedef std::function< bool(const String &, bool &)> PowerStateCallback
 Callback definition for onPowerState function. More...
 

Public Member Functions

void onDoorState (DoorStateCallback cb)
 Set callback function for onDoorState request. More...
 
bool sendDoorStateEvent (bool mode, String cause="PHYSICAL_INTERACTION")
 Send DoorState event to update actual door state on SinricPro Server. More...
 
virtual void onPowerState (PowerStateCallback cb)
 Set callback function for powerState request. More...
 
bool sendPowerStateEvent (bool state, String cause="PHYSICAL_INTERACTION")
 Send setPowerState event to SinricPro Server indicating actual power state. More...
 

Detailed Description

Device to control a garage door.

Supporting

  • open / close

Member Typedef Documentation

◆ DoorStateCallback

typedef std::function<bool(const String&, bool&)> DoorStateCallback

Callback definition for onDoorState function.

Gets called when device receive a open or close request

Parameters
[in]deviceIdString which contains the ID of device
[in]doorStatefalse = open, device is requested to open the garage door
true = close, device is requested to close the garage door
[out]doorStatebool with actual state false = open, true = closed
Returns
the success of the request
Return values
truerequest handled properly
falserequest was not handled properly because of some error

Example-Code

bool onDoorState(const String &deviceId, bool &doorState) {
Serial.printf("Device %s garage door is now %s\r\n", deviceId.c_str(), doorState?"closed":"open");
return true;
}

◆ PowerStateCallback

typedef std::function<bool(const String&, bool&)> PowerStateCallback
inherited

Callback definition for onPowerState function.

Gets called when device receive a setPowerState reuqest

Parameters
[in]deviceIdString which contains the ID of device
[in]statetrue = device is requested to turn on
false = device is requested to turn off
[out]statetrue = device has been turned on
false = device has been turned off
Returns
the success of the request
Return values
truerequest handled properly
falserequest was not handled properly because of some error

Example-Code

bool onPowerState(const String &deviceId, bool &state) {
Serial.printf("Device %s turned %s\r\n", deviceId.c_str(), state?"on":"off");
return true; // request handled properly
}

Member Function Documentation

◆ onDoorState()

void onDoorState ( DoorStateCallback  cb)

Set callback function for onDoorState request.

Parameters
cbFunction pointer to a onDoorState function
Returns
void
See also
DoorStateCallback

◆ onPowerState()

void onPowerState ( PowerStateCallback  cb)
virtualinherited

Set callback function for powerState request.

Parameters
cbFunction pointer to a PowerStateCallback function
Returns
void
See also
PowerStateCallback

◆ sendDoorStateEvent()

bool sendDoorStateEvent ( bool  state,
String  cause = "PHYSICAL_INTERACTION" 
)

Send DoorState event to update actual door state on SinricPro Server.

Parameters
statebool true = close
false = open
cause(optional) String reason why event is sent (default = "PHYSICAL_INTERACTION")
Returns
the success of sending the even
Return values
trueevent has been sent successfully
falseevent has not been sent, maybe you sent to much events in a short distance of time

◆ sendPowerStateEvent()

bool sendPowerStateEvent ( bool  state,
String  cause = "PHYSICAL_INTERACTION" 
)
inherited

Send setPowerState event to SinricPro Server indicating actual power state.

Parameters
statetrue = device turned on
false = device turned off
cause(optional) String reason why event is sent (default = "PHYSICAL_INTERACTION")
Returns
the success of sending the even
Return values
trueevent has been sent successfully
falseevent has not been sent, maybe you sent to much events in a short distance of time
SinricProGarageDoor::onDoorState
void onDoorState(DoorStateCallback cb)
Set callback function for onDoorState request.
Definition: SinricProGarageDoor.h:84