openmedialibrary/oml/bandwidth.py

26 lines
575 B
Python

import state
from websocket import trigger_event
class Bandwidth(object):
up = 0
down = 0
_last = {}
def __init__(self):
self.update()
def update(self):
bandwidth = {'up': self.up, 'down': self.down}
if bandwidth != self._last:
trigger_event('bandwidth', bandwidth)
self._last = bandwidth
self.up = 0
self.down = 0
state.main.call_later(1, self.update)
def download(self, amount):
self.down += amount * 8
def upload(self, amount):
self.up += amount * 8