One way sound from Asterisk

I create on angular application basically it is used Webrtc and second end I install one application for MIZUDROID in android application my problem is that when I call from chrome borwser using angular applcation call is going on and perfectly I can hear sound from browser to Andorid appp but I can not hear sound from Android app to browser. Any one suggest how I can remove this solved. I have already public ip and here my pjsip.conf, extension.conf,rtp.conf,http.conf and modules.conf what setting I missed please suggest

  1. pjsip.conf
    =============

[transport-wss]
type=transport
protocol=wss
bind=0.0.0.0

[199]
type=endpoint
aors=199
auth=199
use_avpf=yes
media_encryption=dtls
dtls_ca_file=/etc/asterisk/keys/asterisk.pem
dtls_cert_file=/etc/asterisk/keys/asterisk.pem
dtls_verify=fingerprint
dtls_setup=actpass
ice_support=yes
media_use_received_transport=yes
rtcp_mux=yes
context=helloworld2
disallow=all
allow=alaw,ulaw
allow=opus
;device=hw:0,0
;direct_media=no
;rtp_symmetric=yes
;force_rport=yes
;rewrite_contact=yes
;external_media_address=35.244.39.248
;external_signaling_address=35.244.39.248

[199]
type=auth
auth_type=userpass
username=199
password=test

[199]
type=aor
max_contacts=1
remove_existing=yes

[transport-udp]
type=transport
protocol=udp
bind=0.0.0.0

[3001]
type=endpoint
context=helloworld
disallow=all
allow=ulaw
auth=3001
aors=3001

[3001]
type=auth
auth_type=userpass
password=3001pass
username=3001

[3001]
type=aor
max_contacts=1
remove_existing=yes

[3002]
type=endpoint
context=helloworld2
disallow=all
allow=ulaw
auth=3002
aors=3002

[3002]
type=auth
auth_type=userpass
password=3002pass
username=3002

[3002]
type=aor
max_contacts=1
remove_existing=yes

  1. extensions.conf
    =================
    [helloworld]
    exten => _X.,1,NoOp(${EXTEN})
    same => n,Playback(hello-world)
    same => n,Hangup()

[helloworld2]
exten => _X.,1,NoOp(${EXTEN})
same => n,Playback(hello-world)
same => n,Dial(PJSIP/${EXTEN},20)
same => n,Read(Digits,)
same => n,Playback(you-entered)
same => n,SayNumber(${Digits})

  1. rtp.conf
    ============
    [general]
    rtpstart=10000
    rtpend=20000
    icesupport=true
    stunaddr:19302=stun.l.google.com

4.http.conf

[general]
enabled=yes
bindaddr=0.0.0.0
bindport=8088
tlsenable=yes
tlsbindaddr=0.0.0.0:8089
tlscertfile=/etc/asterisk/keys/asterisk.pem

  1. modules.conf
    ======================
    ;
    ; Asterisk configuration file
    ;
    ; Module Loader configuration file
    ;

[modules]
autoload=yes
;
; Any modules that need to be loaded before the Asterisk core has been
; initialized (just after the logger has been initialized) can be loaded
; using ‘preload’. This will frequently be needed if you wish to map all
; module configuration files into Realtime storage, since the Realtime
; driver will need to be loaded before the modules using those configuration
; files are initialized.
;
; An example of loading ODBC support would be:
;preload => res_odbc.so
;preload => res_config_odbc.so
;
; If you want, load the GTK console right away.
; Don’t load the KDE console since
; it’s not as sophisticated right now.
;
noload => pbx_gtkconsole.so
;load => pbx_gtkconsole.so
noload => pbx_kdeconsole.so
;
; Intercom application is obsoleted by
; chan_oss. Don’t load it.
;
noload => app_intercom.so
;
; The ‘modem’ channel driver and its subdrivers are
; obsolete, don’t load them.
;
noload => chan_modem.so
noload => chan_modem_aopen.so
noload => chan_modem_bestdata.so
noload => chan_modem_i4l.so
;
; Comment this out (after installing CAPI middleware and hardware
; drivers) if you have CAPI-able hardware and wish to use it in
; Asterisk.
;
noload => chan_capi.so
;
load => res_musiconhold.so
;
; Do not load load local channel drivers (using the system speaker) by default,
; they are not used in most installations and might block the sound hardware
;
noload => chan_alsa.so
noload => chan_console.so
noload => chan_oss.so
;
; Disable CDR logging to SQLite by default since it writes unconditionally to
; cdr.db without a way to rotate it.
;
noload => cdr_sqlite.so
;
; These conflict with app_directory.so and each other.
noload => app_directory_odbc.so
;
; Enable these if you want to configure Asterisk in a database
;
noload => res_config_odbc.so
noload => res_config_pgsql.so
;
; Module names listed in “global” section will have symbols globally
; exported to modules loaded after them.
;
;[global]
noload => chan_sip.so

I have already public ip purchased and my private ip is 10.111.2.21

Please suggest any way for solved this issue. and I am using Asterisk 18.10.0 this version.

I’m not the master of puppets, but try adding to [transport-wss] (type=transport section) :
external_media_address=35.244.39.248
external_signaling_address=35.244.39.248

make sure to use your Asterisk public IP, you can use the command : curl ipecho.net/plain on your Asterisk server’s terminal

you may also try editing /etc/asterisk/res_stun_monitor.conf and enable STUN with the line

stunaddr = stunserver2024.stunprotocol.org

reload your Asterisk server and check your call again; hopefully that will help, good luck :slight_smile:

I am very happy for your prompt respose
I am trying with your sollution but not got succedd

What investigation have you done? Have you looked at the ICE negotiation with WebRTC to see the path? Have you done a packet capture to see where traffic is going?

I should also point out you are using a third party patch to Asterisk which I’ve seen others report causing audio failure.

Hello Guys,
Thanks your support. Isssue has been resolved. No issue with asteisk server configuration. But Issue was the configuration of Angular Code. I am very happpy and glad all person which give me prompt response and help.

Now I need to implement reverse proses for ex:
From Android App to Browser in this case when I call from Android app it give me error
"missing sdp rtpmap for dyanmic payload type "
Any one give me suggestion what I missed here…
Please
Waiting your positive and prompt response.

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