This repository has been archived on 2022-03-12. You can view files and clone it, but cannot push or open issues or pull requests.
reValuate/old/Server/websocketServer.py
2021-02-05 00:57:22 +02:00

40 lines
1.1 KiB
Python

import asyncio
import websockets
import logging
from ratelimit import limits
import time
from databasefornow import *
logger = logging.getLogger('websockets')
logger.setLevel(logging.INFO)
logger.addHandler(logging.StreamHandler())
print("Ready")
# calls in number of requests
# period in seconds
@limits(calls=20, period=5)
async def serveStuff(websocket, path):
requestText = await websocket.recv()
print(requestText)
if requestText == "STATUSONCOIN":
file = open("currency.txt","r")
currencyStatus = file.readline()
file.close()
await websocket.send(currencyStatus)
# bad way to send balance to given user - FIX!!!
elif requestText == "STATUSONUSER":
name, balance = checkBalance("1")
print(name)
await websocket.send(f"Your balance is: {balance}")
await websocket.send(f"Welcome, {name}!")
else:
await websocket.send("We don't accept DoS")
start_server = websockets.serve(serveStuff, "localhost", 8765)
asyncio.get_event_loop().run_until_complete(start_server)
asyncio.get_event_loop().run_forever()