megaco_sdp.hrl

来自「OTP是开放电信平台的简称」· HRL 代码 · 共 1,147 行 · 第 1/4 页

HRL
1,147
字号
%%   time zone adjustment happens and the offset from the time when%%   the session was first scheduled.  The "z" field allows the sender%%   to specify a list of these adjustment times and offsets from the%%   base time.%%%%   An example might be:%%%%                      z=2882844526 -1h 2898848070 0%%%%   This specifies that at time 2882844526 the time base by which the%%   session's repeat times are calculated is shifted back by 1 hour,%%   and that at time 2898848070 the session's original time base is%%   restored. Adjustments are always relative to the specified start%%   time - they are not cumulative.%%%% o If a session is likely to last several years, it is expected that%%   the session announcement will be modified periodically rather%%   than transmit several years worth of adjustments in one%%   announcement.%% -record(megaco_sdp_t, {          start,                                % integer()          stop                                  % integer()         }).-record(megaco_sdp_r, {          repeat_interval,                      % string()          active_duration,                      % string()	  list_of_offsets                       % [ string() ]	 }       ).      -record(megaco_sdp_z, {	  list_of_adjustments                   % [ string() ]	 }       ).%% ===================================================================%% %% Encryption Keys%% %% k=<method>%% k=<method>:<encryption key>%%%% o The session description protocol may be used to convey encryption%%   keys.  A key field is permitted before the first media entry (in%%   which case it applies to all media in the session), or for each%%   media entry as required.%%%% o The format of keys and their usage is outside the scope of this%%   document, but see [3].%%%% o The method indicates the mechanism to be used to obtain a usable%%   key by external means, or from the encoded encryption key given.%%%%   The following methods are defined:%%%%    k=clear:<encryption key>%%      The encryption key (as described in [3] for  RTP  media  streams%%      under  the  AV  profile)  is  included untransformed in this key%%      field.%%%%    k=base64:<encoded encryption key>%%      The encryption key (as described in [3] for RTP media streams%%      under the AV profile) is included in this key field but has been%%      base64 encoded because it includes characters that are%%      prohibited in SDP.%%%%    k=uri:<URI to obtain key>%%      A Universal Resource Identifier as used by WWW clients is%%      included in this key field.  The URI refers to the data%%      containing the key, and may require additional authentication%%      before the key can be returned.  When a request is made to the%%      given URI, the MIME content-type of the reply specifies the%%      encoding for the key in the reply.  The key should not be%%      obtained until the user wishes to join the session to reduce%%      synchronisation of requests to the WWW server(s).%%%%    k=prompt%%      No key is included in this SDP description, but the session or%%      media stream referred to by this key field is encrypted.  The%%      user should be prompted for the key when attempting to join the%%      session, and this user-supplied key should then be used to%%      decrypt the media streams.%% -record(megaco_sdp_k, {	  method,            % clear | base64 | uri | prompt | string()	  encryption_key     % undefined | string()	 }       ).%% ===================================================================%% %% Attributes%% %% a=<attribute>%% a=<attribute>:<value>%%%% Attributes are the primary means for extending SDP.  Attributes may%% be defined to be used as "session-level" attributes, "media-level"%% attributes, or both.%%%% A media description may have any number of attributes ("a=" fields)%% which are media specific.  These are referred to as "media-level"%% attributes and add information about the media stream.  Attribute%% fields can also be added before the first media field; these%% "session-level" attributes convey additional information that%% applies to the conference as a whole rather than to individual%% media; an example might be the conference's floor control policy.%%%% Attribute fields may be of two forms:%%%% o property attributes.  A property attribute is simply of the form%%   "a=<flag>".  These are binary attributes, and the presence of the%%   attribute conveys that the attribute is a property of the%%   session.  An example might be "a=recvonly".%%%% o value attributes.  A value attribute is of the form%%   "a=<attribute>:<value>".  An example might be that a whiteboard%%   could have the value attribute "a=orient:landscape"%%%% Attribute interpretation depends on the media tool being invoked.%% Thus receivers of session descriptions should be configurable in%% their interpretation of announcements in general and of attributes%% in particular.%%%% Attribute names must be in the US-ASCII subset of ISO-10646/UTF-8.%%%% Attribute values are byte strings, and MAY use any byte value%% except 0x00 (Nul), 0x0A (LF), and 0x0D (CR). By default, attribute%% values are to be interpreted as in ISO-10646 character set with%% UTF-8 encoding.  Unlike other text fields, attribute values are NOT%% normally affected by the `charset' attribute as this would make%% comparisons against known values problematic.  However, when an%% attribute is defined, it can be defined to be charset-dependent, in%% which case it's value should be interpreted in the session charset%% rather than in ISO-10646.%%%% Attributes that will be commonly used can be registered with IANA%% (see Appendix B).  Unregistered attributes should begin with "X-"%% to prevent inadvertent collision with registered attributes.  In%% either case, if an attribute is received that is not understood, it%% should simply be ignored by the receiver.%% %% Suggested Attributes%% %% The following attributes are suggested.  Since application writers%% may add new attributes as they are required, this list is not%% exhaustive.%%%% a=cat:<category>%%   This attribute gives the dot-separated hierarchical category of%%   the session.  This is to enable a receiver to filter unwanted%%   sessions by category.  It would probably have been a compulsory%%   separate field, except for its experimental nature at this time.%%   It is a session-level attribute, and is not dependent on charset.%%%% a=keywds:<keywords>%%   Like the cat attribute, this is to assist identifying wanted%%   sessions at the receiver.  This allows a receiver to select%%   interesting session based on keywords describing the purpose of%%   the session.  It is a session-level attribute. It is a charset%%   dependent attribute, meaning that its value should be interpreted%%   in the charset specified for the session description if one is%%   specified, or by default in ISO 10646/UTF-8.%%%% a=tool:<name and version of tool>%%   This gives the name and version number of the tool used to create%%   the session description.  It is a session-level attribute, and is%%   not dependent on charset.%%%% a=ptime:<packet time>%%   This gives the length of time in milliseconds represented by the%%   media in a packet. This is probably only meaningful for audio%%   data.  It should not be necessary to know ptime to decode RTP or%%   vat audio, and it is intended as a recommendation for the%%   encoding/packetisation of audio.  It is a media attribute, and is%%   not dependent on charset.%% %% a=recvonly%%   This specifies that the tools should be started in receive-only%%   mode where applicable. It can be either a session or media%%   attribute, and is not dependent on charset.%%%% a=sendrecv%%   This specifies that the tools should be started in send and%%   receive mode.  This is necessary for interactive conferences with%%   tools such as wb which defaults to receive only mode. It can be%%   either a session or media attribute, and is not dependent on%%   charset.%%%% a=sendonly%%   This specifies that the tools should be started in send-only%%   mode.  An example may be where a different unicast address is to%%   be used for a traffic destination than for a traffic source. In%%   such a case, two media descriptions may be use, one sendonly and%%   one recvonly. It can be either a session or media attribute, but%%   would normally only be used as a media attribute, and is not%%   dependent on charset.%%%% a=orient:<whiteboard orientation>%%   Normally this is only used in a whiteboard media specification.%%   It specifies the orientation of a the whiteboard on the screen.%%   It is a media attribute. Permitted values are `portrait',%%   `landscape' and `seascape' (upside down landscape). It is not%%   dependent on charset%%%% a=type:<conference type>%%   This specifies the type of the conference.  Suggested values are%%   `broadcast', `meeting', `moderated', `test' and `H332'.%%   `recvonly' should be the default for `type:broadcast' sessions,%%   `type:meeting' should imply `sendrecv' and `type:moderated'%%   should indicate the use of a floor control tool and that the%%   media tools are started so as to "mute" new sites joining the%%   conference.%%%%   Specifying the attribute type:H332 indicates that this loosely%%   coupled session is part of a H.332 session as defined in the ITU%%   H.332 specification [10].  Media tools should be started%%   `recvonly'.%%%%   Specifying the attribute type:test is suggested as a hint that,%%   unless explicitly requested otherwise, receivers can safely avoid%%   displaying this session description to users.%%   %%   The type attribute is a session-level attribute, and is not%%   dependent on charset.%% %% a=charset:<character set>%%   This specifies the character set to be used to display the%%   session name and information data.  By default, the ISO-10646%%   character set in UTF-8 encoding is used. If a more compact%%   representation is required, other character sets may be used such%%   as ISO-8859-1 for Northern European languages.  In particular,%%   the ISO 8859-1 is specified with the following SDP attribute:%%   %%                         a=charset:ISO-8859-1%%   %%   This is a session-level attribute; if this attribute is present,%%   it must be before the first media field.  The charset specified%%   MUST be one of those registered with IANA, such as ISO-8859-1.%%   The character set identifier is a US-ASCII string and MUST be%%   compared against the IANA identifiers using a case-insensitive%%   comparison.  If the identifier is not recognised or not%%   supported, all strings that are affected by it SHOULD be regarded%%   as byte strings.%%   %%   Note that a character set specified MUST still prohibit the use%%   of bytes 0x00 (Nul), 0x0A (LF) and 0x0d (CR). Character sets%%   requiring the use of these characters MUST define a quoting%%   mechanism that prevents these bytes appearing within text fields.%%%% a=sdplang:<language tag>%%   This can be a session level attribute or a media level attribute.%%   As a session level attribute, it specifies the language for the%%   session description.  As a media level attribute, it specifies%%   the language for any media-level SDP information field associated%%   with that media.  Multiple sdplang attributes can be provided%%   either at session or media level if multiple languages in the%%   session description or media use multiple languages, in which%%   case the order of the attributes indicates the order of%%   importance of the various languages in the session or media from%%   most important to least important.%%   %%   In general, sending session descriptions consisting of multiple%%   languages should be discouraged.  Instead, multiple descriptions%%   should be sent describing the session, one in each language.%%   However this is not possible with all transport mechanisms, and%%   so multiple sdplang attributes are allowed although not%%   recommended.%%   %%   The sdplang attribute value must be a single RFC 1766 language%%   tag in US-ASCII.  It is not dependent on the charset attribute.%%   An sdplang attribute SHOULD be specified when a session is of%%   sufficient scope to cross geographic boundaries where the%%   language of recipients cannot be assumed, or where the session is%%   in a different language from the locally assumed norm.%% %% a=lang:<language tag>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?