Add Qtech model and template; clean up Mikrotik model

- Introduced a new `Qtech` model with a corresponding TTP template for parsing QTECH devices.
- Removed commented-out methods in the `Mikrotik` model to improve code clarity and maintainability.
This commit is contained in:
IluaAir
2026-02-25 17:00:36 +03:00
parent 8a126d8806
commit 77f539254c
3 changed files with 31 additions and 10 deletions

View File

@@ -7,16 +7,6 @@ from oxi.interfaces.base import BaseDevice
class Mikrotik(BaseDevice): class Mikrotik(BaseDevice):
template = "mikrotik.ttp" template = "mikrotik.ttp"
# def system(self) -> "System":
# systems = self._raw.get("system")
# return System(**systems)
# def interfaces(self) -> "Interfaces":
# return [Interfaces(**item) for item in self._raw.get("interfaces")]
# def vlans(self) -> list["Vlans"]:
# return [Vlans(**item) for item in self._raw.get("vlans")]
if __name__ == "__main__": if __name__ == "__main__":
print(os.path.abspath(os.curdir)) print(os.path.abspath(os.curdir))

View File

@@ -0,0 +1,7 @@
from oxi.interfaces import register_parser
from oxi.interfaces.base import BaseDevice
@register_parser(["QTECH"])
class Qtech(BaseDevice):
template = "qtech.ttp"

View File

@@ -0,0 +1,24 @@
<doc>
</doc>
<vars>
default_system = {
"model": "",
"serial_number": ""
}
</vars>
<group name="system">
! {{ model }} Series Software, Version {{ bootrom_ver }} Build {{ version }}, {{ ignore }}
! Serial num:{{ serial_number }}, {{ ignore }}
</group>
<group name="interfaces">
interface {{ interface }}
description {{ description | ORPHRASE }}
ip address {{ ip_address }} {{ netmask }}
</group>
<group name="vlans">
vlan {{ vlan_id }}
name {{ name }}
</group>