SinricPro Library
BrightnessController< T >

BrightnessController. More...

Inheritance diagram for BrightnessController< T >:

Public Types

using BrightnessCallback = std::function< bool(const String &, int &)>
 Callback definition for onBrightness function. More...
 
using AdjustBrightnessCallback = std::function< bool(const String &, int &)>
 Callback definition for onAdjustBrightness function. More...
 

Public Member Functions

void onBrightness (BrightnessCallback cb)
 Set callback function for setBrightness request. More...
 
void onAdjustBrightness (AdjustBrightnessCallback cb)
 Set callback function for adjustBrightness request. More...
 
bool sendBrightnessEvent (int brightness, String cause="PHYSICAL_INTERACTION")
 Send setBrightness event to SinricPro Server indicating actual brightness. More...
 

Detailed Description

template<typename T>
class BrightnessController< T >

BrightnessController.

Member Typedef Documentation

◆ AdjustBrightnessCallback

using AdjustBrightnessCallback = std::function<bool(const String &, int &)>

Callback definition for onAdjustBrightness function.

Gets called when device receive a adjustBrightness request

Parameters
[in]deviceIdString which contains the ID of device
[in]brightnessRelative integer value the device should change the brightness about
[out]brightnessAbsolute integer value with new brightness the device is set to
Returns
the success of the request
Return values
truerequest handled properly
falserequest was not handled properly because of some error

Example-Code

int absoluteBrightness;
bool onAdjustBrightness(const String &deviceId, int &brightnessDelta) {
absoluteBrightness += brightnessDelta; // calculate absolute brigthness
Serial.printf("Device %s brightness changed about %i to %d\r\n", deviceId.c_str(), brightnessDelta, absoluteBrightness);
brightnessDelta = absoluteBrightness; // return absolute brightness
return true; // request handled properly
}
void onAdjustBrightness(AdjustBrightnessCallback cb)
Set callback function for adjustBrightness request.
Definition: BrightnessController.h:77

◆ BrightnessCallback

using BrightnessCallback = std::function<bool(const String &, int &)>

Callback definition for onBrightness function.

Gets called when device receive a setBrightness request

Parameters
[in]deviceIdString which contains the ID of device
[in]brightnessAbsolute integer value the device should set its brightness to
[out]brightnessAbsolute integer value with new brightness the device is set to
Returns
the success of the request
Return values
truerequest handled properly
falserequest was not handled properly because of some error

Example-Code

bool onBrightness(const String &deviceId, int &brightness) {
Serial.printf("Device %s brightness %d\r\n", deviceId.c_str(), brightness);
return true; // request handled properly
}
void onBrightness(BrightnessCallback cb)
Set callback function for setBrightness request.
Definition: BrightnessController.h:65

Member Function Documentation

◆ onAdjustBrightness()

void onAdjustBrightness ( AdjustBrightnessCallback  cb)

Set callback function for adjustBrightness request.

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

◆ onBrightness()

void onBrightness ( BrightnessCallback  cb)

Set callback function for setBrightness request.

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

◆ sendBrightnessEvent()

bool sendBrightnessEvent ( int  brightness,
String  cause = "PHYSICAL_INTERACTION" 
)

Send setBrightness event to SinricPro Server indicating actual brightness.

Parameters
brightnessInteger value with actual brightness the device is set to
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