Code cleanup

This commit is contained in:
tomaae 2020-12-25 23:31:51 +01:00
parent ec1788ad3a
commit d245bed440
3 changed files with 35 additions and 16 deletions

View file

@ -383,7 +383,10 @@ class MikrotikControllerPortBinarySensor(MikrotikControllerBinarySensor):
@property @property
def unique_id(self) -> str: def unique_id(self) -> str:
"""Return a unique id for this entity.""" """Return a unique id for this entity."""
return f"{self._inst.lower()}-{self._sid_data['sid']}-{self._data['port-mac-address']}_{self._data['default-name']}" return (
f"{self._inst.lower()}-{self._sid_data['sid']}-"
f"{self._data['port-mac-address']}_{self._data['default-name']}"
)
@property @property
def is_on(self) -> bool: def is_on(self) -> bool:

View file

@ -221,6 +221,10 @@ class MikrotikControllerDeviceTracker(ScannerEntity):
attributes = self._attrs attributes = self._attrs
return attributes return attributes
@property
def is_connected(self) -> bool:
return False
# --------------------------- # ---------------------------
# MikrotikControllerHostDeviceTracker # MikrotikControllerHostDeviceTracker

View file

@ -1,7 +1,7 @@
"""Support for the Mikrotik Router switches.""" """Support for the Mikrotik Router switches."""
import logging import logging
from typing import Any, Dict from typing import Any, Dict, Optional
from homeassistant.components.switch import SwitchEntity from homeassistant.components.switch import SwitchEntity
from homeassistant.const import CONF_NAME, ATTR_ATTRIBUTION from homeassistant.const import CONF_NAME, ATTR_ATTRIBUTION
@ -254,6 +254,14 @@ class MikrotikControllerSwitch(SwitchEntity, RestoreEntity):
return attributes return attributes
def turn_off(self, **kwargs: Any) -> None:
"""Required abstract method."""
pass
def turn_on(self, **kwargs: Any) -> None:
"""Required abstract method."""
pass
# --------------------------- # ---------------------------
# MikrotikControllerPortSwitch # MikrotikControllerPortSwitch
@ -299,7 +307,7 @@ class MikrotikControllerPortSwitch(MikrotikControllerSwitch):
} }
return info return info
async def async_turn_on(self) -> None: async def async_turn_on(self) -> Optional[str]:
"""Turn on the switch.""" """Turn on the switch."""
path = "/interface" path = "/interface"
param = "default-name" param = "default-name"
@ -319,7 +327,7 @@ class MikrotikControllerPortSwitch(MikrotikControllerSwitch):
await self._ctrl.force_update() await self._ctrl.force_update()
async def async_turn_off(self) -> None: async def async_turn_off(self) -> Optional[str]:
"""Turn off the switch.""" """Turn off the switch."""
path = "/interface" path = "/interface"
param = "default-name" param = "default-name"
@ -398,9 +406,10 @@ class MikrotikControllerNATSwitch(MikrotikControllerSwitch):
param = ".id" param = ".id"
value = None value = None
for uid in self._ctrl.data["nat"]: for uid in self._ctrl.data["nat"]:
if ( if self._ctrl.data["nat"][uid]["uniq-id"] == (
self._ctrl.data["nat"][uid]["uniq-id"] f"{self._data['chain']},{self._data['action']},{self._data['protocol']},"
== f"{self._data['chain']},{self._data['action']},{self._data['protocol']},{self._data['in-interface']}:{self._data['dst-port']}-{self._data['out-interface']}:{self._data['to-addresses']}:{self._data['to-ports']}" f"{self._data['in-interface']}:{self._data['dst-port']}-"
f"{self._data['out-interface']}:{self._data['to-addresses']}:{self._data['to-ports']}"
): ):
value = self._ctrl.data["nat"][uid][".id"] value = self._ctrl.data["nat"][uid][".id"]
@ -415,9 +424,10 @@ class MikrotikControllerNATSwitch(MikrotikControllerSwitch):
param = ".id" param = ".id"
value = None value = None
for uid in self._ctrl.data["nat"]: for uid in self._ctrl.data["nat"]:
if ( if self._ctrl.data["nat"][uid]["uniq-id"] == (
self._ctrl.data["nat"][uid]["uniq-id"] f"{self._data['chain']},{self._data['action']},{self._data['protocol']},"
== f"{self._data['chain']},{self._data['action']},{self._data['protocol']},{self._data['in-interface']}:{self._data['dst-port']}-{self._data['out-interface']}:{self._data['to-addresses']}:{self._data['to-ports']}" f"{self._data['in-interface']}:{self._data['dst-port']}-"
f"{self._data['out-interface']}:{self._data['to-addresses']}:{self._data['to-ports']}"
): ):
value = self._ctrl.data["nat"][uid][".id"] value = self._ctrl.data["nat"][uid][".id"]
@ -485,9 +495,10 @@ class MikrotikControllerMangleSwitch(MikrotikControllerSwitch):
param = ".id" param = ".id"
value = None value = None
for uid in self._ctrl.data["mangle"]: for uid in self._ctrl.data["mangle"]:
if ( if self._ctrl.data["mangle"][uid]["uniq-id"] == (
self._ctrl.data["mangle"][uid]["uniq-id"] f"{self._data['chain']},{self._data['action']},{self._data['protocol']},"
== f"{self._data['chain']},{self._data['action']},{self._data['protocol']},{self._data['src-address']}:{self._data['src-port']}-{self._data['dst-address']}:{self._data['dst-port']}" f"{self._data['src-address']}:{self._data['src-port']}-"
f"{self._data['dst-address']}:{self._data['dst-port']}"
): ):
value = self._ctrl.data["mangle"][uid][".id"] value = self._ctrl.data["mangle"][uid][".id"]
@ -502,9 +513,10 @@ class MikrotikControllerMangleSwitch(MikrotikControllerSwitch):
param = ".id" param = ".id"
value = None value = None
for uid in self._ctrl.data["mangle"]: for uid in self._ctrl.data["mangle"]:
if ( if self._ctrl.data["mangle"][uid]["uniq-id"] == (
self._ctrl.data["mangle"][uid]["uniq-id"] f"{self._data['chain']},{self._data['action']},{self._data['protocol']},"
== f"{self._data['chain']},{self._data['action']},{self._data['protocol']},{self._data['src-address']}:{self._data['src-port']}-{self._data['dst-address']}:{self._data['dst-port']}" f"{self._data['src-address']}:{self._data['src-port']}-"
f"{self._data['dst-address']}:{self._data['dst-port']}"
): ):
value = self._ctrl.data["mangle"][uid][".id"] value = self._ctrl.data["mangle"][uid][".id"]