It is a Python-based real-time communication system that supports both
📝 group text chatting and 🔊 group voice calling using a single centralized server.
The project is built using socket programming, threading, and PyAudio, and demonstrates core concepts of computer networks, concurrency, and real-time data streaming.
- Multiple clients can send and receive text messages
- Messages are delivered in real time
- Runs on the same server as the voice system
- Live microphone audio streaming
- Audio broadcast to all connected clients
- Supports multiple simultaneous users
- Accept or reject join requests
- List connected clients
- Kick a specific client
- Terminate the entire session
- Python 3
- Socket Programming (TCP)
- Threading
- PyAudio
- Real-Time Audio Streaming
- server # Central server (text + voice + admin controls)
- unified_client (client code for text and voice both)
- Report (Documentation of the project)
pip install pyaudio
⚠️ PyAudio installation may require additional system configuration depending on your OS.
Run the server:
>>>python server.py
Run the client code (optional : multiple devices)
>>>python unified_client.py
1.Enter your name
2.Enter server IP
Wait for server approval
if accepted:
Speak through your microphone to communicate or text based on the server running
🎮 Commands 🧑 Client Commands
leave → Exit the voice call gracefully
🖥️ Server Commands
list → Display all connected clients
kick → Remove a specific client by name
terminate → Disconnect all clients and shut down the session
🧠 Scope of the Project
This project focuses on:
TCP socket-based communication
Multi-client server handling using threads
Real-time audio data transmission
Server-side client management
Concurrent text and voice communication
🚫 Out of Scope (Current Version)
Graphical User Interface (GUI)
Audio or text encryption
User authentication system
Persistent chat history
🚀 Future Enhancements
GUI-based interface
Encrypted voice and text communication
Mute / unmute functionality
Multiple chat rooms or voice channels
User authentication and role management
###👩💻 Author
- 💼 LinkedIn: Fatima Shahid
- 🧠 LeetCode: FatimaaShahid
- ✍️ Medium: @fatimashahid781
- 📧 Email: fatimashahid781@gmail.com
- 📸 Instagram: @fatimas_abstract
⭐ If you like this project, consider giving it a star!