Answered step by step
Verified Expert Solution
Question
1 Approved Answer
- Functionality You are to create a direct messenger program. In particular, the program will perform as follows: 1. It must behave as either a
- Functionality You are to create a direct messenger program. In particular, the program will perform as follows: 1. It must behave as either a client or a server, depending on the command line arguments supplied when started. 2. Specifically, the 1 option will direct the program to listen for connections, thereby acting as a server. If the 1 option is not present on the command line, your program will connect to a server, thereby acting as a client. 3. The port number must also be supplied as a command line argument. 4. Although your messenger may be hard-coded to connect only to localhost when acting as a client, you may include a server address on the command line as well, thereby permitting your messenger to connect between hosts. 5. The - l option, if used, should be placed immediately after the name of the program and before the port number and server address arguments. 6. Once the client and server messengers are connected, either end can send text messages to the other end. 7. Messages must be provided to the program using standard input. 8. Immediately after receiving a message, the program must output the message to standard output. 9. The program is terminated by first shutting down sending, then closing the socket. Once one end shuts down, the other side will receive a zero-length message, informing it of the shut down. The other side must then shut down immediately. - Usage - Usage as a server: - Python: \$> python messenger.py 1 port number> - Java: \$> java Messenger 1 - Usage as a client: - Python: - Java
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started