Telephones on diferent networks can't communicate? :(

Hello, i have only one problem that i need to solve. I hope that somebody can
help me.

I have three telephones that all connect to Asterisk PBX using SIP. Audio codec
used is g723 in pass thru mode.
First telephone have ip address 1.1.1.227
Second is on different network and have 10.1.10.200
And third have 10.1.20.200.

Asterisk server have 1.1.1.51 ip address. There are routes that connect all those networks using vpn tunnels.

Problem occurs when second and third telephone want to communicate. When one phone call other, phone on called side rings, and connection is established but one side can’t hear other and vice versa.

I must say that and second and third telephone can call first phone.

Does anyone knows what is problem? And maybe how to solve it.

Thanks in advance.

Could be firewall rules between the two problemic phones. You can try canreinvite=no to force Asterisk in the voice path and see if problem gone.

i tried but with no succsess :frowning: Any other sugestion?!?

Thanks.

post your conf files for the affected users. and a log file fragment.

sip.conf

[general]
canreinvite=no
disallow=all
allow=G723
allow=ulaw
allow=alaw
ontext=bogon-calls
bindport=5060
bindaddr=0.0.0.0                ; IP address to bind to (0.0.0.0 binds to all)

[2000]
host=1.1.1.227
type=friend
username=2000
;secret=123456
host=dynamic
context=from-sip
mailbox=100

[2001]
host=10.1.30.200
type=friend
username=2001
secret=123456
host=dynamic
context=from-sip
mailbox=101

[801]
host=10.1.17.200
type=friend
username=801
secret=123456
host=dynamic
context=from-sip
mailbox=801

extensions.conf

[general]
static = yes
writeprotect = no
clearglobalvars = no

[globals]
CONSOLE = Console/dsp  ; Console interface for demo

[bogon-calls]
exten => _.,1,Congestion

[from-sip]
exten => 2000,1,Dial(SIP/2000,20)
exten => 2000,2,Voicemail
exten => 2000,102,Voicemail
exten => 2000,103,Hangup

exten => 2001,1,Dial(SIP/2001,20)
exten => 2001,2,Voicemail
exten => 2001,102,Voicemail
exten => 2001,103,Hangup

exten => 801,1,VoiceMailMain()
exten => 801,1,Dial(SIP/801,20)
exten => 801,102,Voicemail
exten => 801,103,Hangup

exten => 2999,1,Voicemail

and log file sample:

[Mar  5 13:16:14] WARNING[8585] channel.c: Unable to find a codec translation path from g723 to gsm
[Mar  5 13:16:14] WARNING[8585] file.c: Unable to open vm-login (format 0x1 (g723)): No such file or directory
[Mar  5 13:16:14] WARNING[8585] app_voicemail.c: Couldn't stream login file
[Mar  5 13:16:25] WARNING[8585] pbx.c: Timeout, but no rule 't' in context 'from-sip'

It seems that asterisk try to translate trom g723 to gsm, but i set on phones
to use g723 codec. And also as you can see in sip.conf. I need to use g723
codec as my network is overloaded and i can’t afford codec that utilise more bandwidth.
g723 codec is used in pass thry mode, is it nessesary to allow codec to be
translated (to register g723 codec) or what?!?

if you are going to use a codec in pass-through, you’ll also need to have all your voice prompts in that codec. but, if Asterisk can’t encode in g723, it’s not going to be able to store any recorded message/file, nor can it convert to anything else.

i appreciate you want to save bandwidth, but can you use gsm instead ? your phones are the obvious limitation … perhaps you could use the bandwidth calc at asteriskguru.com to work out the bandwidth needed for your implementation.

Thanks ppl, but i solved problem. Actually i found workround. i am using g729 audio codec that i have licenced. All troubles was because stupid codec.

Thanks anyway