A hub is a place to which any number (possibly zero) of clients can connect a channel and send messages. The process in which the hub is created is responsible for listening to the messages clients send, and can send messages to an individual client, or broadcast a message to all clients.
Unless otherwise noted none of the below functions may be called in a process other than the one that created the hub.
listen
and listen_simple
start a loop that accepts connections from clients
that wish to open channels connected to the hub. listen_simple
returns the
sequence of messages sent by clients. listen
returns those, intermixed with
messages indicating when clients `Connect
and `Disconnect
.
listen
or listen_simple
should be called exactly once for a given hub.
Subsequent calls will raise.