Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.

60 wiersze
1.4KB

  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. self.logger.debug("HALLO!!!")
  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 __init__(self):
  24. self.logger = logging.getLogger(__name__)
  25. def run(self):
  26. while self.is_running():
  27. self.logger.debug("HALLO")
  28. self.sleep(1)
  29. @cbpi.addon.fermenter.controller()
  30. class MyController2(FermenterController):
  31. def __init__(self):
  32. self.logger = logging.getLogger(__name__)
  33. def run(self):
  34. while self.is_running():
  35. self.logger.debug("HALLO")
  36. self.sleep(1)
  37. @cbpi.addon.core.initializer(order=200)
  38. def init(cbpi):
  39. class MyBuzzer(Buzzer):
  40. def __init__(self):
  41. self.logger = logging.getLogger(__name__)
  42. def beep(self):
  43. self.logger.info("BEEEEEEP")
  44. cbpi.buzzer = MyBuzzer()