A fast message repeater for simple multiprocess communication.
Uses POSIX sockets to receive and distribute events.
Events are named packages of raw binary data.
Any application can listen for or dispatch events within.
They give you an easy way to count active connections.
Each connected client can ask to be counted in given counter
or check how many clients are in given counter.
Think of a namespace as isolated scope for events and counters.
Their purpose is to keep different applications from colliding.
- Runtime configuration:
- Permissions, in the form of users.
- Being able to move namespaces to different socket endpoints
- Multithreading
- Portability to different operating systems
For now, you have to compile it yourself with Code::Blocks on
system that supports POSIX sockets.
The project file is /WhiteBell.cbp
Currently you may need to edit:
- main.cpp - to switch between TCP or UNIX socket mode.
- src/config.cpp - to change your port or UNIX socket location.
You can configure it as systemd service, based on the example configuration in examples/whitebell.service
You need to compile and start the server application.
You can find implementation of client libraries in clients/
Currently there are versions for C++, php and ESP8266 (Arduino)
They share the same interface, with a slight differences.
You can check it in the wiki or browse the method names in the code.
Wiki will be added soon.
Probably. If you find one, please open an issue.
Licensed under MIT license, as stated in /LICENSE and on github.
This is my first open source project, and i will be happy if
you provide me feedback and/or popularize the software.