supla-device
|
Public Member Functions | |
void | onInit () |
Third method called on element in SuplaDevice.begin() | |
bool | rtcIsReady () const |
bool | getRTCLostPowerFlag () const |
void | resetRTCLostPowerFlag () |
void | parseLocaltimeFromServer (TSDC_UserLocalTimeResult *result) |
![]() | |
virtual bool | isReady () |
virtual int | getYear () |
virtual int | getMonth () |
virtual int | getDay () |
virtual int | getDayOfWeek () |
virtual enum DayOfWeek | getHvacDayOfWeek () |
virtual int | getHour () |
virtual int | getQuarter () |
virtual int | getMin () |
virtual int | getSec () |
virtual time_t | getTimeStamp () |
void | onTimer () override |
Method called on timer interupt. | |
bool | iterateConnected () override |
Method called on each SuplaDevice iteration when device is connected and registered to Supla server or other protocol. | |
void | onLoadConfig (SuplaDeviceClass *sdc) override |
First method called on element in SuplaDevice.begin(). | |
void | onDeviceConfigChange (uint64_t fieldBit) override |
Method called when device config is changed. | |
void | setUseAutomaticTimeSyncRemoteConfig (bool value) |
void | printCurrentTime (const char *prefix=nullptr) |
![]() | |
Element * | next () |
Returns next Element from the list. | |
virtual void | purgeConfig () |
Removes all configration data related to the element from Storage::Config. | |
virtual void | onLoadState () |
Second method called on element in SuplaDevice.begin(). | |
virtual void | onSaveState () |
Method called periodically during SuplaDevice iteration. | |
virtual void | onRegistered (Supla::Protocol::SuplaSrpc *suplaSrpc=nullptr) |
Method called each time when device successfully registers to Supla server. | |
virtual void | iterateAlways () |
Method called on each SuplaDevice iteration. | |
virtual bool | iterateConnected (void *ptr) |
deprecated | |
virtual void | onFastTimer () |
Method called on fast timer interupt. | |
virtual void | onSoftReset () |
Method called when device soft restart is triggered. | |
virtual int32_t | handleNewValueFromServer (TSD_SuplaChannelNewValue *newValue) |
Handles "new value" request from server. | |
virtual void | fillSuplaChannelNewValue (TSD_SuplaChannelNewValue *value) |
Fills TSD_SuplaChannelNewValue based on current state. | |
virtual void | handleGetChannelState (TDSC_ChannelState *channelState) |
Handles "get channel state (i)" request from server. | |
virtual int | handleCalcfgFromServer (TSD_DeviceCalCfgRequest *request) |
Handles CALCFG requests from server. | |
virtual uint8_t | handleChannelConfig (TSD_ChannelConfig *newChannelConfig, bool local=false) |
Handles "set channel config" request from server. | |
virtual uint8_t | handleWeeklySchedule (TSD_ChannelConfig *newWeeklySchedule, bool altSchedule=false, bool local=false) |
Handles "set channel config" with "weekly schedule" type request from server. | |
virtual void | handleSetChannelConfigResult (TSDS_SetChannelConfigResult *result) |
Handles "set channel config" reply from server. | |
virtual void | handleChannelConfigFinished () |
Handles "channel config finished" message from server. | |
int | getChannelNumber () const |
Returns channel number. | |
int | getSecondaryChannelNumber () const |
Returns secondary channel number. | |
virtual bool | isOwnerOfSubDeviceId (int subDeviceId) const |
Returns true if element is owner of subDeviceId. | |
virtual const Channel * | getChannel () const |
Returns pointer to main channel. | |
virtual Channel * | getChannel () |
virtual const Channel * | getSecondaryChannel () const |
Returns pointer to secondary channel. | |
virtual Channel * | getSecondaryChannel () |
virtual void | generateKey (char *output, const char *key) const |
Generates key used for Config. | |
Element & | disableChannelState () |
Disables channel state (i) function. | |
bool | isChannelStateEnabled () const |
Returns true if channel state (i) function is enabled. | |
virtual bool | isAnyUpdatePending () |
Returns true if any update is pending. | |
void | setInitialCaption (const char *caption, bool secondaryChannel=false) |
Sets initial caption. | |
void | setDefaultFunction (int32_t defaultFunction) |
Sets default channel's function. | |
Protected Attributes | |
RTC_DS3231 | rtc |
bool | RTCLostPower = false |
bool | isRTCReady = false |
![]() | |
time_t | localtime = {} |
uint32_t | lastServerUpdate = 0 |
uint32_t | lastMillis = 0 |
bool | isClockReady = false |
bool | automaticTimeSync = true |
bool | useAutomaticTimeSyncRemoteConfig = true |
![]() | |
Element * | nextPtr = nullptr |
Additional Inherited Members | |
![]() | |
static bool | IsReady () |
static int | GetYear () |
static int | GetMonth () |
static int | GetDay () |
static int | GetDayOfWeek () |
static enum DayOfWeek | GetHvacDayOfWeek () |
static int | GetHour () |
static int | GetQuarter () |
static int | GetMin () |
static int | GetSec () |
static time_t | GetTimeStamp () |
static Clock * | GetInstance () |
![]() | |
static Element * | begin () |
Returns first Element (based on creation order) | |
static Element * | last () |
Returns last Element (based on creation order) | |
static Element * | getElementByChannelNumber (int channelNumber) |
Returns Element by channel number. | |
static Element * | getOwnerOfSubDeviceId (int subDeviceId) |
Returns Element which owns given subDeviceId. | |
static bool | IsAnyUpdatePending () |
Checks if any element has pending update for remote server. | |
static void | NotifyElementsAboutConfigChange (uint64_t fieldBit) |
Notifies all elements about device config change. | |
static bool | IsInvalidPtrSet () |
When "invalid pointer" is set, previously obtained Element pointer may be invalid. | |
static void | ClearInvalidPtr () |
Clears "invalid pointer" flag. | |
![]() | |
void | setSystemTime (time_t newTime) |
![]() | |
static Element * | firstPtr = nullptr |
static bool | invalidatePtr = false |
|
inlinevirtual |
Third method called on element in SuplaDevice.begin()
Method called during SuplaDevice initialization. I.e. load initial state, initialize pins etc.
Reimplemented from Supla::Element.
|
inlinevirtual |
Reimplemented from Supla::Clock.