gtk-app/server/server.py
Andrew Gundersen 7cc23bdabe python server
2021-01-18 11:43:46 -06:00

50 lines
No EOL
1.3 KiB
Python

import time
import socket
import threading
import packages
# port settings
IP = '127.0.0.1'
PORT = 1040
class Server(pkgs.PackageHandler):
def __init__(self, ip, port):
self.server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# Socket settings
self.server_socket.setsockopt(
socket.SOL_SOCKET,
socket.SO_REUSEADDR,
1)
self.server_socket.bind((ip, port))
self.server_socket.listen()
print(f'Listening for connections on {ip}:{port}')
self.server_loop()
def server_loop(self):
while True:
client_socket, client_address = self.server_socket.accept()
print(f"Accepted new connection from {client_address}")
package = self.pull(client_socket)
if package:
if package['type'] != 'con':
continue
user_id = int(package['data'].decode('ascii'))
print(f"Received user ID: {user_id}")
self.push(client_socket, "Hello from the Server!")
while True:
self.push(client_socket, "Connection still alive!")
time.sleep(2)
if __name__ == '__main__':
server = Server(IP, PORT)