Skip to content

Commit

Permalink
#7 Core updates for getting/setting new properties
Browse files Browse the repository at this point in the history
  • Loading branch information
Fockaert committed Jan 3, 2021
1 parent c2d9b93 commit 2b9158d
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 1 deletion.
30 changes: 30 additions & 0 deletions custom_components/rika_firenet/core.py
Original file line number Diff line number Diff line change
Expand Up @@ -197,6 +197,15 @@ def get_stove_thermostat(self):
def get_stove_operation_mode(self):
return float(self._state['controls']['operatingMode'])

def set_stove_operation_mode(self, mode):
_LOGGER.info("set_stove_operation_mode(): " + str(mode))

data = self.get_control_state()
data['operatingMode'] = mode

self._coordinator.set_stove_controls(self._id, data)
self.sync_state()

def get_stove_set_back_temperature(self):
return float(self._state['controls']['setBackTemperature'])

Expand All @@ -215,6 +224,27 @@ def get_room_temperature(self):
def get_room_power_request(self):
return float(self._state['controls']['RoomPowerRequest'])

def set_room_power_request(self, power):
_LOGGER.info("set_room_power_request(): " + str(power))

data = self.get_control_state()
data['RoomPowerRequest'] = power

self._coordinator.set_stove_controls(self._id, data)
self.sync_state()

def get_heating_power(self):
return float(self._state['controls']['heatingPower'])

def set_heating_power(self, power):
_LOGGER.info("set_heating_power(): " + str(power))

data = self.get_control_state()
data['heatingPower'] = power

self._coordinator.set_stove_controls(self._id, data)
self.sync_state()

def is_stove_burning(self):
if self._state['sensors']['statusMainState'] == 4 or self._state['sensors']['statusMainState'] == 5:
return True
Expand Down
9 changes: 8 additions & 1 deletion custom_components/rika_firenet/sensor.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import logging

from homeassistant.const import TEMP_CELSIUS, TIME_HOURS, MASS_KILOGRAMS
from homeassistant.const import TEMP_CELSIUS, TIME_HOURS, MASS_KILOGRAMS, PERCENTAGE
from .entity import RikaFirenetEntity

from .const import (
Expand All @@ -21,6 +21,7 @@
"room temperature",
"room thermostat",
"room power request",
"heating power"
]


Expand Down Expand Up @@ -69,6 +70,8 @@ def state(self):
return self._stove.get_room_thermostat()
elif self._sensor == "room power request":
return self._stove.get_room_power_request()
elif self._sensor == "heating power":
return self._stove.get_heating_power()

@property
def unit_of_measurement(self):
Expand All @@ -78,6 +81,8 @@ def unit_of_measurement(self):
return MASS_KILOGRAMS
elif self._sensor == "stove runtime":
return TIME_HOURS
elif self._sensor == "heating power":
return PERCENTAGE

@property
def icon(self):
Expand All @@ -91,3 +96,5 @@ def icon(self):
return "mdi:fire"
elif self._sensor == "stove status":
return "mdi:information-outline"
elif self._sensor == "heating power":
return "mdi:speedometer"

0 comments on commit 2b9158d

Please sign in to comment.