diff options
Diffstat (limited to 'events.py')
-rw-r--r-- | events.py | 17 |
1 files changed, 12 insertions, 5 deletions
@@ -25,8 +25,15 @@ def EventSubscriber(app, environ, start_response, path): if address == session: address, message = message.split(None, 1) - if address in ('cached', 'recoding', 'play'): + data = None + if address in ('cached', 'recoding'): + track, path = message.split(None, 1) + data = json.dumps({'type': address, 'path': path, 'track': track}) + yield 'data: {0}\n\n'.format(data) + elif address in ('play',): data = json.dumps({'type': address, 'path': message}) + + if data: yield 'data: {0}\n\n'.format(data) socket.close() @@ -37,11 +44,11 @@ class EventPublisher(object): self.socket = self.context.socket(zmq.PUB) self.socket.bind(config.get('event_publisher')) - def recoding(self, path): - self.socket.send('recoding {0}'.format(path)) + def recoding(self, path, track): + self.socket.send('recoding {0} {1}'.format(track or '_', path)) - def cached(self, path): - self.socket.send('cached {0}'.format(path)) + def cached(self, path, track): + self.socket.send('cached {0} {1}'.format(track or '_', path)) def play(self, session, path): self.socket.send('session-{0} play {1}'.format(session, path)) |