[SR-Users] RTPEngine QoS statistics and leg labelling
Richard Fuchs
rfuchs at sipwise.com
Wed Feb 14 00:34:53 CET 2018
On 2018-02-13 06:16 PM, Alex Balashov wrote:
...
> A functional call ordinarily consists of an inbound and outbound RTP
> stream direction relative to the endpoints on both sides of RTPEngine.
>
> Inbound A --> server --> Outbound A
> Outbound B <-- server <--- Inbound B
>
> Where do the "global" stats situate themselves in relation to all this?
It's the min, max, and average between the two call legs (and other
contributing sources that may have been involved in the call).
> 2. I am given to understand that the statistics for the "A" and "B"
> sides of a bidirectional RTP stream can be separated based on an
> arbitrary label, using these PVs:
>
> https://kamailio.org/docs/modules/5.1.x/modules/rtpengine.html#rtpengine.p.mos_A_label_pv
>
> https://kamailio.org/docs/modules/5.1.x/modules/rtpengine.html#rtpengine.p.mos_B_label_pv
>
> How do I use it properly?
>
> My intuition was to try something like this:
>
> rtpengine_offer("replace-origin replace-session-connection ICE=remove label=outbound");
>
> And in the answer/manage handler on the SDP answer:
>
> rtpengine_answer("replace-origin replace-session-connection ICE=remove label=inbound");
>
> Later, when processing a BYE and obtaining subsequent media statistics,
> I tried this:
>
> if(check_route_param("proxy_media=yes")) {
> $avp(rtpengine_a_label) = 'outbound';
> $avp(rtpengine_b_label) = 'inbound';
> rtpengine_delete();
> route(LOG_RTPENGINE_STATS);
> }
That should actually work. You can check the actual data returned from
rtpengine to Kamailio by running rtpengine with log level 7, or use the
included rtpengine-ng-client script to run a "query" command against
rtpengine for a running call and see what comes out of it.
Cheers
More information about the sr-users
mailing list