Connect spreed.me to someone outside local network

I’m so sad, I tried spreed.me, and spreed, no one works. Inside the LAN, both of them work, but when I try to call someone outside my home, nothing work. The mate comes by the link, he have to accept camera sharing, but after it s a black screen for both the callers…Same problem for the two apps, I also tried with my cellphone in 4G, same problem, black screen… Anyone has a suggestion ? I tried with window last firefox, last chrome and ubuntu last firefox and chrome…

To answer it fast here: You most likely need a turn server to route the traffic through your router/firewall setup. You will find several topics about that here in the forum. The solution is basically the same for both apps, spreed.me with seperate server and spreed video calls with integrated server.

There you find some guide about setting up an own turn server.

Ok, thanks for the answer, it works now, even with 3g and several LAN. I will post my conf files in the thread you mentionned for helping someone :wink:

EDIT : Done at https://help.nextcloud.com/t/complete-nc-installation-on-debian-with-spreed-me-and-turn-step-by-step/2436/38

Spreed app can’t connect to my TURN server, I tried : https://mynextcloud.net:8443, ip:8443, mynextcloud.net:8443, and several ways, but it doesn’t work…

Hah, first it worked well an suddenly not anymore? I guess you were already looking for changes in between?

My spreed server.conf looks like this:
turnURIs = turn:xxx.yyy.org:8443?transport=udp
So without “https://” just the udp port, no tcp. I don’t know if adding two ports the way you did with space in between works, but I guess the speed server would show some syntax error if not.
Coturn listens to udp and tcp that’s true, but I understand it the way, that you can configure your video call to use EITHER the one or the other, not necessarily AND ;). The guide and my setup prove that it at least works to use only udp.

Your hint with the turnadmin is interesting. Is useful to be able to watch and configure coturn via browser :slight_smile: . I just wonder, that the turn services and admin panel are accessible by same address and port? Might there be some problem for turn service access? Also you mentioned that you are able to add the shared secret there. I guess, if you did adjust it there, you also did accordingly in the spreed server config?
To your question there if this is necessary: As the guide and also my setup do not contain the quite interesting admin panel, no adjustment there is necessary. The shared secret generation there should adjust the “static-auth-secret” in the turnserver.conf and therefore if you change it, adjustment of “turnSecret” inside webrtc.conf/server.conf is necessary.

No no, everything work always perfectly, I spoke about the new official spreed app, not the spreed.me !
When I ran turn server and spreed.me correctly, I tried to use it with the new spreed app, for testing. In the admin panel, I used several syntaxes to fill the parameters, TURN server and TURN server shared secret.

But, the connection doesn’t work, because my calls hang out, and no new session appear in the admin panel of coturn, so, the syntax isn’t good I guess…

For the server.conf, I added the second protocol because I saw it in a page of the official site (can’t find it again…), and it allows coturn to use both protocols, wich he did in some sessions, and sometimes at the same moment…I think it depends, but it’s better it can do this…
Admin panel and service are in the same port, same adress, it makes sense because, in every case, it’s a browser who reach this port…Ok for shared secret, I think too it’s not necessary :slight_smile:

Ah, okay I understand. I also asked myself about udp or tcp or both is the better way to go. As the whole video traffic is going through the turn server, I actually would expect tcp to be the better way, because It’s about keeping the connection up. For stun server, which just gives the internal ip information to enable p2p, I would e.g. expect udp as the right protocol. But as the guide uses udp also for turn and this also works, I just leave it there for the moment.

I also can’t get the spreed app running, because there is some error when I try to adjust the TURN server protocols: Spreed app issue with setting "turnServerProtocols"
There seems to be a problem with writing the setting to the database. Did you check if all the values you give in nc admin panel (for spreed app) remain there after page reload? For me (at least for the protocols) this does not work, even that is says “saved” after I change. Maybe the problems are related.

Yes, I had noticed this issue too. But my server coturn runs in both protocol, so it was not a big deal for me to can’t change the protocol ;). Most of the time, coturn sessions use UDP, but sometimes, it activates TCP without problem…So the problem is not here I think…

As the app is also not running for me, I guess there is a connection between that and the error mentioned. If the setting is not set at all, this might be a reason for the app to break. But of course I am not sure about that, because I get no explicit error while running the app. The error in nc log does only show up, when opening the advanced config panel and dev tools in browser show different errors (about video/audio switch buttons) as far as I understand.

My coturn also listens to both udp and tcp, so there also should not be a problem, if spreed is configured to use both and it’s just not possible to chance that config.

Your nc log or browser site inspection doesn’t show a related error (while try video call or open admin panel/advanced settings)?

You’re right, error Undefined index: turnServerProtocols at /var/www/nextcloud/apps/spreed/templates/settings-admin.php#41 occur, for the three parameters (udp tcp, or both), in admin panel. Nothing to do, but to wait fix, I think…Not a problem, spreed.me work fine !

1 Like

Thanks for opening this issue on github. I don’t have an account there so far, maybe I should create one :slight_smile: .