Client-server application for real-time messaging
- Authorization;
- Registration of new users;
- All registered users have "General chat" by default;
- Exchange of messages between users in chats;
- Create a group chat;
- Create a private dialog with the selected user;
- Add users to the group chat;
- View additional information about users;
- Exit from the chat;
- Exit from the account;
- The database stores:
- User credentials;
- User chat list;
- User messages;
- Use encryption for passwords and all kind of messages.
- Check for existing user login at registration step.
- Also user is not able to sign in again from the same device, if he is already online.
- Data transmission over the network in Json;
- Encryption of transmitted data;
- User interface was made with material design;
- Processing of user input when registering, authorizing and creating chats;
- Notification of a new message in the chat, adding to the group or a private dialogue;
- Local storage of the chat list and history of private user chats;
To build IMessenger, run the following file:
build.cmd
To run IMessenger, run the following file:
run.cmd
NOTE : You need to set JAVA_HOME environment variable to point to Java 1.8 directory.
NOTE : IMessenger requires Java 1.8u60 and above.
To generate all needed db tables you have to run the following file
init.sql
Path to file ./resources/db.properties
For example:
user = Paul
password = someSuperSecretCode
dburl = jdbc:oracle:thin:@//localhost:1521/XE
./server/buildServer.bat
./server/runServer.bat