View Source ExSDP.RepeatTimes (ExSDP v1.0.0)

This module represents the field of SDP that specifies rebroadcasts of a session. Works directly in conjunction with timing t parameter.

  • active_duration - how long session will last
  • repeat_interval - interval of session rebroadcast
  • offsets - offset between scheduled rebroadcast

If start_time of t is set to today 3 pm, active_duration is set to 3h, repeat_interval is set to 14d and offsets are 0 4d then the session will be rebroadcasted today at 3 pm and on Thursday 3 pm every two week until end_time of param t.

For more details please see RFC4566 Section 5.10.



@type reason() ::
  | :interval_nan
  | :no_offsets
  | :malformed_repeat
  | {:invalid_offset | :invalid_unit, binary()}
@type t() :: %ExSDP.RepeatTimes{
  active_duration: non_neg_integer(),
  offsets: [non_neg_integer()],
  repeat_interval: non_neg_integer()


@spec parse(binary()) :: {:ok, t()} | {:error, reason()}