From 8f905f0fadbbc5721abbc0af216d75905a234a66 Mon Sep 17 00:00:00 2001 From: Henry Bilby Date: Thu, 4 Jun 2009 01:36:44 -0400 Subject: [PATCH] Adding control_point/main.py, who starts the zukebox_control_point. --- control_point/main.py | 12 +++++++++ control_point/zukebox_control_point.py | 42 +++++++++++++++----------------- 2 files changed, 31 insertions(+), 23 deletions(-) create mode 100644 control_point/main.py diff --git a/control_point/main.py b/control_point/main.py new file mode 100644 index 0000000..245033e --- /dev/null +++ b/control_point/main.py @@ -0,0 +1,12 @@ +from zukebox_control_point import ZukeboxControlPoint + +def main(): + + zcp = ZukeboxControlPoint() + cp = zcp.start() + zcp.get_playlist(cp) + zcp.search(cp) + zcp.content_directory(cp) + +if __name__ == '__main__': + main() diff --git a/control_point/zukebox_control_point.py b/control_point/zukebox_control_point.py index 20cc09b..fefad8a 100644 --- a/control_point/zukebox_control_point.py +++ b/control_point/zukebox_control_point.py @@ -18,52 +18,48 @@ class ZukeboxControlPoint(ControlPointAV): def __init__(self): ControlPointAV.__init__(self) - - def start(self): - self.cp = self.create_control_point() self.cp.start() reactor.add_after_stop_func(self.cp.stop) reactor.main() - cp.start_search(300, 'upnp:rootdevice') - while self.set_zukebox_server(cp): + self.cp.start_search(300, 'upnp:rootdevice') + while self.set_zukebox_server(self.cp): print 'Searching Zukebox Server' + return self.cp - def create_control_point(): + + def create_control_point(self): """ Creates the control point and binds callbacks to device events. """ cp = ControlPointAV() - cp.subscribe('new_device_event', on_new_device) - cp.subscribe('removed_device_event', on_removed_device) + cp.subscribe('new_device_event', self.on_new_device) + cp.subscribe('removed_device_event', self.on_removed_device) return cp - def on_new_device(dev): + def on_new_device(self, dev): if not dev: return devices.append(dev) - print 'Got new device: ', dev.udn - print "Type 'list' to see the whole list" - - def on_removed_device(udn): - print 'Device is gone: ', udn + def on_removed_device(self, udn): + for dev in devices: if dev.udn == udn: devices.remove(dev) - def get_switch_service(device): + def get_switch_service(self, device): return device.services[service[1]] - def set_zukebox_server(cp): + def set_zukebox_server(self, cp): for device in cp.get_devices(): if device.values().friendly_name == 'Zukebox-Server': @@ -72,15 +68,15 @@ class ZukeboxControlPoint(ControlPointAV): return False - def get_playlist(cp): - - - def search(cp): - + def get_playlist(self, cp): + print 'Ainda falta implementar a chamada do playlist, esqueci o codigo no lab' - def content_directory(cp): + def search(self, cp): + print 'O mesmo para o print acima - search ' + def content_directory(self, cp): + print 'O mesmo para o print acima - content_directory ' - def stop(cp): + def stop(self, cp): cp.stop() reactor.main_quit() -- 1.7.9.5