Talk calls only work when connected to local network - coturn TURN server not working

Support intro

Sorry to hear you’re facing problems :slightly_frowning_face:

help.nextcloud.com is for home/non-enterprise users. If you’re running a business, paid support can be accessed via portal.nextcloud.com where we can ensure your business keeps running smoothly.

In order to help you as quickly as possible, before clicking Create Topic please provide as much of the below as you can. Feel free to use a pastebin service for logs, otherwise either indent short log examples with four spaces:

example

Or for longer, use three backticks above and below the code snippet:

longer
example
here

Some or all of the below information will be requested if it isn’t supplied; for fastest response please provide as much as you can :heart:

Nextcloud version (eg, 20.0.5): Nextcloud Hub 3 (25.0.2)
Operating system and version (eg, Ubuntu 20.04): Lubuntu 22.04

The issue you are facing:

  • Talk calls only work when connected to local network.
    I think I’ve successfully set up a coturn TURN server however Talk calls still only work when connected to the local network. During a call (audio or video) I am getting a message that there are problems.

There is a green checkmark when I run the TURN server check from the web interface (domain and secret not shown due to privacy):

The coturn TURN server is hosted on the same machine as the NextCloud instance.

Also, when I run a test with “turnutils_uclient” from a client connected to external internet the test seems to be successful. So everything appears to me to be set up successfully in terms of coturn
Details of the test are attached in the following pastebin (secret, domain name and external IP’s not shown due to privacy):
https://pastebin.com/FZ87SeRb

Is this the first time you’ve seen this error? Yes

Steps to replicate it:

  1. In Nextcloud on local network start the Talk app. Second client is from Talk app on smartphone connected to mobile internet. (Also tried a call between Talk clients on two different smarphones each connected to it’s own mobile internet connection)
  2. Initiate an audio or video call
  3. Will get a message that there are issues and the call will not connect
    (4. Calls work perfectly fine if the clients are in the local network where Nextcloud is configured)

Is there something I’ve missed?

Thank you,
Adrian

I was able to make it work on my own. I just changed the “turns:only” option in the Nextcloud web interface to “turn:only”. Now voice and video calls work via coTURN when clients are outside the local network.
I guess I didn’t properly read the documentation where it’s mentioned that “turns” is only used when TLS connections are needed. Otherwise you can just set it to “turn”. At least that’s how I understand it…
https://nextcloud-talk.readthedocs.io/en/latest/TURN/