forked from FreiFunkMuenster/ffmap-backend
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathnode.py
40 lines (34 loc) · 779 Bytes
/
node.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
class Node():
def __init__(self):
self.name = ""
self.id = ""
self.macs = set()
self.interfaces = dict()
self.flags = dict({
"online": False,
"gateway": False,
"client": False
})
self.gps = None
self.firmware = None
self.clientcount = 0
self.lastseen = 0
self.uptime = 0.0
self.tx_bytes = 0
self.rx_bytes = 0
self.loadavg = 0.0
self.autoupdater = False
self.branch = ""
self.hardware = ""
self.gateway = ""
def add_mac(self, mac):
mac = mac.lower()
if len(self.macs) == 0:
self.id = mac
self.macs.add(mac)
self.interfaces[mac] = Interface()
def __repr__(self):
return self.macs.__repr__()
class Interface():
def __init__(self):
self.vpn = False