Reference no: EM131243028
Your task is to develop a chat tool that should consist of a server and a client component. The server should allow clients to
- create chat-rooms
- list all existing rooms
- join existing chat-rooms
- leave a chat-room
Once created, chat-rooms store all data (messages sent to the room) for as long as they exist. If a chat-room has not been used for more than 7 days, it should be destroyed. The server should support up to 10 concurrent clients.
The client should provide an interface that enables a user to
- create a room,
- list the existing rooms,
- join one or more existing chat-rooms
- send messages to chat-rooms
- leave one or more rooms
If the user connects to a chat-room all previously sent messages of that room should be displayed. New messages sent by the user or other connected users should be shown to the user with a maximum delay of 1.5 seconds. To simplify the development of the client software, you can request the user to provide the location and name of the server object.
(a) Implement the chat-room application (client & server) using Go and TCP Sockets.
(b) Implement the chat-room application (client & server) using Go and RPC.
(c) Implement the chat-room application (client & server) using Java and CORBA.
(d) Implement the web services as SOAP web services.
(e) Implement the web services as REST web services.