|
|
|
@@ -12,17 +12,18 @@ from modules.core.props import Property |
|
|
|
class DummyTempSensor(SensorActive): |
|
|
|
|
|
|
|
temp = Property.Number("Temperature", configurable=True, default_value=5, description="Dummy Temperature as decimal value") |
|
|
|
inc = Property.Number("Auto increase", configurable=True, default_value=0.5, description="Dummy Temperature increase as decimal value") |
|
|
|
max_temp = Property.Number("Max temperature", configurable=True, default_value='100', description="Dummy Max. Temperature as decimal value") |
|
|
|
min_temp = Property.Number("Min temperature", configurable=True, default_value='0', description="Dummy Min. Temperature as decimal value") |
|
|
|
current_temp = None |
|
|
|
|
|
|
|
@cbpi.action("My Custom Action") |
|
|
|
def my_action(self): |
|
|
|
print("HELLO WORLD") |
|
|
|
pass |
|
|
|
@cbpi.action("Reset") |
|
|
|
def reset(self): |
|
|
|
self.current_temp = None |
|
|
|
|
|
|
|
def get_unit(self): |
|
|
|
''' |
|
|
|
:return: Unit of the sensor as string. Should not be longer than 3 characters |
|
|
|
''' |
|
|
|
return "°C" if self.get_config_parameter("unit", "C") == "C" else "°F" |
|
|
|
@cbpi.action("Toogle Up/Down") |
|
|
|
def toogle(self): |
|
|
|
self.inc *= -1 |
|
|
|
|
|
|
|
def stop(self): |
|
|
|
SensorActive.stop(self) |
|
|
|
@@ -30,24 +31,20 @@ class DummyTempSensor(SensorActive): |
|
|
|
def execute(self): |
|
|
|
''' |
|
|
|
Active sensor has to handle his own loop |
|
|
|
:return: |
|
|
|
:return: |
|
|
|
''' |
|
|
|
while self.is_running() is True: |
|
|
|
self.data_received(self.temp) |
|
|
|
if not self.current_temp: |
|
|
|
self.current_temp = self.temp |
|
|
|
self.data_received(self.current_temp) |
|
|
|
new_temp = float(self.current_temp) + float(self.inc) |
|
|
|
if float(self.min_temp) <= new_temp <= float(self.max_temp): |
|
|
|
self.current_temp = '%.2f' % new_temp |
|
|
|
self.sleep(5) |
|
|
|
|
|
|
|
@classmethod |
|
|
|
def init_global(cls): |
|
|
|
''' |
|
|
|
Called one at the startup for all sensors |
|
|
|
:return: |
|
|
|
:return: |
|
|
|
''' |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|