mirror of
https://github.com/home-assistant/core.git
synced 2025-11-09 10:59:40 +00:00
Fix websocket connection sensor (#22923)
* Fix for #22890 * Singleton count
This commit is contained in:
committed by
Paulus Schoutsen
parent
479511ee42
commit
2527731865
@@ -3,7 +3,9 @@
|
||||
from homeassistant.core import callback
|
||||
from homeassistant.helpers.entity import Entity
|
||||
|
||||
from .const import SIGNAL_WEBSOCKET_CONNECTED, SIGNAL_WEBSOCKET_DISCONNECTED
|
||||
from .const import (
|
||||
SIGNAL_WEBSOCKET_CONNECTED, SIGNAL_WEBSOCKET_DISCONNECTED,
|
||||
DATA_CONNECTIONS)
|
||||
|
||||
|
||||
async def async_setup_platform(
|
||||
@@ -11,12 +13,6 @@ async def async_setup_platform(
|
||||
"""Set up the API streams platform."""
|
||||
entity = APICount()
|
||||
|
||||
# pylint: disable=protected-access
|
||||
hass.helpers.dispatcher.async_dispatcher_connect(
|
||||
SIGNAL_WEBSOCKET_CONNECTED, entity._increment)
|
||||
hass.helpers.dispatcher.async_dispatcher_connect(
|
||||
SIGNAL_WEBSOCKET_DISCONNECTED, entity._decrement)
|
||||
|
||||
async_add_entities([entity])
|
||||
|
||||
|
||||
@@ -25,7 +21,15 @@ class APICount(Entity):
|
||||
|
||||
def __init__(self):
|
||||
"""Initialize the API count."""
|
||||
self.count = 0
|
||||
self.count = None
|
||||
|
||||
async def async_added_to_hass(self):
|
||||
"""Added to hass."""
|
||||
self.hass.helpers.dispatcher.async_dispatcher_connect(
|
||||
SIGNAL_WEBSOCKET_CONNECTED, self._update_count)
|
||||
self.hass.helpers.dispatcher.async_dispatcher_connect(
|
||||
SIGNAL_WEBSOCKET_DISCONNECTED, self._update_count)
|
||||
self._update_count()
|
||||
|
||||
@property
|
||||
def name(self):
|
||||
@@ -43,11 +47,6 @@ class APICount(Entity):
|
||||
return "clients"
|
||||
|
||||
@callback
|
||||
def _increment(self):
|
||||
self.count += 1
|
||||
self.async_schedule_update_ha_state()
|
||||
|
||||
@callback
|
||||
def _decrement(self):
|
||||
self.count -= 1
|
||||
def _update_count(self):
|
||||
self.count = self.hass.data.get(DATA_CONNECTIONS, 0)
|
||||
self.async_schedule_update_ha_state()
|
||||
|
||||
Reference in New Issue
Block a user