Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 

Repository files navigation

P2P Chat

A P2P chat application for a local network on Linux

Notes

Task

Functional requirements:

  • the application enables communication between two instances over a network
  • the user enters their name upon launch
  • messages are exchanged in real time * each message contains the sender’s name
  • the application runs until the user exits

Technical requirements:

  • language: C++ or Python
  • system: Linux
  • communication method and application architecture to be decided by the candidate
  • project placed in a GIT repository
  • the project should include a Readme or documentation in another format containing, amongst other things: build/run instructions and any limitations
  • the solution should be buildable/runable by a third party on two Linux machines.

Launching the application

all commands need to be executed in Linux terminal

If the git package is not installed, you must install it

On a Debian-based system

  sudo apt-get install git-all

On a Fedora system

dnf install git-all

Cloning the application locally

  git clone https://github.com/AlexFromPoland/Simple-P2PChat.git

Locate the project in the saved directory

  cd Simple-P2PChat

Running the application

  python3 P2Pchat.py

after launching the application:

  • you must enter the display name on the network
  • new peers on the network are automatically added to the chat

Tested

The application has been tested on both a Linux (Debian) virtual machine and on the Windows operating system, but only with a maximum of two connections

Application Limitations

  • The application works only on a local network where users are connected to the same network

  • No NAT traversal

  • The broadcast port (by default UDP port 5000) must be accessible

  • The chat port (by default TCP port 4000) must be accessible

Author

About

A simple P2P chat written in Python

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages