Problem with echo application

Hi,

I have no idea whats going wrong. Its easy dialplan,

answer(200) 
echo 
hangup

If I leave dialplan as above there is no RTP packets but if I put playback command between answer and echo then its all work good. Please help, where is problem ?

Are you behind NAT? Some NAT implementations won’t allow ingress traffic until egress traffic occurs.

Nothing is going wrong in the dialplan. The problem will be with the channel driver and the external channel, and you haven’t provided information on what that channel driver is, let alone the debugging information that is showing what is going on.

Another possible SIP/RTP failure mode when there is no outbound media is that there is NAT present and the peer needs to use comedia rules, because the negotiated address or port is not the actual one it is seeing. Until it receives incoming media, it will send outgoing media to the negotiated address not the correct one.

yes, Asterisk is behind NAT

i’m using pjsip, comedia rules you said, so what? I should set symmetric_rtp to yes ?

The mechanism I was describing relates to the peer having the equivalent of that setting already and really needing it. Adjusting the Asterisk comedia settings would not help.

What settings do you have to ensure that Asterisk sends its external media address?

I configured transport and set external_media_address external_signalling_address and external_signalling_port and provide external/public IP address and set local_net to 127.0.0.1/255.255.255.255

Endpoint configured rtp_symmetric = yes, force_rport=yes

The point with comedia is that, if it is to work at all, one side must be able to get through without it. At the moment, it looks like Asterisk is the one (and probably doesn’t need it setting on its side (although that is a security, rather than a functional, issue). As such, whether it is priming a NAT router, or priming comedia, the only thing you can really do is to ensure that Asterisk is the first to send media.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.