22#ifndef INCLUDE_HUEPLUSPLUS_BRIDGE_CONFIG_H
23#define INCLUDE_HUEPLUSPLUS_BRIDGE_CONFIG_H
59 BridgeConfig(std::shared_ptr<APICache> baseCache, std::chrono::steady_clock::duration refreshDuration);
68 void refresh(
bool force =
false);
Caches API GET requests and refreshes regularly.
Definition APICache.h:38
General bridge configuration properties.
Definition BridgeConfig.h:56
BridgeConfig & operator=(BridgeConfig &&)=default
void setRefreshDuration(std::chrono::steady_clock::duration refreshDuration)
Sets custom refresh interval for the config.
Definition BridgeConfig.cpp:43
BridgeConfig(BridgeConfig &&)=default
bool getLinkButton() const
Get link button state.
Definition BridgeConfig.cpp:64
std::string getMACAddress() const
Get bridge MAC address.
Definition BridgeConfig.cpp:76
void refresh(bool force=false)
Refreshes internal cached state.
Definition BridgeConfig.cpp:31
time::AbsoluteTime getUTCTime() const
Get current (of last refresh) UTC time of the bridge.
Definition BridgeConfig.cpp:80
std::string getTimezone() const
Get configured timezone for the bridge.
Definition BridgeConfig.cpp:84
BridgeConfig & operator=(const BridgeConfig &)=default
BridgeConfig(const BridgeConfig &)=default
void removeUser(const std::string &userKey)
Remove user from the whitelist.
Definition BridgeConfig.cpp:60
void pressLinkButton()
Set the link button state to pressed.
Definition BridgeConfig.cpp:68
std::vector< WhitelistedUser > getWhitelistedUsers() const
Get the list of whitelisted users.
Definition BridgeConfig.cpp:48
void touchLink()
Add the closest lamp to the network.
Definition BridgeConfig.cpp:72
One-time, absolute time point.
Definition TimePattern.h:73
Namespace for the hueplusplus library.
Definition Action.h:28
API version consisting of major, minor and patch version.
Definition BridgeConfig.h:35
int patch
Definition BridgeConfig.h:38
int minor
Definition BridgeConfig.h:37
int major
Definition BridgeConfig.h:36
User that is whitelisted for Hue API usage.
Definition BridgeConfig.h:43
time::AbsoluteTime lastUsed
Last time the user was used.
Definition BridgeConfig.h:49
time::AbsoluteTime created
Time the user was created.
Definition BridgeConfig.h:51
std::string key
API username of the user.
Definition BridgeConfig.h:45
std::string name
Name provided on user creation.
Definition BridgeConfig.h:47