Yeah… I finally came to a conclusion to just disable Coturn and proceed with using the ejabberd stun/turn server. I’m lucky I have a domain name, so I went with How to set up ejabberd video & voice calling / ProcessOne
For anyone following this; once coturn is removed (deactivated) please also do not forget to:
a. disable Automatically manage audio/video call setup
in ejabberd configuration under plinth
b. run cockpit and activate ‘coturn-freedombox’ service in networking > firewall settings
c. if you have a router/modem make sure relevant ports are forwarded
d. I’m sharing my config below:
listen:
...
- port: 3478
transport: udp
module: ejabberd_stun
use_turn: true
turn_min_port: 49152
turn_max_port: 50175
turn_ip: <your_static_ip_goes_here>
auth_type: user
- port: 5349
transport: tcp
module: ejabberd_stun
use_turn: true
tls: true
turn_min_port: 49152
turn_max_port: 50175
ip: "::"
turn_ip: <your_static_ip_goes_here>
...
modules:
mod_disco: {}
...
mod_stun_disco:
credentials_lifetime: 1000d
secret: <whateveritis>
services:
- host: <your_domain.com>
port: 3478
type: stun
transport: tcp
restricted: false
- host: <your_domain.com>
port: 3478
type: stun
transport: udp
restricted: false
- host: <your_domain.com>
port: 3478
type: turn
transport: tcp
restricted: false
- host: <your_domain.com>
port: 3478
type: turn
transport: udp
restricted: false
...
Once ejabberd.yml is edited, dont forget to sudo systemctl restart ejabberd
Please note, my configuration works where I have a static IP and a domain name.
Hope it helps (anyone).
Regards,
Ged.