pablosambuco / caststatusserver

Web app for playing status and basic control of all the chromecast devices in your local network
MIT License
1 stars 0 forks source link

Dejar de solicitar actualizaciones desde el front #13

Closed github-actions[bot] closed 3 years ago

github-actions[bot] commented 3 years ago

Dejar de solicitar actualizaciones desde el front

y enviarlas directamente a todos los clientes desde update_status

https://github.com/pablosambuco/CastStatusServer/blob/d975a27a4b726f7e97443fcbfe91d8a62c9e81e1/caststatusserver.py#L117

                status (MediaStatus): respuesta del cast con el cambio de estado
            """
            cast = str(listener.cast.device.friendly_name)
            # si no existe la clave la creo como un diccionario vacio
            if cast not in self.status:
                self.status[cast] = {}

            attr_lookup = self.get_attribs(listener.listener_type, status)
            for attr in attr_lookup:
                if hasattr(status, attr) and attr_lookup[attr] is not None:
                    self.status[cast][self.map_key(attr)] = attr_lookup[attr]

            self.set_substitutes(cast)
            self.set_state(listener,cast)

            now = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
            self.status[cast]["timestamp"] = now

            # TODO Dejar de solicitar actualizaciones desde el front
            #  y enviarlas directamente a todos los clientes desde update_status
            #  labels: mejora
            #  assignees: pablosambuco

        def atender(self, wsock):
            """Funcion para atender los mensajes del WebSocket

b14d0795f2cc18646fec1a1f2a3933ecdd3479e5

github-actions[bot] commented 3 years ago

Closed in 92f7220ebeb3bf4f5878831f4d4b2928eecad642

pablosambuco commented 3 years ago

Se agregó un listado de websockets. Cada vez que se recibe un init, se revisa la lista de websockets descartando los duplicados y cerrados