Skip to content

robbycw/pyctochat

Repository files navigation

Pycto-Chat

Pre-Reqs

  • Python 3.12.0 (Linux: python3)
  • aioquic 1.0.0 (install via pip o)
  • tk

Install Instructions for Windows

  1. Install Python 3.12.0.
    • Versions 3.10 and newer may work with this project, but have not been tested.
  2. Run pip install -r requirements.txt in your terminal to install the required packages.

Install Instructions for Linux

Simply run the install_reqs.sh script. If this fails, here is the manual process:

  1. Install Python 3.12.0.

    • Versions 3.10 and newer may work with this project, but have not been tested.
    • Many Linux distros may come with the python3 package. If not installed, run: sudo apt install python3
  2. Ensure that python3-aioquic and python3-tk are installed. sudo apt install python3-tk sudo apt install python3-aioquic

    If your linux distro does not have aioquic as part of its python3 package, you should be able to pull it from pip3. sudo apt install -y python3-pip pip3 install aioquic

Usage Instructions

The user can specify the SERVER_HOST and CLIENT_HOST in the PyctoChatConfiguration.py, used as the connection host by the PyctoChatServer and PyctoChatClient respectively.

Pyctochat uses the 4433 port to connect.

Once configured, the user can run the server or client with the following commands. py PyctoChatClient.py py PyctoChatServer.py

Logins are currently hardcoded in PyctoChatConfiguration.py. More can be added as desired. Log in with the following username/password credentials: robbyw: 1234 coolguy: 12345

The server can handle multiple clients, but additional logins need to be added to the hardcoded session to login mapping, sessions_to_user.

Note: Example SSL certs are provided, but being in a development state, the server is not enforcing the client to use them.

About

Python-based QUIC Server/Client application inspired by the Nintendo's PictoChat

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published