View Source ExSDP (ExSDP v0.11.0)

This module represents the SDP Session.

Its fields directly correspond to those defined in RFC4566

Link to this section Summary

Link to this section Types

@type t() :: %ExSDP{
  attributes: [ExSDP.Attribute.t()],
  bandwidth: [ExSDP.Bandwidth.t()],
  connection_data: ExSDP.ConnectionData.t() | nil,
  email: binary() | nil,
  encryption: ExSDP.Encryption.t() | nil,
  media: [ExSDP.Media.t()],
  origin: ExSDP.Origin.t(),
  phone_number: binary() | nil,
  session_information: binary() | nil,
  session_name: binary(),
  time_repeats: [ExSDP.RepeatTimes.t()],
  time_zones_adjustments: ExSDP.Timezone.t() | nil,
  timing: ExSDP.Timing.t() | nil,
  uri: binary() | nil,
  version: non_neg_integer()
}

Link to this section Functions

Link to this function

add_attribute(sdp, attribute)

View Source
@spec add_attribute(sdp :: t(), attribute :: ExSDP.Attribute.t()) :: t()
Link to this function

add_attributes(sdp, attributes)

View Source
@spec add_attributes(sdp :: t(), attributes :: [ExSDP.Attribute.t()]) :: t()
@spec add_media(sdp :: t(), media :: ExSDP.Media.t() | [ExSDP.Media.t()]) :: t()
@spec new(
  version: non_neg_integer(),
  username: binary(),
  session_id: integer(),
  session_version: integer(),
  address: ExSDP.Address.t(),
  session_name: binary()
) :: t()

Returns new sdp struct.

By default:

  • version is 0
  • username, session_id, session_version and address - refer to Origin.new/1
  • session_name is -

See ExSDP.Parser.parse/1.

See ExSDP.Parser.parse!/1.