Skip to content

Abdulrahman-Elfeky/async-chat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Asynchronous chat client and server from Programming Rust

To run the server, type:

$ cargo run --release --bin server -- localhost:8088

To run the client, type:

$ cargo run --release --bin client -- localhost:8088

The client supports only two commands:

  • join group - Join the group named group. If that group does not exist, it is created. The name of the group must not contain any spaces.

  • post group message - Post message to the chat group named group. The group name must not contain any spaces, but the message can.

There is no command to leave a group. There is no concept of a user name. To exit the client, hit ctrl-D on Linux or macOS, or ctrl-Z on Windows.

An example client session:

$ cargo run --release --bin client -- localhost:8088
    Finished release [optimized] target(s) in 0.04s
     Running `/home/jimb/rust/book/tests/chapters/asynchronous/target/release/client 'localhost:8088'`
Commands:
join GROUP
post GROUP MESSAGE...
Type Control-D (on Unix) or Control-Z (on Windows) to close the connection.
join dogs
post dogs I love dogs!
message posted to dogs: I love dogs!
message posted to dogs: Whaddya know, I do too!
message posted to dogs: Hello, dog lovers!
post dogs Hi!
message posted to dogs: Hi!
ctrl-D
$

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages