Example #1
0
    def __init__(self):
        Handler.__init__(self)

        self.backend = PgImage()
        self.add_listener('start')
        self.add_listener('background')

        self.start()
Example #2
0
class ImageHandler(Handler):
    def __init__(self):
        Handler.__init__(self)

        self.backend = PgImage()
        self.add_listener('start')
        self.add_listener('background')

        self.start()

    def _signal(self, signum, frame):
        self.backend._shutdown()

    def _wscb_background(self, channel, message):
        logging.debug("setting background to %s" % message['color'])
        self.backend.background(message['color'])
        self.send_status('start', { "type": "background",
                                    "color": message['color']} )
        self.send_event("background", { "color": message['color']})

    def _wscb_start(self, channel, message):
        # Message types :
        # play
        media = MediaManager.get_media_dict('image', message['media'])

        logging.debug("Playing image %s" % media['path'])

        self.backend.play(media['path'])
        self.send_status('start', { "type" : "image",
                                    "media": message['media'] })
        self.send_event('start', { "media": self.backend.image })

    def start(self):
        logging.info("Starting ImageHandler's websocket")
        self._ws.start(detach=True)

    def send_status(self, status, message):
        logging.debug("sending status")
        self.send_event(status, message)