Skip to content

Commit

Permalink
Revert DSMR not calling entity methods (#36179)
Browse files Browse the repository at this point in the history
  • Loading branch information
balloob committed May 28, 2020
1 parent d4f7fe1 commit 0865791
Showing 1 changed file with 7 additions and 12 deletions.
19 changes: 7 additions & 12 deletions homeassistant/components/dsmr/sensor.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,6 @@
)
from homeassistant.core import CoreState, callback
from homeassistant.helpers import config_validation as cv
from homeassistant.helpers.dispatcher import (
async_dispatcher_connect,
async_dispatcher_send,
)
from homeassistant.helpers.entity import Entity

_LOGGER = logging.getLogger(__name__)
Expand Down Expand Up @@ -113,7 +109,11 @@ async def async_setup_platform(hass, config, async_add_entities, discovery_info=

async_add_entities(devices)

update_entities_telegram = partial(async_dispatcher_send, hass, DOMAIN)
def update_entities_telegram(telegram):
"""Update entities with latest telegram and trigger state update."""
# Make all device entities aware of new telegram
for device in devices:
device.update_data(telegram)

# Creates an asyncio.Protocol factory for reading DSMR telegrams from
# serial and calls update_entities_telegram to update entities on arrival
Expand Down Expand Up @@ -187,17 +187,12 @@ def __init__(self, name, obis, config):
self._config = config
self.telegram = {}

async def async_added_to_hass(self):
"""When entity is added to hass."""
self.async_on_remove(
async_dispatcher_connect(self.hass, DOMAIN, self.update_data)
)

@callback
def update_data(self, telegram):
"""Update data."""
self.telegram = telegram
self.async_write_ha_state()
if self.hass:
self.async_write_ha_state()

def get_dsmr_object_attr(self, attribute):
"""Read attribute from last received telegram for this DSMR object."""
Expand Down

0 comments on commit 0865791

Please sign in to comment.