Packages
sippet
1.0.11
1.0.16
1.0.15
1.0.14
1.0.13
1.0.12
1.0.11
1.0.10
1.0.9
1.0.8
1.0.7
1.0.6
1.0.5
1.0.4
1.0.3
1.0.2
1.0.1
1.0.0
0.6.4
0.6.3
0.6.2
0.6.1
0.6.0
0.5.9
0.5.8
0.5.7
0.5.6
0.5.5
0.5.4
0.5.3
0.5.2
0.5.1
0.5.0
0.4.9
0.4.8
0.4.7
0.4.6
0.4.5
0.4.4
0.4.3
0.4.2
0.4.1
0.4.0
0.3.9
0.3.8
0.3.7
0.3.6
0.3.5
0.3.4
0.3.3
0.3.2
0.3.1
0.3.0
0.2.9
0.2.8
0.2.7
0.2.6
0.2.5
0.2.4
0.2.3
0.2.2
0.2.1
0.2.0
0.1.9
0.1.8
0.1.7
0.1.6
0.1.5
0.1.4
0.1.3
0.1.2
0.1.1
0.1.0
An Elixir Session Initiation Protocol (SIP) stack.
Current section
Files
Jump to
Current section
Files
lib/sippet/transactions/client/state.ex
defmodule Sippet.Transactions.Client.State do
@moduledoc false
alias Sippet.Message, as: Message
alias Sippet.Message.RequestLine, as: RequestLine
alias Sippet.Transactions, as: Transactions
@typedoc "The client transaction key"
@type key :: Transactions.Client.Key.t()
@type t :: [
request: Message.request(),
key: key,
sippet: atom,
extras: %{}
]
defstruct request: nil,
key: nil,
sippet: nil,
extras: %{}
@doc """
Creates the client transaction state.
"""
def new(
%Message{start_line: %RequestLine{}} = outgoing_request,
%Transactions.Client.Key{} = key,
sippet
)
when is_atom(sippet) do
%__MODULE__{
request: outgoing_request,
key: key,
sippet: sippet
}
end
end