No puede seleccionar más de 25 temas Los temas deben comenzar con una letra o número, pueden incluir guiones ('-') y pueden tener hasta 35 caracteres de largo.

55 líneas
1.2KB

  1. import logging
  2. from modules.core.baseapi import Buzzer
  3. from modules.core.basetypes import Actor, KettleController, FermenterController
  4. from modules.core.core import cbpi
  5. @cbpi.addon.actor.type("Dummy Actor")
  6. class Dummy(Actor):
  7. def __init__(self):
  8. self.logger = logging.getLogger(__name__)
  9. @cbpi.addon.actor.action("WOHOO")
  10. def myaction(self):
  11. pass
  12. def on(self, power=100):
  13. '''
  14. Code to switch on the actor
  15. :param power: int value between 0 - 100
  16. :return:
  17. '''
  18. self.logger.info("ON")
  19. def off(self):
  20. self.logger.info("OFF")
  21. @cbpi.addon.kettle.controller()
  22. class MyController(KettleController):
  23. def run(self):
  24. while self.is_running():
  25. self.sleep(1)
  26. @cbpi.addon.fermenter.controller()
  27. class MyController2(FermenterController):
  28. def __init__(self):
  29. self.logger = logging.getLogger(__name__)
  30. def run(self):
  31. while self.is_running():
  32. self.logger.debug("HALLO")
  33. self.sleep(1)
  34. @cbpi.addon.core.initializer(order=200)
  35. def init(cbpi):
  36. class MyBuzzer(Buzzer):
  37. def beep(self):
  38. pass
  39. cbpi.buzzer = MyBuzzer()