envio v0.6.0 Envio.Publisher behaviour View Source
Publisher helper scaffold.
Simply use Envio.Publisher
in the module that should publish messages.
The broadcast/2
function becomes available. If the optional channel:
argument is passed to use Envio.Publisher
, this channel is considered
the default one and broadcast/1
function appears to publish directly
to the default channel.
The ready-to-copy-paste example of usage would be:
defmodule MyPub do
use Envio.Publisher, channel: :main
def publish(channel, what), do: broadcast(channel, what)
def publish(what), do: broadcast(what)
end
All the subscribers of the particular channel the message was published
to, will either receive a message (in the case of
:pub_sub
)
or called back with the function provided on subscription
(:dispatch
).
The publisher does not wrap :via
functionality since it makes not much sense.
For how to subscribe, see Envio.Subscriber
.
Link to this section Summary
Link to this section Callbacks
The callback to publish stuff to Envio
.