Tags for SDP Offer/Answer Application Interface. More...
#include <sofia-sip/su_tag.h>
#include <sofia-sip/sdp_tag.h>
Go to the source code of this file.
Defines | |
#define | SOATAG_ANY() |
Filter tag matching any soa tag. | |
#define | SOATAG_USER_SDP(x) |
Pass parsed user session description to soa session object. | |
#define | SOATAG_USER_SDP_STR(x) |
Pass unparsed user session description to soa session object. | |
#define | SOATAG_CAPS_SDP(x) |
Pass parsed capability description to soa session object. | |
#define | SOATAG_CAPS_SDP_STR(x) |
Pass capability description to soa session object. | |
#define | SOATAG_REMOTE_SDP(x) |
Pass parsed remote session description to soa session object. | |
#define | SOATAG_REMOTE_SDP_STR(x) |
Pass media description file name to the NUA stack. | |
#define | SOATAG_LOCAL_SDP(x) |
Get parsed local session description from soa session object. | |
#define | SOATAG_LOCAL_SDP_STR(x) |
Get local session description as a string from soa session object. | |
#define | SOATAG_AF(x) |
Preferred address family for media. | |
#define | SOATAG_ADDRESS(x) |
Pass media address. | |
#define | SOATAG_RTP_SELECT(x) |
When generating answer or second offer, soa can include all the supported codecs, only one codec, or only the codecs supported by both ends in the list of payload types on the m= line. | |
#define | SOATAG_AUDIO_AUX(x) |
The named audio codecs are considered auxiliary, that is, they are considered as common codec only when they are the only codec listed on the media line. | |
#define | SOATAG_RTP_SORT(x) |
When selecting the common codecs, soa can either select first local codec supported by remote end, or first remote codec supported by local codecs. | |
#define | SOATAG_RTP_MISMATCH(x) |
Accept media line even if the SDP negotation code determines that there are no common codecs between local and remote media. | |
#define | SOATAG_ACTIVE_AUDIO(x) |
Audio session status. | |
#define | SOATAG_ACTIVE_VIDEO(x) |
Video session status. | |
#define | SOATAG_ACTIVE_IMAGE(x) |
Active image session status. | |
#define | SOATAG_ACTIVE_CHAT(x) |
Active chat session status. | |
#define | SOATAG_SRTP_ENABLE(x) |
Enable SRTP. | |
#define | SOATAG_SRTP_CONFIDENTIALITY(x) |
Enable SRTP confidentiality negotiation. | |
#define | SOATAG_SRTP_INTEGRITY(x) |
Enable SRTP integrity protection. | |
#define | SOATAG_HOLD(x) |
Hold media stream or streams. | |
#define | SOATAG_ORDERED_USER(x) |
Take account strict ordering of user SDP m=lines. | |
#define | SOATAG_DELAYED_OFFER_ENABLE(x) |
Enable delayed offer. | |
Enumerations | |
enum | { SOA_ACTIVE_REJECTED, SOA_ACTIVE_DISABLED, SOA_ACTIVE_INACTIVE, SOA_ACTIVE_SENDONLY, SOA_ACTIVE_RECVONLY, SOA_ACTIVE_SENDRECV } |
Media states. More... | |
enum | soa_af { SOA_AF_ANY, SOA_AF_IP4_ONLY, SOA_AF_IP6_ONLY, SOA_AF_IP4_IP6, SOA_AF_IP6_IP4 } |
SOATAG_AF() parameter type. More... | |
enum | { SOA_RTP_SELECT_SINGLE, SOA_RTP_SELECT_COMMON, SOA_RTP_SELECT_ALL } |
Parameter type for SOATAG_RTP_SELECT(). More... | |
enum | { SOA_RTP_SORT_DEFAULT, SOA_RTP_SORT_LOCAL, SOA_RTP_SORT_REMOTE } |
Parameter type for SOATAG_RTP_SORT(). More... | |
Variables | |
tagi_t | soa_tag_list [] |
List of base SOA tags (defined in base SOA module). |
Tags for SDP Offer/Answer Application Interface.
#define SOATAG_ACTIVE_AUDIO | ( | x | ) |
Audio session status.
Corresponding tag taking reference parameter is SOATAG_ACTIVE_AUDIO_REF()
#define SOATAG_ACTIVE_CHAT | ( | x | ) |
Active chat session status.
Corresponding tag taking reference parameter is SOATAG_ACTIVE_CHAT_REF()
#define SOATAG_ACTIVE_IMAGE | ( | x | ) |
Active image session status.
Corresponding tag taking reference parameter is SOATAG_ACTIVE_IMAGE_REF()
#define SOATAG_ACTIVE_VIDEO | ( | x | ) |
Video session status.
Corresponding tag taking reference parameter is SOATAG_ACTIVE_VIDEO_REF()
#define SOATAG_ADDRESS | ( | x | ) |
Pass media address.
Corresponding tag taking reference parameter is SOATAG_ADDRESS_REF()
#define SOATAG_AF | ( | x | ) |
Preferred address family for media.
Corresponding tag taking reference parameter is SOATAG_AF_REF()
#define SOATAG_ANY | ( | ) |
Filter tag matching any soa tag.
Filter tag matching any SOATAG_*() item.
#define SOATAG_AUDIO_AUX | ( | x | ) |
The named audio codecs are considered auxiliary, that is, they are considered as common codec only when they are the only codec listed on the media line.
When generating answer or second offer soa includes auxiliary audio codecs in the list of codecs even if it is selecting only one codec or common codecs.
By default, there are no auxiliary audio codecs.
Corresponding tag taking a reference parameter is SOATAG_AUDIO_AUX_REF().
#define SOATAG_CAPS_SDP | ( | x | ) |
Pass parsed capability description to soa session object.
Corresponding tag taking reference parameter is SOATAG_CAPS_SDP_REF()
#define SOATAG_CAPS_SDP_STR | ( | x | ) |
Pass capability description to soa session object.
Corresponding tag taking reference parameter is SOATAG_CAPS_SDP_STR_REF()
#define SOATAG_DELAYED_OFFER_ENABLE | ( | x | ) |
Enable delayed offer.
!=0
enable 0
disableCorresponding tag taking reference parameter is SOATAG_DELAYED_OFFER_ENABLE_REF()
#define SOATAG_HOLD | ( | x | ) |
Hold media stream or streams.
The hold media stream will have the attribute a=sendonly (meaning that some hold announcements or pause music is sent to the held party but that the held party should not generate any media) or a=inactive (meaning that no media is sent).
When putting a SIP session on hold with sendonly, the application can include, e.g., SOATAG_HOLD("audio") or SOATAG_HOLD("video") or SOATAG_HOLD("audio, video") or SOATAG_HOLD("*") as soa parameters. When using inactive instead, the application should use "#" or "audio=inactive" instead. When resuming the session, application should include the tag SOATAG_HOLD(NULL).
Note that last SOATAG_HOLD() in the tag list will override the SOATAG_HOLD() tags before it.
Corresponding tag taking reference parameter is SOATAG_HOLD_REF()
#define SOATAG_LOCAL_SDP | ( | x | ) |
Get parsed local session description from soa session object.
Corresponding tag taking reference parameter is SOATAG_LOCAL_SDP_REF()
#define SOATAG_LOCAL_SDP_STR | ( | x | ) |
Get local session description as a string from soa session object.
Corresponding tag taking reference parameter is SOATAG_LOCAL_SDP_STR_REF()..
#define SOATAG_ORDERED_USER | ( | x | ) |
Take account strict ordering of user SDP m=lines.
If user SDP has been updated, the new media lines replace old ones even if the media type has been changed. This allows the application to replace m=audio with m=image/t38, for instance.
The default value is false and session are updated based on media types.
Corresponding tag taking a reference parameter is SOATAG_RTP_SELECT_REF().
#define SOATAG_REMOTE_SDP | ( | x | ) |
Pass parsed remote session description to soa session object.
Corresponding tag taking reference parameter is SOATAG_REMOTE_SDP_REF()
#define SOATAG_REMOTE_SDP_STR | ( | x | ) |
Pass media description file name to the NUA stack.
Pass name of media description file that contains media templates (normally mss.sdp) to the NUA stack.
Corresponding tag taking reference parameter is SOATAG_REMOTE_SDP_STR_REF()
#define SOATAG_RTP_MISMATCH | ( | x | ) |
Accept media line even if the SDP negotation code determines that there are no common codecs between local and remote media.
Normally, if the soa determines there are no common codecs, the media line is rejected.
Default value is 0.
Corresponding tag taking reference parameter is SOATAG_RTP_MISMATCH_REF()
#define SOATAG_RTP_SELECT | ( | x | ) |
When generating answer or second offer, soa can include all the supported codecs, only one codec, or only the codecs supported by both ends in the list of payload types on the m= line.
The default value is 0, only one RTP codec is selected. Note, however, that if there is no common codec (no local codec is supported by remote end), all the codecs are included in the list. In that case the media line is rejected, too, unless SOATAG_RTP_MISMATCH(1) has been used.
Corresponding tag taking a reference parameter is SOATAG_RTP_SELECT_REF().
#define SOATAG_RTP_SORT | ( | x | ) |
When selecting the common codecs, soa can either select first local codec supported by remote end, or first remote codec supported by local codecs.
The preference is indicated with ordering: the preferred codec is first and so on.
The auxiliary audio codecs (specified with SOATAG_AUDIO_AUX()) are listed after other codecs.
The default value is SOA_RTP_SORT_DEFAULT (0).
Corresponding tag taking reference parameter is SOATAG_RTP_SORT_REF()
#define SOATAG_SRTP_CONFIDENTIALITY | ( | x | ) |
Enable SRTP confidentiality negotiation.
!=
0 enable SRTP confidentiality 0
disable SRTP conidentialityCorresponding tag taking reference parameter is SOATAG_SRTP_CONFIDENTIALITY_REF()
#define SOATAG_SRTP_ENABLE | ( | x | ) |
Enable SRTP.
!=0
enable 0
disableCorresponding tag taking reference parameter is SOATAG_SRTP_ENABLE_REF()
#define SOATAG_SRTP_INTEGRITY | ( | x | ) |
Enable SRTP integrity protection.
!=0
enable 0
disableCorresponding tag taking reference parameter is SOATAG_SRTP_INTEGRITY_REF()
#define SOATAG_USER_SDP | ( | x | ) |
Pass parsed user session description to soa session object.
User SDP is used as basis for SDP Offer/Answer negotiation. It can be very minimal, consisting just sdp_session_t structures, sdp_media_t structures and sdp_rtpmap_t structures listing te supported media, used RTP port number, and RTP payload descriptions of supported codecs.
When generating the offer or answer the user SDP is augmented with the required SDP lines (v=, o=, t=, c=, a=rtpmap, etc.) as required. The complete offer or answer generated by soa is passed in SOATAG_LOCAL_SDP() (SOATAG_LOCAL_SDP_STR() contains same in text format).
Corresponding tag taking reference parameter is SOATAG_USER_SDP_REF()
#define SOATAG_USER_SDP_STR | ( | x | ) |
Pass unparsed user session description to soa session object.
User SDP is used as basis for SDP Offer/Answer negotiation. It can be very minimal, listing just m= lines with the port numbers and RTP payload numbers of supported codecs, like
SOATAG_USER_SDP_STR("m=audio 5004 RTP/AVP 0 8")
When generating the offer or answer the user SDP is augmented with the required SDP lines (v=, o=, t=, c=, a=rtpmap, etc.) as required. The complete offer or answer generated by soa is passed in SOATAG_LOCAL_SDP_STR() (SOATAG_LOCAL_SDP() contains session in parsed format).
Corresponding tag taking reference parameter is SOATAG_USER_SDP_STR_REF()
anonymous enum |
anonymous enum |
Parameter type for SOATAG_RTP_SELECT().
anonymous enum |
Parameter type for SOATAG_RTP_SORT().
enum soa_af |
SOATAG_AF() parameter type.
List of base SOA tags (defined in base SOA module).