messagebus

A simple, multi-protocol, global pub/sub system

messagebus is a simple, minimal message broker supporting multiple protocols.
Messages published via one protocol will be received by all subscribers using any protocol.

Current characteristics
Current limits
Notes
As this broker supports multiple protocols, only a very minimal feature set is supported - subscription, publishing and unsubscription.
Only binary messages are supported
Unknown commands/requested features may be ignored/dropped or connections closed.
In the event of limits being exceeded, messages will be silently dropped.
Messages sent to a topic via one protocol will be receivable on all protocols subscribed to that topic.
Use a hard-to-guess topic name to ensure unauthorised clients don't subscribe.
Remember to handle reconnecting if the connection is dropped.

Supported protocols

Text

A plain text protocol. Suitable for telnet or netcat. Useful for experimenting and/or testing. Use Base64 for the payloads

Details
Status Beta
Host text.messagebus.org 20000
TLS No
Commands
SUB <topic>
UNSUB <topic>
SEND <topic> Base64 message to send
QUIT
Usage example
host1
echo SUB test | nc text.messagebus.org 20000
host2
echo SEND test $(echo -n Hello via text | base64) | nc text.messagebus.org 20000
JMS

A JMS broker, compatible with ActiveMQ 5.18

Details
Status Beta
Host jms.messagebus.org 61616
TLS Yes

Compatible with ActiveMQ 5.18.x

Usage example
Java example
Requires org.apache.activemq:activemq-client:5.18.6
MQTT5

An MQTT5 interface

Details
Status Beta
Host mqtt5.messagebus.org 8883
TLS Yes
Usage example
host1
mosquitto_sub -V 5 -L mqtts://mqtt5.messagebus.org:8883/test
host2
mosquitto_pub -V 5 -L mqtts://mqtt5.messagebus.org:8883/test -m "$(echo -n Hello via MQTT5| base64)"
Redis

A Redis interface

Details
Status Beta
Host redis.messagebus.org 6379
TLS Yes
Usage example
host1
echo SUBSCRIBE test | redis-cli --tls -h redis.messagebus.org
host2
echo PUBLISH test \"Hello via Redis\" | redis-cli --tls -h redis.messagebus.org
Websocket

A Websocket interface

Details
Status Beta
Host wss.messagebus.org 443
TLS Yes

URL is wss://wss.messagebus.org/websocket/<topic>

Usage example
Java example
Requires org.eclipse.jetty.websocket:jetty-websocket-jetty-client:12.0.16
Alternatively, you can use a web-based websocket client such as Piehost
SNS

An SNS send-only interface.

Details
Status Beta
Host sns.messagebus.org 443
TLS Yes
Usage example
AWS v2 CLI
aws --endpoint https://sns.messagebus.org/ sns publish --topic test --message $(echo -n Hello from SNS | base64)