def read_rss(self, feed): MenuItems=[] prompt = "" icon = icons_url + "_up.png" MenuItems.append((icon, 'Hauptmenü',config['base_url']+'/')) icon = icons_url + "info.png" # print("rss_file: " + config['rss_file']) try: fobj = open(config['rss_file']) except: print("Dateizugriff fehlgeschlagen!") # return SnomXML.SnomIPPhoneText("Dateizugriff fehlgeschlagen!", "ERROR", prompt) # sys.exit(0) return 1 itemlist = pickle.load(fobj) fobj.close() # print itemlist i = 1 for line in itemlist: rss_headline = line[0].encode('utf-8') # print(rss_headline) MenuItems.append((icon, rss_headline,config['base_url'] + 'rss_' + str(i) )) i = i + 1 # UTF-8 Encoding: rss_content = line[1].encode('utf-8') # print(rss_content) return SnomXML.SnomIPPhoneMenuIcon(Title = feed + '-Feed' , MenuItems = MenuItems)
def light_room(self, room, room_code): ''' Hue ''' MenuItems=[] icon = icons_url + "_up.png" MenuItems.append((icon, 'Hauptmenü',config['base_url'] + '/')) state = command.get_value('light_1_' + room_code) # print("State: " + str(state)) if state : text= "ON" icon = icons_url + "hue-on.png" else: text= "OFF" icon = icons_url + "hue-off.png" MenuItems.append((icon, 'Lichtstatus: ' + text, config['base_url'] + 'light')) if state : icon = icons_url + "hue-off.png" MenuItems.append((icon, 'Schalte Licht → OFF', config['base_url'] + 'light/' + room_code + '/0')) MenuItems.append((icon, 'Schalte Licht → Tageslicht' , config['base_url'] + 'light/' + room_code + '/2')) MenuItems.append((icon, 'Schalte Licht → Glühlampe' , config['base_url'] + 'light/' + room_code + '/3')) MenuItems.append((icon, 'Schalte Licht → Pink' , config['base_url'] + 'light/' + room_code + '/4')) MenuItems.append((icon, 'Schalte Licht → Blau' , config['base_url'] + 'light/' + room_code + '/5')) else: icon = icons_url + "hue-on.png" MenuItems.append((icon, 'Schalte Licht → ON' , config['base_url'] + 'light/' + room_code + '/1')) return SnomXML.SnomIPPhoneMenuIcon(Title="Licht " + room, MenuItems = MenuItems)
def index(self): ''' Main Manu: ''' MenuItems=[] # MenuItems.append((icon, 'Sicherheit',config['base_url']+'secure')) icon = icons_url + "firstfloor.png" MenuItems.append((icon, 'Räume',config['base_url']+'rooms')) icon = icons_url + "slider-50.png" MenuItems.append((icon, 'Licht',config['base_url']+'light')) icon = icons_url + "socket.png" MenuItems.append((icon, 'Steckdosen',config['base_url']+'socket')) icon = icons_url + "temperature-max.png" MenuItems.append((icon, 'Heizung - Klima',config['base_url']+'temps')) icon = icons_url + "contact-open.png" MenuItems.append((icon, 'Fenster',config['base_url']+'windows')) # MenuItems.append((icon, 'Multimedia',config['base_url']+'media')) # MenuItems.append((icon, 'Hilfe',config['base_url']+'help')) icon = icons_url + "camera.png" MenuItems.append((icon, 'Webcams',config['base_url']+'webcam')) icon = icons_url + "sun_clouds.png" MenuItems.append((icon, 'Wetter',config['base_url']+'wetter')) icon = icons_url + "info.png" MenuItems.append((icon, 'RSS-Feed',config['base_url']+'rss')) # MenuItems.append((icon, 'Szenen',config['base_url']+'szenen')) icon = icons_url + "computer.png" MenuItems.append((icon, 'System',config['base_url']+'system')) icon = icons_url + "_up.png" MenuItems.append((icon, 'Exit','snom://mb_exit')) # print MenuItems return SnomXML.SnomIPPhoneMenuIcon(Title="Smart Home Status Demo", MenuItems = MenuItems)
def webcams(self): MenuItems=[] icon = icons_url + "_up.png" MenuItems.append((icon, 'Hauptmenü',config['base_url']+'/')) icon = icons_url + "camera.png" MenuItems.append((icon, 'snom CeBIT 1',config['base_url']+'webcam0')) MenuItems.append((icon, 'snom CeBIT 2',config['base_url']+'webcam1')) MenuItems.append((icon, 'snom CeBIT Alarmcam',config['base_url'] + 'alarmcam')) return SnomXML.SnomIPPhoneMenuIcon(Title="Webcams",MenuItems=MenuItems)
def rss(self): MenuItems=[] icon = icons_url + "_up.png" MenuItems.append((icon, 'Hauptmenü',config['base_url']+'/')) icon = icons_url + "info.png" MenuItems.append((icon, 'Heise',config['base_url']+'heise')) # MenuItems.append(('Tagesspiegel',config['base_url']+'tagesspiegel')) # MenuItems.append(('ZDF Heute',config['base_url']+'zdf_heute')) return SnomXML.SnomIPPhoneMenuIcon(Title = "RSS-Feeds", MenuItems = MenuItems)
def temps(self): # print(" function temps") MenuItems = [] icon = icons_url + "_up.png" MenuItems.append((icon, 'Hauptmenü', config['base_url'] + '/')) icon = icons_url + "temperature-max.png" MenuItems.append((icon, 'Alle Zimmer', config['base_url'] + 'all_temp')) icon = icons_url + "sofa.png" MenuItems.append((icon, 'Wohnzimmer', config['base_url'] + 'wz_temp')) icon = icons_url + "office.png" MenuItems.append((icon, 'Arbeitszimmer', config['base_url'] + 'az_temp')) # icon = icons_url + "bedroom.png" # MenuItems.append((icon, 'Schlafzimmer', config['base_url'] + 'sz_temp')) return SnomXML.SnomIPPhoneMenuIcon(Title = "Heizung - Klima", MenuItems = MenuItems)
def room_menu(self, room, room_code): MenuItems=[] icon = icons_url + "_up.png" MenuItems.append((icon, 'Hauptmenü',config['base_url']+'/')) icon = icons_url + "line.png" MenuItems.append((icon, 'Status',config['base_url'] + 'status_' + room_code)) icon = icons_url + "temperature-max.png" MenuItems.append((icon, 'Heizung - Klima',config['base_url'] + room_code + '_temp')) icon = icons_url + "socket.png" MenuItems.append((icon, 'Steckdose',config['base_url'] + 'socket/' + room_code)) # icon = icons_url + "slider-50.png" icon = icons_url + "hue-50.png" MenuItems.append((icon, 'Licht',config['base_url'] + 'light/' + room_code)) return SnomXML.SnomIPPhoneMenuIcon(Title = room, MenuItems = MenuItems)
def room_status(self, room, room_code): # room='Arbeitszimmer' text='' MenuItems=[] room_status = 1 # Licht: state = command.get_value( 'light_1_' + room_code) if state: text= "ON" icon = icons_url + "hue-on.png" else: text= "OFF" icon = icons_url + "hue-off.png" MenuItems.append((icon, 'Licht: '+text,config['base_url'] + 'light/' + room_code)) # Licht: state = command.get_value( 'state_socket_1_' + room_code) if state: text= "ON" icon = icons_url + "socket-on.png" else: text= "OFF" icon = icons_url + "socket-off.png" MenuItems.append((icon, 'Steckdose: '+text,config['base_url'] + 'socket/' + room_code)) # Fenster: # snom: if room_status == 1 : state = command.get_value('window1_wz') if state == 0: text = 'geschlossen' icon = icons_url + "contact-closed.png" # if state == 1: # text = 'gekippt' # icon = icons_url + "contact-ajar.png" # if state == 2: if state > 0: text = 'offen' icon = icons_url + "contact-open.png" # MenuItems.append((icon, 'Fenster: ' + text, config['base_url'] + 'status_' + room_code)) MenuItems.append((icon, 'Fenster: ' + text, config['base_url'] + room_code)) return SnomXML.SnomIPPhoneMenuIcon(Title = "Status " + room, MenuItems = MenuItems)
def windows(self): MenuItems=[] icon = icons_url + "_up.png" MenuItems.append((icon, 'Hauptmenü',config['base_url']+'/')) # Wohnzimmer: state = command.get_value('window1_wz') # print("state: " + str(state)) if state: text = 'Offen' icon = icons_url + "contact-open.png" # if state == 1: # text = 'Gekippt' # icon = icons_url + "contact-ajar.png" # if state == 2: else: text = 'Zu' icon = icons_url + "contact-closed.png" # text = 'Unbekannt' # icon = icons_url + "help.png" MenuItems.append((icon, 'Wohnzimmer: ' + text, config['base_url'] + '/')) return SnomXML.SnomIPPhoneMenuIcon(Title="Status der Fenster",MenuItems=MenuItems)
def rooms(self,): ''' Room Menu: ''' MenuItems=[] icon = icons_url + "_up.png" MenuItems.append((icon, 'Hauptmenü',config['base_url']+'/')) icon = icons_url + "sofa.png" MenuItems.append((icon, 'Wohnzimmer',config['base_url']+'wz')) icon = icons_url + "office.png" MenuItems.append((icon, 'Arbeitszimmer',config['base_url']+'az')) icon = icons_url + "bedroom.png" MenuItems.append((icon, 'Schlafzimmer',config['base_url']+'sz')) # icon = icons_url + "child1.png" # MenuItems.append((icon, 'Kinderzimmer',config['base_url']+'sz')) # icon = icons_url + "kitchen.png" # MenuItems.append((icon, 'Küche',config['base_url']+'kueche')) # icon = icons_url + "bath.png" # MenuItems.append((icon, 'Bad',config['base_url']+'bad')) # icon = icons_url + "corridor.png" # MenuItems.append((icon, 'Flur',config['base_url']+'flur')) return SnomXML.SnomIPPhoneMenuIcon(Title = "Zimmer", MenuItems = MenuItems)
def sockets_room(self, room, room_code): MenuItems=[] icon = icons_url + "_up.png" MenuItems.append((icon, 'Hauptmenü',config['base_url']+'/')) state = command.get_value('state_socket_1_' + room_code) power = command.get_value('power_socket_1_' + room_code) energycounter = command.get_value('energycounter_socket_1_' + room_code) current = command.get_value('current_socket_1_' + room_code) voltage = command.get_value('voltage_socket_1_' + room_code) frequency = command.get_value('frequency_socket_1_' + room_code) print("State: " + str(state)) if state : text= "ON" icon = icons_url + "socket-on.png" else: text= "OFF" icon = icons_url + "socket-off.png" MenuItems.append((icon, 'Steckdosenstatus: ' + text, config['base_url']+'socket')) if state : icon = icons_url + "socket-off.png" MenuItems.append((icon, 'Schalte Steckdose → OFF', config['base_url'] + 'socket/' + room_code + '/0')) else: icon = icons_url + "socket-on.png" MenuItems.append((icon, 'Schalte Steckdose → ON' , config['base_url'] + 'socket/' + room_code + '/1')) # Power: icon = icons_url + "energy.png" text = str(power) MenuItems.append((icon, 'Leistungsaufnahme: ' + text + ' W', config['base_url'] + 'socket' )) text = str(energycounter) MenuItems.append((icon, 'Energie-Zähler: ' + text + ' Wh', config['base_url'] + 'socket' )) text = str(voltage) MenuItems.append((icon, 'Netzspannung: ' + text + ' V', config['base_url'] + 'socket' )) text = str(current) MenuItems.append((icon, 'Stromaufnahme: ' + text + ' mA', config['base_url'] + 'socket' )) text = str(frequency) MenuItems.append((icon, 'Netzfrequenz: ' + text + ' Hz', config['base_url'] + 'socket' )) return SnomXML.SnomIPPhoneMenuIcon(Title="Steckdose " + room, MenuItems = MenuItems)