Element-web: Repeated occurrences of riot-desktop not taking the configured integration manager

Created on 3 Jul 2020  路  21Comments  路  Source: vector-im/element-web

Web appears unaffected

bug needs-investigation platform specific integrations

Most helpful comment

I'm hitting this in Firefox with Radical and riot.im/develop too.
```
Uncaught (in promise) TypeError: this._managers is undefined
_setupHomeserverManagers webpack-internal:///559:123
emit webpack-internal:///28:157
_fetchClientWellKnown webpack-internal:///458:4844

All 21 comments

The logs look like this on riot-desktop:

Updating homeserver-configured integration managers...
Homeserver has no integration managers

Although the riot-web finds the integration manager.

@luilegeant

Well in your case it simply looks like the well-known isn't being observed.

Are there no other instances of Updating homeserver-configured integration managers... in the logs?

If you could; open the Javascript Console (Ctrl Shift I / Cmd Optn I)
and type mxMatrixClientPeg.matrixClient.getClientWellKnown() posting the result here.

Thanks

Hello @t3chguy, when I read your answer, this is my first thought: how is the .well-known related to this ? I haven't seen (yet) any reference to the integration server in the well-known for matrix/client and matrix/server. If my .well-known needs to be updated, could you point me towards the documentation.

Second, no, there is no other occurences of the message Updating homeserver-configured integration managers... in the logs (I killed the app: only single occurrence in logs & rebooted my laptop to be sure: same result).

Lastly, here is what is returned by mxMatrixClientPeg.matrixClient.getClientWellKnown():

{"m.homeserver":{"base_url":"https://matrix.luilegeant.com"},"m.identity_server":{"base_url":"https://vector.im"}}

I did a json.stringify on the result to be able to copy paste it.

Where did you specify your integrations manager then? If config.json then where did you put the config.json?

:bulb: only in the riot-web configuration...

Because the dimension homepage doesn't mention it, or not clearly enough for me. It just says: Here's the configuration options you'll need to update in your Riot config.json to me it was saying "update the riot-web config.json" because I never touched the riot-deskopt config.json file.

  • So, back to my question above, where in the doc does it mention to update the .well-known/matrix/client and what should I put inside ?

  • Could we add this on the landing page that we are referencing here ?

update the riot-web config.json

Well as you have found, if you don't equally update the config for riot-desktop it will not work.
https://github.com/vector-im/riot-desktop#user-specified-configjson has the docs on riot-desktop's config.json - however you might be better served by well-known: https://github.com/matrix-org/matrix-doc/blob/master/proposals/1957-integrations-discovery.md

If you want it documented in Dimension's docs then you should open an issue there.

Hello,
Sorry for the long delay.

Here are my findings:

  1. How to force re-downloading the .well-known/matrix/client info (I don't want to wait for the x hours before the lifetime expires or the app decides to re-download the client info):

    • open dev tools, go to network tabs, check box "disable cache"

    • force re-load ctrl+f5 (if doesn't work put your cursor in active mode (blinking) in the dev tools and retry)

    • Then you can use the mxMatrixClientPeg.matrixClient.getClientWellKnown() rerturning updated data.

Disconnect & relog into the riot-desktop doesn't seem to do the trick (for me anyway during these tests).

  1. Reading the MSC1957: Via domain.tld/.well-known/matrix/integrations doesn't seem to do anything
  2. Reading the MSC1957: Via domain.tld/.well-known/matrix/client 2 cases tried:
    A. Adding this section in the .well-known/matrix/client doesn't change anything
    "m.integrations_widget": { "url": "https://dimension.luilegeant.com/riot", "data": { "api_url": "https://dimension.luilegeant.com/api/v1/scalar" } }

    B. Adding this section in the .well-known/matrix/client doesn't change anything
    "m.integrations": { "managers": [ { "api_url": "https://dimension.luilegeant.com/api/v1/scalar", "ui_url": "https://dimension.luilegeant.com/riot" } ] }

    C. And putting both inside doesn't change anything either.

Hm, my dimension setup in riot-desktop via .well-known was working until this morning, when I upgraded from 1.6.4 to 1.6.8 (archlinux package). Now I'm back to scalar. :-/

This is what it looks like when typing thing into the console:

image

Yup, this is the same case for me. Interestingly enough my local Laptop does it correctly but another user from the same home server has issues accessing the integration manager even though the sticker picker is pointing to the right direction. This persists in 1.7.0

image
image

For me it's the same Problem as above... The well-known record was working fine until 1.6.8
And as far as i understand: scalar.vector.im is now stuck there since the desktop app basically never updates those settings via well-known once logged in?

I am having same problems even in dev tools it shows the correct url etc -> dimension works over chrome web ( new elementor previously riot ) but not in desktop app instead of our dimension it shows scalar.vector.im

image

I'm hitting this in Firefox with Radical and riot.im/develop too.
```
Uncaught (in promise) TypeError: this._managers is undefined
_setupHomeserverManagers webpack-internal:///559:123
emit webpack-internal:///28:157
_fetchClientWellKnown webpack-internal:///458:4844

aha, I think thats the problem!

Not to resurrect anything, but this problem persists in Element Desktop. Do we know if the upstream fix has made it into a release yet?

https://github.com/matrix-org/matrix-react-sdk/pull/5010/commits/7453f8dd071b525b522bca525bc331d26866849b says it has been included in 2 releases so far. So if you are on 1.7.2 or 1.7.3 and it still doesn't work then send logs from Settings.

This seems to have regressed again.

@t3chguy debug logs sent with refenrence to this issue.

2020-08-23T11:42:40.850Z I Updating homeserver-configured integration managers...
2020-08-23T11:42:40.850Z I Homeserver has 1 integration managers
...
2020-08-23T11:49:13.082Z I Updating homeserver-configured integration managers...
2020-08-23T11:49:13.083Z I Homeserver has no integration managers

It seems like it gets set and then later cleared in your logs @Bubu, very strange

I believe the second entry was me calling setupHomeserverManagers() manually after noticing it didn't work.

I've resent the logs after a restart without fiddling with the dev-tools this time.

Hmm, those logs correctly show Homeserver has 1 integration managers which is strange, do you have an integrations manager in your account data? Did you ever use the multiple integrations manager feature?

I have this in my account data, but I don't think that is what you are looking for?

{
  "type": "im.vector.setting.integration_provisioning",
  "content": {
    "enabled": true
  }
}

Did you ever use the multiple integrations manager feature?

No.

This is getting interesting... :thinking:

Right now I had dimension back without a restart since reporting the issue yesterday. I just went ahead and restarted element-desktop again. And I'm back on scalar.

Was this page helpful?
0 / 5 - 0 ratings