2424 in-dialog requests. These flags can be specified through the
2525 <xref linkend =" pv_rtp_relay" /> and/or
2626 <xref linkend =" pv_rtp_relay_peer" /> variables at initial INVITE,
27- and are then passed along with the RTP relay context until
28- the end of the call. They can also be modified during sequential
29- in-dialog requests.
27+ or through the absolute
28+ <xref linkend =" pv_rtp_relay_caller" /> and
29+ <xref linkend =" pv_rtp_relay_callee" /> variables, and are then
30+ passed along with the RTP relay context until the end of the call.
31+ They can also be modified during sequential in-dialog requests.
3032 </para >
3133 <para >
3234 This is not a stand-alone module that communicates directly with RTP relays,
@@ -791,8 +793,10 @@ route[rtp_relay_copy_delete] {
791793 </para >
792794 <para >
793795 The RTP session modifiers used are the ones provisioned through the
794- <xref linkend =" pv_rtp_relay" /> and/or
795- <xref linkend =" pv_rtp_relay_peer" /> variables.
796+ <xref linkend =" pv_rtp_relay" />,
797+ <xref linkend =" pv_rtp_relay_peer" />,
798+ <xref linkend =" pv_rtp_relay_caller" /> and/or
799+ <xref linkend =" pv_rtp_relay_callee" /> variables.
796800 </para >
797801 <para >
798802 The function can be called from the main request route - in this case
@@ -801,6 +805,18 @@ route[rtp_relay_copy_delete] {
801805 the branch where it was called, or that has an associated
802806 <emphasis >rtp_relay</emphasis > provisioned.
803807 </para >
808+ <para >
809+ When using the scope-relative <xref linkend =" pv_rtp_relay" />
810+ variable together with this function, note that its meaning depends
811+ on where it is used. In the main request route of the initial INVITE,
812+ <xref linkend =" pv_rtp_relay" /> refers to the caller and
813+ <xref linkend =" pv_rtp_relay_peer" /> refers to the callee. In a
814+ branch route, <xref linkend =" pv_rtp_relay" /> refers to the callee
815+ branch and <xref linkend =" pv_rtp_relay_peer" /> refers to the
816+ caller. To avoid depending on this route scope, use
817+ <xref linkend =" pv_rtp_relay_caller" /> and
818+ <xref linkend =" pv_rtp_relay_callee" /> instead.
819+ </para >
804820 <para >Meaning of the parameters is as follows:</para >
805821 <itemizedlist >
806822 <listitem >
@@ -1022,16 +1038,22 @@ $ opensips-cli -x mi rtp_relay:update_callid callid=1-3758963@127.0.0.1 \
10221038 <title ><varname >$rtp_relay</varname ></title >
10231039 <para >
10241040 Is used to provision the RTP back-end flags for the
1025- current peer - if used in the initial INVITE
1026- REQUEST route, it provisions the flags of the
1027- caller, whereas if used in the initial INVITE BRANCH/REPLY
1028- route, it provisions the callee's flags .
1041+ current peer. This variable is scope-relative: in the
1042+ main request route of the initial INVITE it provisions
1043+ the caller, while in the branch route or replies of the
1044+ initial INVITE transaction it provisions the callee branch .
10291045 </para >
10301046 <para >
10311047 For a sequential request, the variable represents the
10321048 flags used for the UAC that generated the request. When
10331049 used in a reply, the other UAC's flags are provisioned.
10341050 </para >
1051+ <para >
1052+ Use <xref linkend =" pv_rtp_relay_caller" /> and
1053+ <xref linkend =" pv_rtp_relay_callee" /> when the script
1054+ needs to address the caller or callee side directly,
1055+ independent of the route scope.
1056+ </para >
10351057 <para >
10361058 In an initial INVITE scope, the variable can be
10371059 provisioned per branch, by using the variable's index.
@@ -1080,6 +1102,40 @@ $ opensips-cli -x mi rtp_relay:update_callid callid=1-3758963@127.0.0.1 \
10801102 current one. All other fields are similar.
10811103 </para >
10821104 </section >
1105+ <section id =" pv_rtp_relay_caller" xreflabel =" $rtp_relay_caller" >
1106+ <title ><varname >$rtp_relay_caller</varname ></title >
1107+ <para >
1108+ This variable has the same parameters as
1109+ <xref linkend =" pv_rtp_relay" />, but always provisions
1110+ the caller side of the RTP relay session, independent of
1111+ the route where it is used.
1112+ </para >
1113+ <para >
1114+ In the main request route of the initial INVITE this is
1115+ equivalent to <xref linkend =" pv_rtp_relay" />. In a branch
1116+ route or in replies of the initial INVITE transaction this
1117+ is equivalent to <xref linkend =" pv_rtp_relay_peer" />.
1118+ After the dialog is established, it addresses the stored
1119+ caller leg directly.
1120+ </para >
1121+ </section >
1122+ <section id =" pv_rtp_relay_callee" xreflabel =" $rtp_relay_callee" >
1123+ <title ><varname >$rtp_relay_callee</varname ></title >
1124+ <para >
1125+ This variable has the same parameters as
1126+ <xref linkend =" pv_rtp_relay" />, but always provisions
1127+ the callee side of the RTP relay session, independent of
1128+ the route where it is used.
1129+ </para >
1130+ <para >
1131+ In the main request route of the initial INVITE this is
1132+ equivalent to <xref linkend =" pv_rtp_relay_peer" />. In a
1133+ branch route or in replies of the initial INVITE
1134+ transaction this is equivalent to
1135+ <xref linkend =" pv_rtp_relay" />. After the dialog is
1136+ established, it addresses the stored callee leg directly.
1137+ </para >
1138+ </section >
10831139 <section id =" pv_rtp_relay_ctx" xreflabel =" $rtp_relay_ctx" >
10841140 <title ><varname >$rtp_relay_ctx()</varname ></title >
10851141 <para >
@@ -1113,4 +1169,3 @@ $ opensips-cli -x mi rtp_relay:update_callid callid=1-3758963@127.0.0.1 \
11131169 </section >
11141170 </section >
11151171</chapter >
1116-
0 commit comments