@startuml "Simple messaging" actor Sender as snd actor Receiver as rcv control Server as srv collections msg as msg queue msgch as msgch collections dvyrq as dvyrq collections dvy as dvy queue dvych as dvych rcv->srv: Listen srv->msgch: Subscribe snd->srv: Send message srv->msg: Store message srv->msgch: Notify listening receivers msgch->srv: Notify msg->srv: Grab message srv->rcv: Send message @enduml