SLBR/listen.py

43 lines
1.2 KiB
Python
Executable File

#!/usr/bin/python3
import socket
import threading
import os # oh no
serversocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
serversocket.bind(("test.tilde.team", 9090))
serversocket.listen(5)
def clientthread(conn):
while True:
data = conn.recv(1024)
if not data:
break
message = data.decode("utf-8").replace("\n", "")
print("writing to log")
log = open("gamelog.txt", "a")
print(message, file=log)
log.close()
print("sending message")
os.system("tail -n1 gamelog.txt | ./sendmsg.sh") # oh noooooo
print("sent message: " + message)
userisdead = (
True
) # Eventually add a check to differentiate death messages from other messages
if userisdead:
deaduser = message.split(" ")[0]
print("eliminating " + deaduser)
os.system("./deluser.sh " + deaduser)
conn.close()
break
while True:
(clientsocket, address) = serversocket.accept()
print("Connected to " + address[0])
threading.Thread(target=clientthread, args=(clientsocket,)).start()
serversocket.close()