mirror of
https://github.com/home-assistant/core.git
synced 2025-07-19 11:17:21 +00:00
Fix SNMP device_tracker results without MAC addresses
@llauren reported that his router returns empty MAC addresses for things on different subnets, which causes heartache for the HA snmp device tracker.
This commit is contained in:
parent
d641cd5eef
commit
e59d6b7da0
@ -66,7 +66,8 @@ class SnmpScanner(object):
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
self._update_info()
|
self._update_info()
|
||||||
return [client['mac'] for client in self.last_results]
|
return [client['mac'] for client in self.last_results
|
||||||
|
if client.get('mac')]
|
||||||
|
|
||||||
# Supressing no-self-use warning
|
# Supressing no-self-use warning
|
||||||
# pylint: disable=R0201
|
# pylint: disable=R0201
|
||||||
@ -111,6 +112,7 @@ class SnmpScanner(object):
|
|||||||
for resrow in restable:
|
for resrow in restable:
|
||||||
for _, val in resrow:
|
for _, val in resrow:
|
||||||
mac = binascii.hexlify(val.asOctets()).decode('utf-8')
|
mac = binascii.hexlify(val.asOctets()).decode('utf-8')
|
||||||
|
_LOGGER.debug('Found mac %s', mac)
|
||||||
mac = ':'.join([mac[i:i+2] for i in range(0, len(mac), 2)])
|
mac = ':'.join([mac[i:i+2] for i in range(0, len(mac), 2)])
|
||||||
devices.append({'mac': mac})
|
devices.append({'mac': mac})
|
||||||
return devices
|
return devices
|
||||||
|
Loading…
x
Reference in New Issue
Block a user