diff options
Diffstat (limited to 'mgw/MGCP_Test.ttcn')
-rw-r--r-- | mgw/MGCP_Test.ttcn | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/mgw/MGCP_Test.ttcn b/mgw/MGCP_Test.ttcn index 7ddb6ea6..41def037 100644 --- a/mgw/MGCP_Test.ttcn +++ b/mgw/MGCP_Test.ttcn @@ -2012,7 +2012,7 @@ module MGCP_Test { f_init(ep); - /* from us to MGW */ + /* Connection #0 (Bidirectional) */ flow[0] := valueof(t_RtpFlow(mp_local_ip, mp_remote_ip, 112, "AMR/8000")); /* bind local RTP emulation sockets */ flow[0].em.portnr := 10000; @@ -2023,7 +2023,7 @@ module MGCP_Test { flow[0].fmtp := fmtp0; f_flow_create(RTPEM[0], ep, call_id, "sendrecv", flow[0]); - /* from MGW back to us */ + /* Connection #1 (Bidirectional) */ flow[1] := valueof(t_RtpFlow(mp_local_ip, mp_remote_ip, 112, "AMR/8000")); flow[1].em.portnr := 20000; flow[1].rtp_cfg := c_RtpemDefaultCfg; @@ -2033,17 +2033,31 @@ module MGCP_Test { flow[1].fmtp := fmtp1; f_flow_create(RTPEM[1], ep, call_id, "sendrecv", flow[1]); - f_rtpem_mode(RTPEM[1], RTPEM_MODE_BIDIR); - f_rtpem_mode(RTPEM[0], RTPEM_MODE_BIDIR); + /* Send RTP packets to connection #0, receive on connection #1 */ + f_rtpem_mode(RTPEM[1], RTPEM_MODE_RXONLY); + f_sleep(0.5); + f_rtpem_mode(RTPEM[0], RTPEM_MODE_TXONLY); + f_sleep(1.0); + f_rtpem_mode(RTPEM[0], RTPEM_MODE_NONE); + f_sleep(0.5); + f_rtpem_mode(RTPEM[1], RTPEM_MODE_NONE); + /* Send RTP packets to connection #1, receive on connection #0 */ + f_rtpem_mode(RTPEM[0], RTPEM_MODE_RXONLY); + f_sleep(0.5); + f_rtpem_mode(RTPEM[1], RTPEM_MODE_TXONLY); f_sleep(1.0); + f_rtpem_mode(RTPEM[1], RTPEM_MODE_NONE); + f_sleep(0.5); + f_rtpem_mode(RTPEM[0], RTPEM_MODE_NONE); + /* Remove RTP flows and check statistics */ f_flow_delete(RTPEM[0]); f_flow_delete(RTPEM[1], ep, call_id); + /* Check for errors */ stats[0] := f_rtpem_stats_get(RTPEM[0]); stats[1] := f_rtpem_stats_get(RTPEM[1]); - f_rtpem_stats_err_check(stats[0]); f_rtpem_stats_err_check(stats[1]); |