mirror of
https://github.com/FAUSheppy/ths-speech
synced 2025-12-06 19:41:38 +01:00
40 lines
1.1 KiB
Python
Executable File
40 lines
1.1 KiB
Python
Executable File
#!/usr/bin/python3
|
|
|
|
import socketserver
|
|
import server_interface
|
|
|
|
class AppRequestHandler(socketserver.BaseRequestHandler):
|
|
def __init__(self, request, client_address, server):
|
|
socketserver.BaseRequestHandler.__init__(self, request, client_address, server)
|
|
return
|
|
|
|
def setup(self):
|
|
return socketserver.BaseRequestHandler.setup(self)
|
|
|
|
def handle(self):
|
|
data = b""
|
|
while True:
|
|
tmp = self.request.recv(1024)
|
|
if not tmp or b"\nterminate\n" in tmp:
|
|
if len(tmp) > len("\nterminate\n"):
|
|
data += tmp[:-len("\nterminate\n")]
|
|
break
|
|
data += tmp
|
|
retval = server_interface.parse_request(data)
|
|
self.request.send(retval)
|
|
self.request.send(b"terminate\n")
|
|
print("Replied with: {}".format(retval))
|
|
return
|
|
|
|
def finish(self):
|
|
return socketserver.BaseRequestHandler.finish(self)
|
|
|
|
def start_server():
|
|
socketserver.TCPServer.allow_reuse_address = True
|
|
server = socketserver.TCPServer(("0.0.0.0",7100),AppRequestHandler)
|
|
server.serve_forever()
|
|
|
|
|
|
if __name__ == "__main__":
|
|
start_server()
|