Skip to content

Computer Network Project - Chat Application Using P2P Model

Notifications You must be signed in to change notification settings

huycse31501/ChatAppP2P

Repository files navigation

ChatAppP2P

Computer Network Project - Chat Application Using P2P Model

All Function:

  1. Sign Up/ Sign In (Client - Server)
  2. Add Friend (Client - Server)
  3. Chat (P2P)
  4. Send Files (P2P)

I'm using Tkinter and Websocket in Python for this application.

You should change the database in server file to be able to use it.

Remember to CD to the directory which has my project.

1.Change the admin database in all of my files, run my SQL file Here: image

  1. Run server.py

and let the server open, don't turn it off

  1. Run testasyncserver.py This is my client file, though it could be a server file too cause I use a P2P Hybrid model.

Simple Explanation: Peers Sign In/SignUp/AddFriend with the support of server. Peers can find each other by the help of server but make a connection to chat with each other directly (P2P), which means the message go directly between 2 peers, not going through server

Overview:

My Sign In Interface: image

My Sign Up Interface: image

My Friendlist Interface: image (Because a2 is offline, the chat button is disabled)

When a2 is online, both can chat with each other. image

My addfriend Interface: image

If friend is not in account database, its failed image

A little bit of demo of my simple database (when using add friends, the fuser table got updated) you can check mysql file in this repository to see DDL files. image

Chat Interface: image

SendFile Interface: image

The file is indeed get there image

Thank you for visiting my repository.

About

Computer Network Project - Chat Application Using P2P Model

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages