5d0a26ca7e
Removed dumb stuff. Added nicer logging.
37 lines
1.0 KiB
Python
37 lines
1.0 KiB
Python
"""
|
|
Creates hub for distributed IoT
|
|
|
|
@author hornetfighter515
|
|
@author Lachezar Todorov
|
|
"""
|
|
|
|
from websocket_server import WebsocketServer
|
|
import time
|
|
|
|
class Serv():
|
|
def __init__(self, host, port):
|
|
self.host = host
|
|
self.port = port
|
|
self.ws_s = WebsocketServer(host=host, port=port)
|
|
self.ws_s.set_fn_message_received(self.message_received)
|
|
self.ws_s.set_fn_new_client(self.new_client)
|
|
self.ws_s.run_forever()
|
|
|
|
def _log_prefix(self):
|
|
return str(time.time()) + ' [' + self.host + ':' + str(self.port) + '] '
|
|
|
|
def new_client(self, client, server):
|
|
print(self._log_prefix() + 'Client joined.')
|
|
|
|
def message_received(self, client, server, message):
|
|
# figure out how to identify clients...
|
|
print(self._log_prefix() + message )
|
|
|
|
|
|
if __name__ == "__main__":
|
|
import yaml
|
|
with open('config.yml', 'r') as f:
|
|
conf = yaml.safe_load(f)
|
|
ws_conf = conf['ws']
|
|
ext_server = Serv(ws_conf['ext']['url'], ws_conf['ext']['port'])
|