Add linak desk worker

This commit is contained in:
zewelor
2018-04-27 02:21:00 +02:00
parent 6f64df929a
commit d0d08ae4b0
+23
View File
@@ -0,0 +1,23 @@
from interruptingcow import timeout
from mqtt import MqttMessage
from workers.base import BaseWorker
REQUIREMENTS = ['git+https://github.com/zewelor/linak_bt_desk.git']
class LinakdeskWorker(BaseWorker):
def _setup(self):
from linak_dpg_bt import LinakDesk
self.desk = LinakDesk(self.mac)
def status_update(self):
return [MqttMessage(topic=self.format_topic('height/cm'), payload=self._get_height())]
def _get_height(self):
with timeout(20):
self.desk.read_dpg_data()
return self.desk.current_height_with_offset.cm
return -1