SLBR/listen.py

49 lines
1.3 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("./sendmsg.sh \"$(tail -n1 gamelog.txt)\"") # oh noooooo
print("sent message: " + message)
userisdead = False
deaduser = message.split(" ")[0]
print("Looking for user in userfile")
with open("users.txt") as userfile:
if deaduser in userfile.read():
userisdead = True
else:
print("could not find user in userfile, will not delete")
if userisdead:
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()