Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

55 lignes
1.4KB

  1. # -*- coding: utf-8 -*-
  2. import os
  3. from os.path import join
  4. from modules.core.basetypes import Sensor
  5. from modules.core.core import cbpi
  6. from modules.core.proptypes import Property
  7. import logging
  8. @cbpi.addon.sensor.type("Dummy Sensor")
  9. class Dummy(Sensor):
  10. text = Property.Text(label="Text", required=True, description="This is a parameter", configurable=True)
  11. p = Property.Select(label="hallo",options=[1,2,3])
  12. def __init__(self):
  13. self.logger = logging.getLogger(__name__)
  14. self.logger.info("INIT SENSOR")
  15. def init(self):
  16. if self.api.get_config_parameter("unit","C") == "C":
  17. self.unit = "°C"
  18. else:
  19. self.unit = "°F"
  20. @cbpi.addon.sensor.action("WOHOO")
  21. def myaction(self):
  22. self.logger.info(self.text)
  23. self.logger.debug("SENSOR ACTION HALLO!!!")
  24. def execute(self):
  25. while True:
  26. try:
  27. self.update_value(int(self.text))
  28. except:
  29. pass
  30. self.api.sleep(1)
  31. @cbpi.addon.core.action(key="clear", label="Clear all Logs")
  32. def woohoo(cbpi):
  33. logger = logging.getLogger(__name__)
  34. logger.info("COOL")
  35. dir = "./logs"
  36. test = os.listdir(dir)
  37. for item in test:
  38. if item.endswith(".log"):
  39. os.remove(join(dir, item))
  40. cbpi.notify(headline="Logs Deleted",message="All Logs Cleared")