feature: add auradine control functions.

This commit is contained in:
b-rowan
2024-01-23 15:28:37 -07:00
parent eed1973345
commit b60c7a55d4
7 changed files with 206 additions and 11 deletions

View File

@@ -113,10 +113,17 @@ class MinerConfig:
**self.fan_mode.as_epic(),
**self.temperature.as_epic(),
**self.mining_mode.as_epic(),
**self.pools.as_epic(user_suffix=user_suffix),
**self.pools.as_epic(),
**self.power_scaling.as_epic(),
}
def as_auradine(self, user_suffix: str = None) -> dict:
return {
**self.fan_mode.as_auradine(),
**self.mining_mode.as_auradine(),
**self.pools.as_auradine(user_suffix=user_suffix),
}
@classmethod
def from_dict(cls, dict_conf: dict) -> "MinerConfig":
return cls(
@@ -189,6 +196,14 @@ class MinerConfig:
mining_mode=MiningModeConfig.from_vnish(web_settings),
)
@classmethod
def from_auradine(cls, web_conf: dict) -> "MinerConfig":
return cls(
pools=PoolConfig.from_api(web_conf["pools"][0]),
fan_mode=FanModeConfig.from_auradine(web_conf["fans"][0]),
mining_mode=MiningModeConfig.from_auradine(web_conf["mode"][0]),
)
def merge(a: dict, b: dict) -> dict:
result = deepcopy(a)