|Martin Brodbeck 949184d708
m32chat is a simple chat server for the Morserino.
It is (more or less) a reimplementation of the Python2.7 script m32_chat_server.
The m32chat service listens on port 7373 for UDP messages and rebroadcasts them to the other subscribed Morserino clients.
To subscribe to the service, just send the message
hi from your Morserino. The server will respond with
:hi and the number of clients connected (1 means you're alone).
If a client is inactive for a certain time, it will be removed from the subscriber list. The server then sends the message
:bye to this client. You can also force the removal by sending the message
- Periodically, empty UDP packets are being sent to avoid NAT timeouts.
- The number of clients is restricted (to avoid abuse).
- A small delay is introduced (to avoid abuse).
For compiling m32chat, you only need a recent Rust toolchain. rustup.rs could help you with it.
- After getting the source code, you can compile it with
cargo build --release.
- Copy the binary for example to
- You can use the systemd template for m32chat and adapt it to your needs (i.e. customize the user name under which the service should run).
Setting the environment variable
RUST_LOG=Debug will give you some debug messages.