element-android
element-android copied to clipboard
Voice calls fail when VPN routes are offered
Steps to reproduce
- Install element (can be from fdroid or app store)
- Grant access to a wireguard VPN to element
- Log into a matrix.org account
- Make a voice call to another matrix.org user
- Accept the call from the other matrix.org user
- Wait
Outcome
What did you expect?
The call should eventually connect.
What happened instead?
The call gets stuck at "connecting..."
Comments on wireguard
This wireguard network provides no globally routable addresses, only providing fd00::/8
RFC 4193 addresses. Termux, given access to this same VPN is able to ping both globally routable (e.g., google.com) and vpn addresses.
Purpose
This may seem silly: just disconnect element from the VPN. However, I want to be able to access a homeserver that is only available on the VPN. Moreover, notice that I am able to access matrix.org, since I can indeed initiate outgoing calls (and send and receive text messages). I'm guessing the WebRTC code is insisting on using the VPN interface, and refusing to consider non-vpn interfaces.
Your phone model
motox4
Operating system version
Lineage (20-20240112-microG-payton)
Application version and app store
1.6.10 (from fdroid)
Homeserver
matrix.org
Will you send logs?
Yes
Are you willing to provide a PR?
Yes
me too
What phone model/OS do you have @jiangjiali? I was not able to reproduce this on a Pixel 6, to my surprise.
me too. on a Pixel 6 Pro
Deploying a turnserver on your own can solve the problem。
Source code address: https://github.com/coturn/coturn
@jiangjiali This bug is unrelated to configuring a matrix home-server and/or setting up a turn server. This problem is with the client, and can be reproduced using the matrix.org homeserver. If you were able to resolve this issue by setting up coturn, you were not experiencing this bug.
Possibly related to #2768.