# `megaco_sdp` [🔗](https://github.com/v0idpwn/otp/blob/perf/multi-suspend/lib/megaco/src/engine/megaco_sdp.erl#L28) SDP utility module. This module contains various things related to SDP. ## Version note This module has existed in the megaco app for long time, but as of 27.0 its also documented. # `property_group` *since OTP 27.0* ```elixir -type property_group() :: [property_parm()]. ``` # `property_groups` *since OTP 27.0* ```elixir -type property_groups() :: [property_group()]. ``` # `property_parm` *since OTP 27.0* ```elixir -type property_parm() :: #'PropertyParm'{name :: term(), value :: term(), extraInfo :: term()}. ``` # `sdp` *since OTP 27.0* ```elixir -type sdp() :: sdp_o() | sdp_s() | sdp_i() | sdp_u() | sdp_e() | sdp_p() | sdp_c() | sdp_b() | sdp_k() | sdp_a() | sdp_a_rtpmap() | sdp_a_ptime() | sdp_z() | sdp_t() | sdp_r() | sdp_m(). ``` # `sdp_a` *since OTP 27.0* ```elixir -type sdp_a() :: #megaco_sdp_a{attribute :: term(), value :: term()}. ``` Session attribute. # `sdp_a_fmtp` *since OTP 27.0* ```elixir -type sdp_a_fmtp() :: #megaco_sdp_a_fmtp{format :: term(), param :: term()}. ``` # `sdp_a_ptime` *since OTP 27.0* ```elixir -type sdp_a_ptime() :: #megaco_sdp_a_ptime{packet_time :: term()}. ``` # `sdp_a_quality` *since OTP 27.0* ```elixir -type sdp_a_quality() :: #megaco_sdp_a_quality{quality :: term()}. ``` # `sdp_a_rtpmap` *since OTP 27.0* ```elixir -type sdp_a_rtpmap() :: #megaco_sdp_a_rtpmap{payload_type :: term(), encoding_name :: term(), clock_rate :: term(), encoding_parms :: term()}. ``` # `sdp_b` *since OTP 27.0* ```elixir -type sdp_b() :: #megaco_sdp_b{bwtype :: term(), bandwidth :: term()}. ``` Bandwidth information. # `sdp_c` *since OTP 27.0* ```elixir -type sdp_c() :: #megaco_sdp_c{network_type :: term(), address_type :: term(), connection_addr :: term()}. ``` Connection information. # `sdp_e` *since OTP 27.0* ```elixir -type sdp_e() :: #megaco_sdp_e{email :: term()}. ``` Email address. # `sdp_i` *since OTP 27.0* ```elixir -type sdp_i() :: #megaco_sdp_i{session_descriptor :: term()}. ``` Session information. # `sdp_k` *since OTP 27.0* ```elixir -type sdp_k() :: #megaco_sdp_k{method :: term(), encryption_key :: term()}. ``` Encryption key. # `sdp_m` *since OTP 27.0* ```elixir -type sdp_m() :: #megaco_sdp_m{media :: term(), port :: term(), num_ports :: term(), transport :: term(), fmt_list :: term()}. ``` Media name and transport address. # `sdp_o` *since OTP 27.0* ```elixir -type sdp_o() :: #megaco_sdp_o{user_name :: term(), session_id :: term(), version :: term(), network_type :: term(), address_type :: term(), address :: term()}. ``` Owner/creator and session identifier. # `sdp_p` *since OTP 27.0* ```elixir -type sdp_p() :: #megaco_sdp_p{phone_number :: term()}. ``` Phone number. # `sdp_property_group` *since OTP 27.0* ```elixir -type sdp_property_group() :: [sdp_property_parm()]. ``` # `sdp_property_groups` *since OTP 27.0* ```elixir -type sdp_property_groups() :: [sdp_property_group()]. ``` # `sdp_property_parm` *since OTP 27.0* ```elixir -type sdp_property_parm() :: sdp() | property_parm(). ``` # `sdp_r` *since OTP 27.0* ```elixir -type sdp_r() :: #megaco_sdp_r{repeat_interval :: term(), active_duration :: term(), list_of_offsets :: term()}. ``` Repeat times. # `sdp_s` *since OTP 27.0* ```elixir -type sdp_s() :: #megaco_sdp_s{name :: term()}. ``` Session name. # `sdp_t` *since OTP 27.0* ```elixir -type sdp_t() :: #megaco_sdp_t{start :: term(), stop :: term()}. ``` # `sdp_u` *since OTP 27.0* ```elixir -type sdp_u() :: #megaco_sdp_u{uri :: term()}. ``` URI of description. # `sdp_v` *since OTP 27.0* ```elixir -type sdp_v() :: #megaco_sdp_v{version :: term()}. ``` Protocol version. # `sdp_z` *since OTP 27.0* ```elixir -type sdp_z() :: #megaco_sdp_z{list_of_adjustments :: term()}. ``` Time zone adjustment. --- *Consult [api-reference.md](api-reference.md) for complete listing*