%docentities; ] >
Parameters
<varname>config</varname> (string) References iptrtpproxy.cfg, see iptrtpproxy_helper. Default value is /etc/iptrtpproxy.cfg. If only codec authorization is to be used then /dev/null may be used.
<varname>switchboard</varname> (string) References xt_RTPPROXY switchboard for usage by ser module. The format is: "name=" value * ( ";" name "=" value ) name = "aggregation" | "sip-addr-" The name is the switchboard name as declared in config and will be used by script functions and references switchboard. It's mandatory parameter. The special name * set values for all switchboards. The sip-addr is address used by iptrtpproxy_ser_param(by_sip_ip) to find a switchboard for particular connection. If not explicitly configured then RTP switchboard gate address are used for this feature. The aggregation enables to aggregate more switchboards in cluster and to widden bandwidth. Aggregation will take sip-addr from the first switchboard of its. Declare <varname>switchboard</varname> ... modparam("iptrtpproxy", "config", "/etc/iptrtpproxy.cfg"); modparam("iptrtpproxy", "switchboard", "name=my1;sip-addr-a=1.2.3.4;sip-addr-b=5.6.7.8"); modparam("iptrtpproxy", "switchboard", "name=my2;sip-addr-a=2.3.4.5;sip-addr-b=3.4.5.6;aggregation=my23"); modparam("iptrtpproxy", "switchboard", "name=my3;aggregation=my23"); modparam("iptrtpproxy", "switchboard", "name=*;aggregation=my123"); ...
<varname>rpc_heartbeat_timeout</varname> (int) Timeout in seconds used for rerequest remote RTP proxy via RPC command after preceeding error. In other words if a RPC server is unresponsive at the moment then next attempt will be forced after this timeout. Default value is 30.
<varname>hostname</varname> (string) The hostname used by RPC to identify machine where Ser is running to communicate which RTP proxy via local interface. Default value is taken from system hostname.
<varname>declare_codec</varname> (string) There are basic implicit codecs compiled in module, more codecs may be added by this parameter (one codec per modparam).
<varname>codec_set</varname> (string) Declares new codec set. Codecs are declared for each media type independently. The format is: "name=" value * ( ";" name "=" value ) name = "media_type" | "rights" | "codecs" | "max_streams" | ( "rtp" | "rtcp" ) "_" ( "bytes" | "packets" ) media_types = "audio" | "video" | "application" | "text" | "message" | "data" | "control" | "?" | "*" The name is the codec set name to be defined. The media_type belongs to type at m= SDP line. Question mark means "unknown media" type and asterisk "all media types". The max_streams defines how many streams (m= lines) is allowed per media type. The rights defines if particular codec is allowed 0, disallowed, i.e. will be removed if bit AND operation with remove_codec_mask is non-zero or its presence will be signallized by @iptrtpproxy.auth_rights (any other value). The codecs comma separated list of codecs. Previous media_type&rights will be applied. The rtp/rtcp_bytes/packets limits bandwidth per media_type (0 is unlimited). It will override bandwidth limited by iptrtpproxy_set_param("throttle_*"). Declare <varname>codec_set</varname> ... # enable all codecs, default state when codec is declared modparam("iptrtpproxy", "codec_set", "name=cs1;media_type=*;max_streams=9999;rights=0;codecs=*"); # allow only 2 audio and 1 video stream modparam("iptrtpproxy", "codec_set", "name=cs2;media_type=*;max_streams=0;media_type=audio;max_streams=2;media_type=video;max_streams=1"); # dtto, allow only a few audio and video codecs, GSM codec is allowed but signallized modparam("iptrtpproxy", "codec_set", "name=cs3;media_type=*;max_streams=0;rights=1;codecs=*;media_type=audio;max_streams=2;rights=0;codecs=PCMU,G729,G728,parityfec,telephone-events;rights=2;codecs=GSM;media_type=video;max_streams=1;rights=0;codecs=jpeg,parityfec"); # limit max. bandwidth for video¨ modparam("iptrtpproxy", "codec_set", "name=cs4;media_type=video;rtp_bytes=10000;rtcp_bytes=1000"); ...