Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Calling from Browser to Element X App #28587

Closed
ckaap opened this issue Nov 28, 2024 · 2 comments
Closed

Calling from Browser to Element X App #28587

ckaap opened this issue Nov 28, 2024 · 2 comments
Labels
A-VoIP O-Uncommon Most users are unlikely to come across this or unexpected workflow S-Major Severely degrades major functionality or product features, with no satisfactory workaround T-Defect

Comments

@ckaap
Copy link

ckaap commented Nov 28, 2024

Steps to reproduce

Set up a Synapse Matrix server with Coturn configured for voice calls.
Use a web browser to initiate a voice call to a user on the mobile app Element X.
Observe the behavior when the call is received on Element X.

Outcome

Expected Behavior: The call should successfully connect between the web browser and the Element X mobile app.
Actual Behavior: The call fails with the error message "Call not supported" on Element X.
Additional Information:

Voice calls from the web browser to the standard Element app or between web browsers work without issues.
Testing indicates that the problem is related to Legacy Call support, which appears to be unsupported in Element X.

root@element-synapse:~# cat /etc/turnserver.conf

listening-port=3478
tls-listening-port=5349
fingerprint
use-auth-secret
static-auth-secret=*turn_shared_secret*
realm=matrix.domain.com
user-quota=100
total-quota=1200
no-tcp-relay
syslog
no-multicast-peers
verbose
cert=/etc/letsencrypt/live/domain.com/fullchain.pem
pkey=/etc/letsencrypt/live/domain.com/privkey.pem

root@element-synapse:~# cat /etc/matrix-synapse/homeserver.yaml

pid_file: "/var/run/matrix-synapse.pid"
server_name: "matrix.domain.com"
listeners:
  - port: 8008
    tls: false
    type: http
    x_forwarded: true
    bind_addresses: ['127.0.0.1']
    resources:
      - names: [client, federation]
        compress: false
database:
  name: psycopg2
  txn_limit: 10000
  args:
    user: matrix
    password: password
    database: matrix
    host: localhost
    port: 5432
    cp_min: 5
    cp_max: 10
log_config: "/etc/matrix-synapse/log.yaml"
media_store_path: /var/lib/matrix-synapse/media
signing_key_path: "/etc/matrix-synapse/homeserver.signing.key"
trusted_key_servers:
  - server_name: "matrix.domain.com"
suppress_key_server_warning: true
max_upload_size: 100M
enable_registration: false
matrix_synapse_federation_enabled: false
matrix_synapse_federation_port_enabled: false
registration_shared_secret: "registration_shared_secret"
user_directory:
    enabled: true
    search_all_users: true
encryption_enabled_by_default_for_room_type: all
prefer_local_users: true
turn_uris:
  - "turn:matrix.domain.com:3478?transport=udp"
  - "turn:matrix.domain.com:3478?transport=tcp"
  - "turns:matrix.domain.com:5349?transport=tcp"
turn_shared_secret: "turn_shared_secret"
turn_user_lifetime: 86400000
turn_allow_guests: true
serve_server_wellknown: true
admin_users:
  - "@admin:matrix.domain.com"

root@element-synapse:~# cat /opt/element-web/config.json

{
    "default_server_config": {
        "m.homeserver": {
            "base_url": "https://matrix.domain.com",
            "server_name": "matrix.domain.com"
        },
        "m.identity_server": {
            "base_url": "https://vector.im"
        }
    },
    "disable_custom_urls": true,
    "disable_guests": true,
    "disable_login_language_selector": false,
    "disable_3pid_login": true,
    "brand": "Element",
    "integrations_ui_url": "https://scalar.vector.im/",
    "integrations_rest_url": "https://scalar.vector.im/api",
    "integrations_widgets_urls": [
        "https://scalar.vector.im/_matrix/integrations/v1",
        "https://scalar.vector.im/api",
        "https://scalar-staging.vector.im/_matrix/integrations/v1",
        "https://scalar-staging.vector.im/api",
        "https://scalar-staging.riot.im/scalar/api"
    ],
    "bug_report_endpoint_url": "https://element.io/bugreports/submit",
    "uisi_autorageshake_app": "element-auto-uisi",
    "default_country_code": "GB",
    "show_labs_settings": false,
    "default_federate": false,
    "default_theme": "light",
    "room_directory": {
        "servers": ["domain.com"]
    },
    "enable_presence_by_hs_url": {
        "https://matrix.domain.com": true
    },
    "element_call": {
        "url": "https://call.element.io",
        "participant_limit": 18,
        "brand": "Element Call"
    },
    "features": {
        "feature_video_rooms": true,
        "feature_group_calls": true,
        "feature_element_call_video_rooms": true
    },
    "terms_and_conditions_links": [
        {
            "url": "https://element.io/privacy",
            "text": "Privacy Policy"
        },
        {
            "url": "https://element.io/cookie-policy",
            "text": "Cookie Policy"
        }
    ],
    "privacy_policy_url": "https://element.io/cookie-policy"
}

Operating system

Windows 11

Browser information

Chrome 131.0.6778.86

URL for webapp

Element: 1.11.83

Application version

Element X Android app version 0.7.3

Homeserver

No response

Will you send logs?

Yes

@ckaap ckaap added the T-Defect label Nov 28, 2024
@dosubot dosubot bot added A-VoIP O-Uncommon Most users are unlikely to come across this or unexpected workflow S-Major Severely degrades major functionality or product features, with no satisfactory workaround labels Nov 28, 2024
@t3chguy
Copy link
Member

t3chguy commented Dec 2, 2024

Testing indicates that the problem is related to Legacy Call support, which appears to be unsupported in Element X.

You should enable Element Call on your web/desktop deployments then if you need Element X compatibility, this has already been done on app.element.io and Element Desktop for this reason.

Closing in favour of #24209

@t3chguy t3chguy closed this as not planned Won't fix, can't repro, duplicate, stale Dec 2, 2024
@aerusso
Copy link

aerusso commented Dec 28, 2024

@t3chguy Sorry to necro this thread, but: how do I "enable Element Call on [the] web/desktop deployment"? If it is in the configuration docs, I am missing it somehow.

I've set use_exclusively to true, and starting either voice or video from the web app still generates a "unsupported call" error in Element X. I can initiate a call from the Element X phone app, and that works fine though. I've been unable to find any more documentation on this, anywhere.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-VoIP O-Uncommon Most users are unlikely to come across this or unexpected workflow S-Major Severely degrades major functionality or product features, with no satisfactory workaround T-Defect
Projects
None yet
Development

No branches or pull requests

3 participants