aboutsummaryrefslogtreecommitdiffstats
path: root/mikrotik.py
diff options
context:
space:
mode:
Diffstat (limited to 'mikrotik.py')
-rw-r--r--mikrotik.py58
1 files changed, 0 insertions, 58 deletions
diff --git a/mikrotik.py b/mikrotik.py
deleted file mode 100644
index 90dc438..0000000
--- a/mikrotik.py
+++ /dev/null
@@ -1,58 +0,0 @@
-from dataclasses import dataclass, field
-import serial
-import devices
-import time
-import os
-import re
-
-@dataclass
-class MikroTikSerialDevice:
- device: str = os.environ["MIKROTIK_DEVICE"]
- user: str = os.environ["MIKROTIK_USER"]
- passwd: str = os.environ["MIKROTIK_PASS"]
-
- def __post_init__(self):
- self.interfaces = {}
- for i in os.environ["MIKROTIK_INTERFACES"].split(","):
- self.interfaces.__setitem__(*i.split(":"))
-
- def _get_poe_info(self, port):
- self.ser = serial.Serial(self.device, 115200, timeout=0.25)
-
- self._push_serial("")
- self._push_serial(self.user)
- self._push_serial(self.passwd)
- self._push_serial("/interface/ethernet/poe/monitor %s" % port)
- time.sleep(0.05)
- self.ser.write(bytes("q", 'ISO-8859-1'))
- out = self._read()
- self.ser.close()
-
- return self._post_out(out)
-
- def _push_serial(self, text):
- time.sleep(0.05)
- self.ser.write(bytes(text + "\r\n", 'ISO-8859-1'))
- time.sleep(0.05)
-
- def _read(self):
- return self.ser.readlines()
-
- def _post_out(self, out):
- d = {}
- for line in out:
- line = line.decode().strip()
- if line.startswith("poe"):
- d.__setitem__(*line.split(": "))
-
- return d
-
- def get_poes(self):
-
- print(self.interfaces)
-
-
-if __name__ == "__main__":
- mikrotik = MikroTikSerialDevice()
- print(mikrotik.get_poes())
-