sippet v0.1.7 Sippet.Transport.Plug behaviour

A behaviour module for implementing Sippet network transport protocols.

A Sippet.Transport.Plug behavior module is started and supervised by the Sippet.Transport module at initialization.

Summary

Callbacks

Invoked to check if this connection is reliable (connection-oriented). If false then the Sippet.Transaction has to retransmit requests or handle request retransmissions

Invoked to send a message to the network. If any error occur while sending the message, and the transaction is not nil, the transaction should be informed so by calling error/2

Invoked to start listening for datagrams or connections

Callbacks

reliable?()
reliable?() :: boolean

Invoked to check if this connection is reliable (connection-oriented). If false then the Sippet.Transaction has to retransmit requests or handle request retransmissions.

send_message(message, remote_host, remote_port, transaction)
send_message(message :: Sippet.Message.t, remote_host :: binary, remote_port :: integer, transaction :: Sippet.Transaction.Client.t | Sippet.Transaction.Server.t | nil) ::
  :ok |
  {:error, reason :: term}

Invoked to send a message to the network. If any error occur while sending the message, and the transaction is not nil, the transaction should be informed so by calling error/2.

start_link()
start_link() :: GenServer.on_start

Invoked to start listening for datagrams or connections.