25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

55 lines
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()