A desktop application for WAN messaging with others, either through a global chat or direct messages. Has an external server, which can be hosted anywhere in the world, and users can download the client, connect with a server, and message other users connected to the same server. Built with Maven in Java, using Swing as a GUI framework. Features socket programming and multithreading.
-
Clone Repository:
Clone this repository to your server:
git clone https://github.com/siddhp1/Messenger.git
-
Place Server Jar and Credentials File:
Place the
server-1.0.jar
file in the same directory ascredentials.txt
. -
Port Forwarding:
Set up port forwarding for port
5000
on your router to the server's local IP address. This allows external connections to reach the messenger server:External Port: 5000 Internal Port: 5000 Protocol: TCP
-
Start the Server:
Run the server using the following command:
java -jar server-1.0.jar
Ensure the server is running and accessible externally.
-
Clone Repository:
Clone this repository to your client:
git clone https://github.com/siddhp1/Messenger.git
-
Place Client Jar and Config File:
Place the
client-1.0.jar
file in the same directory asconfig.txt
. -
Configure IP:
Set the IP address inside the config file to the public IPv4 address of the server. If the server is hosted on a local network (LAN) use the private IP address.
-
Start the Client:
Run the client using the following command:
java -jar client-1.0.jar
To use the application, create an account and login to the client. Clients are automatically connected to global chat when they successfully launch.
To directly message another user, click the refresh button and then click on the user you would like to message. Then type in the box and your message will be sent. The application has notifications and caching for messages received when the recipient is not focused on the sender's direct message.
Have fun messaging!
This project is licensed under the MIT License.