SinricPro Library
SinricProFanUS

Device to control a fan with on / off commands and its speed by a range value. More...

Inheritance diagram for SinricProFanUS:
SinricProDevice

Public Types

typedef std::function< bool(const String &, int &)> SetRangeValueCallback
 Callback definition for onRangeValue function. More...
 
typedef std::function< bool(const String &, int &)> AdjustRangeValueCallback
 Callback definition for onAdjustRangeValue function. More...
 
typedef std::function< bool(const String &, bool &)> PowerStateCallback
 Callback definition for onPowerState function. More...
 

Public Member Functions

void onRangeValue (SetRangeValueCallback cb)
 Set callback function for setRangeValue request. More...
 
void onAdjustRangeValue (AdjustRangeValueCallback cb)
 Set callback function for adjustRangeValue request. More...
 
bool sendRangeValueEvent (int rangeValue, String cause="PHYSICAL_INTERACTION")
 Send rangeValue event to report curent rangeValue to 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 fan with on / off commands and its speed by a range value.

Member Typedef Documentation

◆ AdjustRangeValueCallback

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

Callback definition for onAdjustRangeValue function.

Gets called when device receive a adjustRangeValue reuqest

Parameters
[in]deviceIdString which contains the ID of device
[in]rangeValueInteger -n..n delta value for range value have to change
[out]rangeValueInteger 0..n returning the absolute range value
Returns
the success of the request
Return values
truerequest handled properly
falserequest was not handled properly because of some error

Example-Code

int globalRangeValue;
bool onAdjustRangeValue(const String &deviceId, int &rangeValueDelta) {
globalRangeValue += rangeValue; // calculate absolute rangeValue
Serial.printf("Device %s range value has been changed about %i to %d\r\n", rangeValueDelta, globalRangeValue);
rangeValueDelta = globalRangeValue; // return absolute rangeValue
return true; // request handled properly
}

◆ 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
}

◆ SetRangeValueCallback

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

Callback definition for onRangeValue function.

Gets called when device receive a setRangeValue reuqest

Parameters
[in]deviceIdString which contains the ID of device
[in]rangeValueInteger 0..n for range value device has to be set
[out]rangeValueInteger 0..n returning the current range value
Returns
the success of the request
Return values
truerequest handled properly
falserequest was not handled properly because of some error

Example-Code

bool onRangeValue(const String &deviceId, int &rangeValue) {
Serial.printf("Device %s range value has been set to %d\r\n", rangeValue);
return true; // request handled properly
}

Member Function Documentation

◆ onAdjustRangeValue()

void onAdjustRangeValue ( AdjustRangeValueCallback  cb)

Set callback function for adjustRangeValue request.

Parameters
cbFunction pointer to a AdjustRangeValueCallback function
See also
AdjustRangeValueCallback

◆ onPowerState()

void onPowerState ( PowerStateCallback  cb)
virtualinherited

Set callback function for powerState request.

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

◆ onRangeValue()

void onRangeValue ( SetRangeValueCallback  cb)

Set callback function for setRangeValue request.

Parameters
cbFunction pointer to a SetRangeValueCallback function
See also
SetRangeValueCallback

◆ 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

◆ sendRangeValueEvent()

bool sendRangeValueEvent ( int  rangeValue,
String  cause = "PHYSICAL_INTERACTION" 
)

Send rangeValue event to report curent rangeValue to SinricPro server.

Parameters
rangeValueValue between 0..n
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
SinricProFanUS::onRangeValue
void onRangeValue(SetRangeValueCallback cb)
Set callback function for setRangeValue request.
Definition: SinricProFanUS.h:101
SinricProFanUS::onAdjustRangeValue
void onAdjustRangeValue(AdjustRangeValueCallback cb)
Set callback function for adjustRangeValue request.
Definition: SinricProFanUS.h:111
SinricProDevice::onPowerState
virtual void onPowerState(PowerStateCallback cb)
Set callback function for powerState request.
Definition: SinricProDevice.h:139