updates
This commit is contained in:
@@ -1,17 +1,23 @@
|
||||
import json
|
||||
import asyncio
|
||||
import sys, time
|
||||
from quart import Quart, websocket
|
||||
|
||||
peer_list = {}
|
||||
TRANSFERRED_DATA = 0
|
||||
|
||||
app = Quart(__name__)
|
||||
|
||||
def get_var_size(var):
|
||||
return sys.getsizeof(var) / (1024 * 1024)
|
||||
|
||||
@app.route("/")
|
||||
async def retmain():
|
||||
return f"Ready to relay\n"
|
||||
|
||||
@app.websocket("/ws")
|
||||
async def handle_websockets():
|
||||
global TRANSFERRED_DATA
|
||||
peer_group_id = None
|
||||
while True:
|
||||
try:
|
||||
@@ -25,9 +31,18 @@ async def handle_websockets():
|
||||
for peer in peer_list[peer_group_id]:
|
||||
if peer != websocket._get_current_object():
|
||||
await peer.send(message)
|
||||
TRANSFERRED_DATA = round(TRANSFERRED_DATA + get_var_size(message))
|
||||
except asyncio.exceptions.CancelledError:
|
||||
peer_list[peer_group_id].remove(websocket._get_current_object())
|
||||
if len(peer_list[peer_group_id]) < 1:
|
||||
peer_list.pop(peer_group_id)
|
||||
|
||||
@app.route("/stats")
|
||||
async def return_stats():
|
||||
process_start_time = time.process_time()
|
||||
current_time = time.time()
|
||||
uptime = current_time - process_start_time
|
||||
resp = f"<p><b>Uptime: </b>{uptime}</p><p><b>Transferred: </b>{TRANSFERRED_DATA} MB</p>"
|
||||
return resp
|
||||
|
||||
app.run()
|
||||
Reference in New Issue
Block a user