.
Project description
This program will implement distributed chat on virtual ring topology network. Furthermore this program will implement Chang-Roberts algorithm to achieve full ordering of messages.
Features: - Nodes can freely join into existing ring, based on information about one node (IP:port). First node will join with itself into ring. - Ring will recover from unexpected disconnect of one node at the time. - One node will be elected as central authority (leader), all messages will be then passed through leader. - Leader will be elected using Chang-Roberts algorithm. - GUI in Qt, it will also have CLI. - Encryption of messages.
How to build documentation
Create virtual environment using: python3.5 -m venv env
Activate virtual environment: . env/bin/activate
Install dependencies: python -m pip install -r requirements.txt
Change directory into docs: cd docs
Build documentation: make html
Open file docs/_build/html/index.html to view documentation.
How to run tests
Run (in installed and activated virtual environment):
python setup.py test
or
pytest -v tests/test_chat.py
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.