Hallo,
ich habe sh.py das relative Dimmen beigebracht:
Items sind:
Die Logik:
Gruß,
Hendrik
ich habe sh.py das relative Dimmen beigebracht:
Code:
RelativDimmen: filename: relativdimmen.py min_to_max_duration: 2.5 # in 2.5s wird von min bis max gedimmt step: 2.5 watch_item: - eg.StripeOben.R.RelativDimmen
Items sind:
Code:
- eg.StripeOben.R - eg.StripeOben.R.RelativDimmen
Die Logik:
Code:
#!/usr/bin/env python3 # relativdimmen.py # Watch the DPT3.007 item (list) #from lib.item import Items #items = Items.get_instance() logger.warning('[Relativ Dimmen] Start') min=0 max=100 input_val = trigger['value'] try: input_item= items.return_item(trigger['source']) target_item= input_item.return_parent() start = input_val[1] increase = input_val[0] except: logger.error("This logic must be triggered by an Item of type list with DPT3.007") min_to_max_duration = 2.5 # logic.min_to_max_duration step = 2.5 # logic.step time_delta= min_to_max_duration / ( (max-min)/step ) # e.g. 2s / ((100-0)/ 1) = 0.02 logger.warning('[Relativ Dimmen] Start {} Increase {}'.format(start,increase)) if start: if increase: target_item.fade(max, step, time_delta) logger.warning('[Relativ Dimmen] To {} Step {}, TimeDelta {}'.format(max, step, time_delta)) else: # decrease target_item.fade(min, step, time_delta) logger.warning('[Relativ Dimmen] To {} Step {}, TimeDelta {}'.format(min, step, time_delta)) else: logger.info('[Relativ Dimmen] Stoppe Fading') target_item._fading=False
Hendrik
Kommentar