Skip to content

GitLab

  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • P python-nbxmpp
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 11
    • Issues 11
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 2
    • Merge requests 2
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Releases
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • gajim
  • python-nbxmpp
  • Issues
  • #116

Closed
Open
Created Feb 05, 2021 by Michael Felden@mfld-pub

Gajim will not connect if websocket URI is incorrect nbxmpp.addresses: Invalid websocket uri:

Edit: I just found this. May be related / already resolved ?

Client: Gajim Version: 1.3.0-beta2 Server: ejabberd 21.01

Preface: Not sure if this is a bug or a feature.

Issue: It seems if an XMPP domain has a TXT record for _xmppconnect to some websocket URI and this URI somehow does not work we abandon all connection attempts even if SRV records for _xmpp-client._tcp _xmpps-client._tcp exist and are valid.

Steps to reproduce:

  1. Set up ejabberd 21.01, pass 100% in XMPP Compliance Tester EXCEPT for XEP-0156.
  2. Create TXT record for the domain pointing to server's websocket URI. Do not do anything further about XEP-1056.
  3. Test that websocket URI works OK in browser (valid SSL cert, no firewall issues etc).
  4. Ask Gajim to connect to the account with auto-discovery. No manual connection parameters given.

Expected behavior:

This is where I hesitated to file this as a bug. Maybe there is an RFC that dictates that if a websocket connection is available it should trump everything else and be used ?! Decided to file anyway because other clients like dino and conversations are not effected.

It should use _xmpp-client._tcp and _xmpps-client._tcp SRV records to discover the best way to connect and successfully connect.

Actual behavior:

After "nbxmpp.addresses" reports "Invalid websocket uri" all connection attempts cease. User can manually specify hostname and TLS/SSL ports to connect but auto discovery no longer works.

05-Feb-21 11:02:45 (I) gajim.client             |          Connect
05-Feb-21 11:02:45 (I) gajim.client             |          State: ClientState.CONNECTING
05-Feb-21 11:02:45 (I) nbxmpp.stream            |          (zoup.pw) Connect
05-Feb-21 11:02:45 (I) nbxmpp.stream            |          (zoup.pw) Set state: StreamState.RESOLVE
05-Feb-21 11:02:45 (I) gajim.c.settings         |          Commit
**05-Feb-21 11:02:45 (W) nbxmpp.addresses         |          Invalid websocket uri: https://xmpp.example.com:9443/ws**
05-Feb-21 11:02:56 (I) gajim.p.installer        |          Checking for Updates...
05-Feb-21 11:03:00 (I) gajim.p.installer        |          No updates available
05-Feb-21 11:03:01 (I) gajim.c.settings         |          Set settings: app
Edited Feb 05, 2021 by Michael Felden
Assignee
Assign to
Time tracking