element-hq / element-hq/element-web
Calls between different devices unreliable or not working although using coturn
- Dominant language
- TypeScript
- Stars
- 13.5k
- Forks
- 2.8k
- PR merge metrics
- PR metrics pending
Description
### Description
Video- and voice calls are not working as expected on own homeserver.
Turnserver just works unencrypted under very certain circumstances.
tls is not working under no circumstances.
I have configured coturn correctly and my turnserver works very reliable with and without tls with xmpp and nextcloud. I also checked it with https://test.voip.librepush.net.
No problems at all just with matrix/element I face connection issues.
### Steps to reproduce
- configure homeserver with separate domain (just configure turn-uris without tls for tcp and udp - if configured with tls no calls are working)
- configure coturn on a second server with tls and dtls disabled
- use element web on one device and the application on other devices
- make sure that the devices are in different networks (e.g. wifi and mobile data)
- register some user
- try to make calls between different devices
Describe how what happens differs from what you expected.
I usually use element in my browser (Iceweasel/Brave). Calls always seem to work calling a windows-machine with the installed app. But that is pretty much everything. When I try to call an iOS device or an Android device it does not establish a call most of the times.
I expect that calls go through to any device but what happens is that it does not work very reliable. It seems to work between mobile devices most of the times - unfortunately not always.
It actually does not work between a mobile device and a browser.
It works sometimes from browser to browser but it apparently depends on the type of browser. It not even reliable between same brower (e.g. brave).
When calls do not connect I get an "allocation timeout" in my coturn logs.
When I try to use tls on my turnserver then no calls are working and I get the following error in my coturn logs:
"TLS/TCP socket buffer operation error (callback)"
I use letsencrypt but the error is still there when I use a certificate from ZeroSSL. I do not have this error using xmpp.
As I understand this issue it is a certificate problem but I do not know how to solve it. Anyway calls should work without tls on my turnserver but they don't.
By the way: just writing messages works fine although on mobile devices does the notification not work reliable (but that's another bug).
Describe here the problem that you are experiencing, or the feature you are requesting.
The problem is that calls do not get established many times although a turnserver is configured.
Logs:
What kind of logs do you need? Synapse? Coturn?
I tried tons of combinations. Please let me which logs I should provide.
### Version information
- **Platform**: any element device - app and web
For the web app:
- **Browser**: Brave (Version 1.17.75 Chromium: 87.0.4280.88 (Official Build) unknown (64-bit)) , Safari (on iOS 13.5.1), Firefox(Iceweaser 85.0)
- **OS**: Arch Linux (Parabola), Android 7.1.1, Android 7.1.2 ViperOS
- **URL**: Element Web on private server Version 1.7.19
Mobile App:
iOS: 1.6.16
android: 1.0.14 from f-droid
matrix-synapse: 1.25.0+buster1
coturn: 4.5.1.1-1.1+deb10u2
Contributor guide
Assessment
This issue has not been assessed yet.