sobomax 2008/11/04 22:10:08 CET
SER CVS Repository
Modified files:
modules/nathelper nathelper.c nathelper.h
Added files:
modules/nathelper rtpproxy_stream.c rtpproxy_stream.h
Log:
o Use recently extended U command to submit list of supported payload types
to the RTPproxy. Only do this if the RTPproxy supports revision 20081102
of the protocol.
o Introduce 4 new commands:
rtpproxy_stream2uac(prompt_name, count)
rtpproxy_stream2uas(prompt_name, count)
rtpproxy_stop_stream2uac()
rtpproxy_stop_stream2uas()
Those commands allow to stream prompt/announcement pre-encoded with
the makeann command from the RTPproxy distribution. The uac/uas
suffix selects who will hear the announcement relatively to tha current
transaction, so that for example invoking the rtpproxy_stream2uac()
in the request processing block on ACK transaction will play the
prompt to the UA that has generated original INVITE and ACK while
rtpproxy_stop_stream2uas() on 183 in reply processing block will
play the prompt to the UA that has generated 183.
Another possible application of this functionality is implementing music
on hold (MOH) functionality. When count is -1, the streaming will be in
loop indefinitely until the appropriate rtpproxy_stop_stream2xxx()
is issued.
route {
if (method == "INVITE") {
rtpproxy_offer();
if (detect_hold()) {
rtpproxy_stream2uas("music_on_hold", -1);
} else {
rtpproxy_stop_stream2uas();
};
};
}
In order to work correctly, functions require that the session in the
RTPproxy already exists. Also those functions don't alted SDP, so that
they are not substitute for calling rtpproxy_offer/rtpproxy_answer or
force_rtp_proxy.
Sponsored by: Telio Telecom AS
Revision Changes Path
1.132 +84 -26 sip_router/modules/nathelper/nathelper.c
http://cvs.berlios.de/cgi-bin/viewcvs.cgi/ser/sip_router/modules/nathelper/nathelper.c.diff?r1=1.131&r2=1.132
1.7 +5 -1 sip_router/modules/nathelper/nathelper.h
http://cvs.berlios.de/cgi-bin/viewcvs.cgi/ser/sip_router/modules/nathelper/nathelper.h.diff?r1=1.6&r2=1.7
1.1 +204 -0 sip_router/modules/nathelper/rtpproxy_stream.c (new)
http://cvs.berlios.de/cgi-bin/viewcvs.cgi/ser/sip_router/modules/nathelper/rtpproxy_stream.c?rev=1.1&content-type=text/plain
1.1 +37 -0 sip_router/modules/nathelper/rtpproxy_stream.h (new)
http://cvs.berlios.de/cgi-bin/viewcvs.cgi/ser/sip_router/modules/nathelper/rtpproxy_stream.h?rev=1.1&content-type=text/plain
_______________________________________________
Serdev mailing list
[email protected]
http://lists.iptel.org/mailman/listinfo/serdev