def set_device(self,device, commd): if commd in ["man", "auto"]: set_val_in_szenen(device=device, szene="Auto_Mode", value=commd) if self.tv_remote_lan.sendKey([str(commd)]) or self.tv_remote.sendKey([str(commd)]): set_val_in_szenen(device=device, szene="Value", value=commd) return True else: return False
def set_device(self, device, commd): if commd in ["man", "auto"]: set_val_in_szenen(device=device, szene="Auto_Mode", value=commd) return True s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) satellit=mdb_read_table_entry(table.name,device) command = {} if satellit.get('command_set') == 'server': command['Szene'] = commd else: command = mdb_read_table_entry(satellit.get('command_set'),commd) command["Device"]=device data = "" print command if str(satellit.get('PORT')) <> 'None': try: satelliten.mysocket_old.sendto(str(command),(satellit.get('IP'),satellit.get('PORT'))) return True except: pass if str(satellit.get('BiPORT')) <> 'None': for i in range(0,3): try: satelliten.mysocket.settimeout(10) s.connect((satellit.get('IP'),satellit.get('BiPORT'))) s.send(str(command)) data=s.recv(1024) s.close() except: s.close() if data == "True": break if data == "True": return True else: return False
def set_device(self, device, commd): try: if commd in ["man", "auto"]: set_val_in_szenen(device=device, szene="Auto_Mode", value=commd) if commd == str(-1) or commd == "toggle": if self.GetSwitch(str(device)) > "0.0": self.SetSwitch(str(device), "0.0") set_val_in_szenen(device=device, szene="Value", value=0) else: self.SetSwitch(str(device), "100.0") set_val_in_szenen(device=device, szene="Value", value=100) else: self.SetSwitch(str(device), str(commd)) set_val_in_szenen(device=device, szene="Value", value=commd) return True except: return False
def set_device(self, device, commd): h_dev = Light(hbridge, device) keys = ['bri', 'hue', 'sat', 'transitiontime'] szene = mdb_read_table_entry(table.name,commd) success = False if szene.get('bri')<=0: szene['bri'] = 0 szene['on'] = False if commd in ["man", "auto"]: set_val_in_szenen(device=device, szene="Auto_Mode", value=commd) return True elif commd == 'Save': hue = hbridge.get_light(device, 'hue') bri = hbridge.get_light(device, 'bri') sat = hbridge.get_light(device, 'sat') an = hbridge.get_light(device, 'on') #{'hue': '7', 'bri': '2', 'sat': 'True', 'on': 'False'} setting = {'hue': hue, 'bri': bri, 'sat': sat, 'an': an} mdb_set_table(table.name,device, setting) return True elif commd == 'Umschalten': an = hbridge.get_light(device, 'on') if an: szene['on'] = False else: szene['on'] = True elif commd == 'sz_toggle': an = hbridge.get_light(device, 'on') if an: commd="SZ_Aus" else: szene['on'] = True bright = szene.get('bri') if bright <> None and bright>0: szene['bri'] = int(bright) if bright <> None and bright<=0: pass if str(szene.get('on')) == "1" or str(szene.get('on')) == "True": success = h_dev.on retry = 1 while not success and retry < max_retry: try: hbridge.set_light(device, {'on':True}) success = h_dev.on except: time.sleep(1) success = False retry += 1 if not success: return success time.sleep(0.5) command = {} for key in keys: if ((szene.get(key) <> "") and (str(szene.get(key)) <> "None")): command[key] = int(szene.get(key)) if command <> {} and h_dev.on: success = False retry = 1 while not success and retry < max_retry: try: hbridge.set_light(device, command) success = True except: time.sleep(1) success = False retry += 1 if str(szene.get('on')) == "0" or str(szene.get('on')) == "False": success = not h_dev.on retry = 1 if 'transitiontime' in command: if command['transitiontime'] > 0: time.sleep(command['transitiontime']/10) while not success and retry < max_retry: try: hbridge.set_light(device, {'on':False}) success = not h_dev.on except: time.sleep(1) success = False retry += 1 set_val_in_szenen(device=device, szene="Value", value=szene.get('on')) if not h_dev.reachable: success = False aes.new_event(description=str(device) + " not reachable", prio=1) return success
def set_device(self, player, command, text): if command in ["man", "auto"]: set_val_in_szenen(device=player, szene="Auto_Mode", value=command) player, p_uid, playerName = self.get_addr(player) if player in self.Devices: player = self.Devices.get(str(player)) playerName = self.Names.get(player) if str(command) == "Pause": self.SetPause(player) elif str(command) == "Play": self.SetPlay(player) elif str(command) == "Save": self.sonos_write_szene(player) elif str(command) == "Announce_Time": self.sonos_write_szene(player) lt = localtime() stunde = int(strftime("%H", lt)) minute = int(strftime("%M", lt)) if (minute <> 0) and (minute <> 30): text = "Es ist " + str(stunde) + " Uhr und " + str(minute) + " Minuten." laenge = downloadAudioFile(text) self.sonos_read_szene(player, mdb_read_table_entry(table.name,"TextToSonos")) time.sleep(laenge + 1) self.sonos_read_szene(player, mdb_read_table_entry(table.name,playerName)) elif str(command) == "Durchsage": self.durchsage(text) elif str(command) == "Ansage": self.ansage(text,player) elif str(command) == "Return": self.sonos_read_szene(player, mdb_read_table_entry(table.name,playerName), hergestellt = False) elif ((str(command) == "resume") ): time.sleep(60) self.sonos_read_szene(player, mdb_read_table_entry(table.name,playerName)) elif (str(command) == "lauter"): ActVol = self.GetVolume(player) increment = 8 VOLUME = ActVol + increment self.SetVolume(player, VOLUME) return elif (str(command) == "leiser"): ActVol = self.GetVolume(player) increment = 8 VOLUME = ActVol - increment self.SetVolume(player, VOLUME) return elif (str(command) == "inc_lauter"): ActVol = self.GetVolume(player) if ActVol >= 20: increment = 8 if ActVol < 20: increment = 4 if ActVol < 8: increment = 2 VOLUME = ActVol + increment self.SetVolume(player, VOLUME) elif (str(command) == "inc_leiser"): ActVol = self.GetVolume(player) if ActVol >= 20: increment = 8 if ActVol < 20: increment = 4 if ActVol < 8: increment = 2 VOLUME = ActVol - increment self.SetVolume(player, VOLUME) elif (str(command) == "WeckerAnsage"): self.SetPause(player) self.SetVolume(player, 20) setting_s("Durchsage", str(crn.next_wecker_heute_morgen())) text = setting_r("Durchsage") laenge = downloadAudioFile(text) self.sonos_read_szene(player, mdb_read_table_entry(table.name,"TextToSonos")) time.sleep(laenge + 1) self.SetPause(player) elif (str(command) == "EingangWohnzi"): self.StreamInput(player, self.WohnZiZone) elif ((str(command) <> "resume") and (str(command) <> "An") and (str(command) <> "None")): sonos_szene = mdb_read_table_entry(table.name,command) self.sonos_read_szene(player, sonos_szene) return True