core: Abode Integration doesn't update, throws exception

The problem

The abode alarm system status no longer updates. Actions such as arming and disarming function and the actual alarm state changes, but the alarm_control_panel.abode entity does not update with the new status.

Reloading the integration via settings corrects the status, but it breaks again.

There are connection exceptions in the logs, it’s the same one every time:

What version of Home Assistant Core has the issue?

2023.2.0b1

What was the last working version of Home Assistant Core?

No response

What type of installation are you running?

Home Assistant OS

Integration causing the issue

Abode

Link to integration documentation on our website

https://rc.home-assistant.io/integrations/abode/

Diagnostics information

No response

Example YAML snippet

No response

Anything in the logs that might be useful for us?

'''
2023-01-26 23:23:23.114 ERROR (SocketIOThread) [jaraco.abode.socketio] Captured exception during SocketIO event callback: 'NoneType' object has no attribute 'replace'
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/jaraco/abode/socketio.py", line 331, in _handle_event
    callback(event_data)
  File "/usr/local/lib/python3.10/site-packages/jaraco/abode/event_controller.py", line 243, in _on_mode_change
    alarm_device = self._client.get_alarm(refresh=True)
  File "/usr/local/lib/python3.10/site-packages/jaraco/abode/client.py", line 274, in get_alarm
    return self.get_device(ALARM.id(area), refresh)
  File "/usr/local/lib/python3.10/site-packages/jaraco/abode/client.py", line 231, in get_device
    device.refresh()
  File "/usr/local/lib/python3.10/site-packages/jaraco/abode/devices/alarm.py", line 97, in refresh
    response_object = super().refresh(url)
  File "/usr/local/lib/python3.10/site-packages/jaraco/abode/devices/base.py", line 111, in refresh
    self.update(device)
  File "/usr/local/lib/python3.10/site-packages/jaraco/abode/devices/alarm.py", line 104, in update
    super().update(state_from_panel(state, area=self._area))
  File "/usr/local/lib/python3.10/site-packages/jaraco/abode/devices/alarm.py", line 26, in state_from_panel
    alarm_state['uuid'] = alarm_state.get('mac').replace(':', '').lower()
AttributeError: 'NoneType' object has no attribute 'replace'
'''

Additional information

This might be related to #80754

About this issue

  • Original URL
  • State: closed
  • Created a year ago
  • Comments: 22 (4 by maintainers)

Commits related to this issue

Most upvoted comments

I’m gonna post this as an issue to that repo.

Can also confirm this issue with 2023.2.0. Fixed it by downgrading to 2023.1.