socketsc#

PyPI - License PyPi - Version PyPI - Python Version PyPI - Downloads GitLab issues

Warning

This is a work in progress. The API is not stable and may change at any time.

socketsc is a Python library for creating socket clients and servers. It features an events management system that allows you to easily create and handle events both on the client and server side.

Example of a simple client:

import socketsc

server_address = ("localhost", 8080)
sock = socketsc.SocketClient(server_address, address_family=socketsc.AF_INET, sock_type=socketsc.SOCK_TCP)


def on_answer(conn: socketsc.SocketClient, data):
    print(f"Server responded with {data}")


def on_broadcast(conn: socketsc.SocketClient, data):
    print(f"Server broadcasted {data}")


sock.on("broadcast", on_broadcast)
sock.on("answer", on_answer)

sock.emit("question", input("Insert the question: "))

And a simple server:

import socketsc


server = socketsc.SocketServer(("localhost", 8080), address_family=socketsc.AF_INET, sock_type=socketsc.SOCK_TCP)

print("Server listening on port 8080")


def on_question(socket: socketsc.ServerSocketWrapper, data):
    socket.emit("answer", input("Insert answer: "))
    server.emit("broadcast", "Hello")


server.on("question", on_question)
server.serve()

Let’s get started!