mirror of
https://github.com/KevinMidboe/mktxp-no-cli.git
synced 2025-10-29 17:50:23 +00:00
Merge pull request #101 from urbanserj/wifi-qcom
Add support for RouterOS version 7.13
This commit is contained in:
@@ -19,17 +19,19 @@ from mktxp.datasource.wireless_ds import WirelessMetricsDataSource
|
||||
class CapsmanInfo:
|
||||
@staticmethod
|
||||
def capsman_path(router_entry):
|
||||
if WirelessMetricsDataSource.wifiwave2_installed(router_entry):
|
||||
return '/interface/wifiwave2/capsman'
|
||||
else:
|
||||
if WirelessMetricsDataSource.is_legacy(router_entry):
|
||||
return '/caps-man'
|
||||
else:
|
||||
wireless_package = WirelessMetricsDataSource.wireless_package(router_entry)
|
||||
return f'/interface/{wireless_package}/capsman'
|
||||
|
||||
@staticmethod
|
||||
def registration_table_path(router_entry):
|
||||
if WirelessMetricsDataSource.wifiwave2_installed(router_entry):
|
||||
return '/interface/wifiwave2/registration-table'
|
||||
else:
|
||||
if WirelessMetricsDataSource.is_legacy(router_entry):
|
||||
return '/caps-man/registration-table'
|
||||
else:
|
||||
wireless_package = WirelessMetricsDataSource.wireless_package(router_entry)
|
||||
return f'/interface/{wireless_package}/registration-table'
|
||||
|
||||
class CapsmanCapsMetricsDataSource:
|
||||
''' Caps Metrics data provider
|
||||
@@ -76,7 +78,7 @@ class CapsmanInterfacesDatasource:
|
||||
|
||||
@staticmethod
|
||||
def metric_records(router_entry, *, metric_labels = None):
|
||||
if WirelessMetricsDataSource.wireless_package(router_entry) == WirelessMetricsDataSource.WIFIWAVE2:
|
||||
if not WirelessMetricsDataSource.is_legacy(router_entry):
|
||||
return None
|
||||
if metric_labels is None:
|
||||
metric_labels = []
|
||||
|
||||
@@ -21,6 +21,7 @@ class WirelessMetricsDataSource:
|
||||
'''
|
||||
WIFIWAVE2 = 'wifiwave2'
|
||||
WIRELESS = 'wireless'
|
||||
WIFI = 'wifi'
|
||||
|
||||
@staticmethod
|
||||
def metric_records(router_entry, *, metric_labels = None, add_router_id = True):
|
||||
@@ -45,10 +46,14 @@ class WirelessMetricsDataSource:
|
||||
@staticmethod
|
||||
def wireless_package(router_entry):
|
||||
if not router_entry.wifi_package:
|
||||
ww2_installed = PackageMetricsDataSource.is_package_installed(router_entry, package_name = WirelessMetricsDataSource.WIFIWAVE2)
|
||||
router_entry.wifi_package = WirelessMetricsDataSource.WIFIWAVE2 if ww2_installed else WirelessMetricsDataSource.WIRELESS
|
||||
if PackageMetricsDataSource.is_package_installed(router_entry, package_name = WirelessMetricsDataSource.WIRELESS):
|
||||
router_entry.wifi_package = WirelessMetricsDataSource.WIRELESS
|
||||
elif PackageMetricsDataSource.is_package_installed(router_entry, package_name = WirelessMetricsDataSource.WIFIWAVE2):
|
||||
router_entry.wifi_package = WirelessMetricsDataSource.WIFIWAVE2
|
||||
else:
|
||||
router_entry.wifi_package = WirelessMetricsDataSource.WIFI
|
||||
return router_entry.wifi_package
|
||||
|
||||
@staticmethod
|
||||
def wifiwave2_installed(router_entry):
|
||||
return WirelessMetricsDataSource.wireless_package(router_entry) == WirelessMetricsDataSource.WIFIWAVE2
|
||||
def is_legacy(router_entry):
|
||||
return WirelessMetricsDataSource.wireless_package(router_entry) == WirelessMetricsDataSource.WIRELESS
|
||||
|
||||
Reference in New Issue
Block a user