dendrite
dendrite copied to clipboard
Phone or Video call fails in DM-room without implement thirdparty/user/im.vector.protocol.sip_virtual? for Desktop App
Background information
- Dendrite version or git SHA:
- https://homeserver/_matrix/federation/v1/version {"server":{"version":"0.8.5+a53c9300","name":"Dendrite"}}
- Running as: Monolith:
- Uses: SQLite3:
- No Docker:
- go version go1.17.7 linux/amd64:
- Element version: 1.10.13 Olm version: 3.2.8:
Description
- What is the problem:
- Initiating outgoing calls (audio or video) in DM direct-message rooms don't work, clicking button does nothing.
- Who is affected:
- Likely anyone using Element DESKTOP App "and" a Dendrite homeserver? Or maybe an updated app or updated Dendrite server, since previously this might have worked I think. Also I can initiate audio calls from Android to this problematic Desktop Element App without problems. Just the other way doesn't work.
- How is this bug manifesting:
- When did this first appear:
- Can't recall exactly, but weeks not months, if I was correct and it did work before. (Its 'possible' previously that I had only initiated phone/video in conf-rooms and not in DM p2p rooms before, so can't say 100% if its a new bug)
Steps to reproduce
I have already spent a lot of time and effort diagnosing this issue, lot of it un-necessarily so sadly, since I didn't know of the Ctrl-Shift-I option inside Desktop Element App which made things so much easier and obvious etc.
Unlike Dendrite server, which gives "404 page not found" for the equivalent link below, Synapse will show ie:
https://matrix.org/_matrix/client/r0/thirdparty/user/im.vector.protocol.sip_virtual?
{"errcode":"M_MISSING_TOKEN","error":"Missing access token"}
Since "receiving" the Audio/Video call works fine, it would "seem" that it should not be "necessary" for Dendrite to implement thirdparty/user/im.vector.protocol.sip_virtual? (Can Desktop App then fix this issue in their client code?)
So please refer to the details I have already posted in ticket: https://github.com/vector-im/element-web/issues/22378
Also see ORIGINAL tickets related to this issue:
https://github.com/vector-im/element-web/issues/22331 https://github.com/matrix-org/dendrite/issues/2495
/thirdparty/* is simply not yet implemented in dendrite, that is a known issue https://github.com/matrix-org/dendrite/issues/633
That having said, thirdparty lookups should not be necessary to initiate 1:1 calls as far as I understand. The server does nothing specialnin this case but relay client messages.
What you experience is an element-web issue that is known and has been opened before https://github.com/vector-im/element-web/issues/21680
/thirdparty/* is simply not yet implemented in dendrite, that is a known issue #633
That having said, thirdparty lookups should not be necessary to initiate 1:1 calls as far as I understand. The server does nothing specialnin this case but relay client messages.
@spaetz Yes, what you say makes perfect sense because you can initiate a voice or video call just fine from Android app "to" the same Desktop Element app and it works fine. They could at least throw an error in Desktop app instead of silent failure, but of course a fix so audio/video works would be greatly appreciated.
@spaetz I'm a bit confused, because now that I proved to element web team that there was nothing wrong with my network/environment and it's a "bug", whether one wants to blame web/desktop or Dendrite, they closed my ticket at https://github.com/vector-im/element-web/issues/22378 as "not planned".
Please correct me if I'm wrong, doesn't NOT PLANNED, mean they have no plan to fix or even alert users?
Meaning they want users of Dendrite and web/desktop to continue with this "silent failure", without even giving them a pop-up message and without trying to make Audio/Video work? Do they want Dendrite to implement "thirdparty"? But then why was Pull-Request for it deserted and left to die as you linked in #633 ?
It's almost as if they don't want Dendrite to succeed? But I thought they created Dendrite also, isn't it theirs?
I'm confused because I thought Dendrite and Element Web/Desktop were part of same company and so I thought they would want to do what they can to not make Web/Desktop users who use Dendrite think their system is way too buggy or not working and move on to something else. Or are they saying no one should really use Dendrite at this point yet, and they only support Synapse? They should really "clarify" these things.
Because this is not a "tiny" bug, if it affected Synapse, wouldn't this bug have everyone "scrambling" to fix it?
I hope they realize that simply quickly closing such reported bugs with no intention to fix, can easily give a bad impression to users, and if they want to dispel any wrong impressions, they need to be more "upfront".
Perhaps they will be kind enough to your users and respectful of their own "time", such that when they know of this bug they can at least "include" it in their documentation clearly, so users are at least made aware of it.
If this issue has already been clearly documented somewhere for Desktop/Web users, and somewhere in Dendrite documentation and I missed it, my apologies, perhaps someone can please link it here. Thanks!
Anyway, I don't mean to come off harsh, but I'm a bit exhausted after having to work/expend so much of my time and energy to refute the accusations that basically I was an idiot who didn't know what he was doing, and that there was no bug, but my network environment was at fault. After I proved it's a bug, and finding it's a "known" bug, you can imagine I feel as if all this unpleasantness could have been all "easily" avoided.
I'm not asking for any apology on their part but it would be nice to see the issue be acknowledged in their documentation or they at least give a proper message or error pop-up in their clients versus "silent failure".
Anyway, I wish you and @neilalexander and the others in Dendrite channel all the best, we talk there under a different handle so we're not strangers :) Thanks again for all your work in support of Dendrite matrix server!
This is now fixed in Element.
@deepbluev7 What version of Element are you using? Web Element or Desktop Element? I just tested Desktop Element again, latest version "Element version: 1.10.15 Olm version: 3.2.8" and it doesn't work for me. I get the same error as before, complaining that dendrite server gives error 404 not found for _matrix/client/r0/thirdparty/user/im.vector.protocol.sip_virtual?
(Note the issue was for those of us using Dendrite servers instead of Synapse and specifically with "Desktop Element", maybe Element "web" may work I don't know I don't use web one.)
I commented a few hours after it was merged into the react SDK. It will take a few days to weeks to be in a released version. Specifically this PR: https://github.com/matrix-org/matrix-react-sdk/pull/8931
@deepbluev7 That's great to hear, thanks for the link, seems that was your pull-request? If so, it's much appreciated, looking forward to see fix merged to master, many thanks for your contribution!
Yeah, it was my PR. I just got annoyed that something so trivial broke calls on conduit and dendrite. I don't even use Element, Dendrite or Conduit, I just wanted to fix that :D
@deepbluev7 Hey thanks again, seems like the latest Element Desktop must have picked up your PR fix because with latest Element-Desktop placing calls seems to work finally. Thx!
Closing this, as it seems to resolved.