mirror of
https://github.com/tomaae/homeassistant-mikrotik_router.git
synced 2025-07-02 21:44:31 +02:00
separated dhcp-network data point
This commit is contained in:
parent
d84493a9b4
commit
db1e92b29f
1 changed files with 27 additions and 21 deletions
|
@ -361,6 +361,7 @@ class MikrotikControllerData:
|
|||
await self.hass.async_add_executor_job(self.get_bridge)
|
||||
await self.hass.async_add_executor_job(self.get_arp)
|
||||
await self.hass.async_add_executor_job(self.get_dns)
|
||||
await self.hass.async_add_executor_job(self.get_dhcp_network)
|
||||
await self.hass.async_add_executor_job(self.get_dhcp)
|
||||
await self.async_process_host()
|
||||
await self.hass.async_add_executor_job(self.get_interface_traffic)
|
||||
|
@ -788,27 +789,6 @@ class MikrotikControllerData:
|
|||
# ---------------------------
|
||||
def get_dhcp(self):
|
||||
"""Get DHCP data from Mikrotik"""
|
||||
# TODO: run only on demand
|
||||
self.data["dhcp-network"] = parse_api(
|
||||
data=self.data["dhcp-network"],
|
||||
source=self.api.path("/ip/dhcp-server/network"),
|
||||
key="address",
|
||||
vals=[
|
||||
{"name": "address"},
|
||||
{"name": "gateway", "default": ""},
|
||||
{"name": "netmask", "default": ""},
|
||||
{"name": "dns-server", "default": ""},
|
||||
{"name": "domain", "default": ""},
|
||||
],
|
||||
ensure_vals=[{"name": "address"}, {"name": "IPv4Network", "default": ""},],
|
||||
)
|
||||
|
||||
for uid, vals in self.data["dhcp-network"].items():
|
||||
if vals["IPv4Network"] == "":
|
||||
self.data["dhcp-network"][uid]["IPv4Network"] = IPv4Network(
|
||||
vals["address"]
|
||||
)
|
||||
|
||||
self.data["dhcp"] = parse_api(
|
||||
data=self.data["dhcp"],
|
||||
source=self.api.path("/ip/dhcp-server/lease"),
|
||||
|
@ -850,6 +830,32 @@ class MikrotikControllerData:
|
|||
"interface"
|
||||
]
|
||||
|
||||
# ---------------------------
|
||||
# get_dhcp_network
|
||||
# ---------------------------
|
||||
def get_dhcp_network(self):
|
||||
"""Get DHCP data from Mikrotik"""
|
||||
# TODO: run only on demand
|
||||
self.data["dhcp-network"] = parse_api(
|
||||
data=self.data["dhcp-network"],
|
||||
source=self.api.path("/ip/dhcp-server/network"),
|
||||
key="address",
|
||||
vals=[
|
||||
{"name": "address"},
|
||||
{"name": "gateway", "default": ""},
|
||||
{"name": "netmask", "default": ""},
|
||||
{"name": "dns-server", "default": ""},
|
||||
{"name": "domain", "default": ""},
|
||||
],
|
||||
ensure_vals=[{"name": "address"}, {"name": "IPv4Network", "default": ""},],
|
||||
)
|
||||
|
||||
for uid, vals in self.data["dhcp-network"].items():
|
||||
if vals["IPv4Network"] == "":
|
||||
self.data["dhcp-network"][uid]["IPv4Network"] = IPv4Network(
|
||||
vals["address"]
|
||||
)
|
||||
|
||||
# ---------------------------
|
||||
# get_capsman_hosts
|
||||
# ---------------------------
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue