Skip to content
This repository has been archived by the owner on Apr 26, 2024. It is now read-only.

Server Specified Integration Server #7702

Closed
Mathias-g opened this issue Jun 15, 2020 · 4 comments
Closed

Server Specified Integration Server #7702

Mathias-g opened this issue Jun 15, 2020 · 4 comments

Comments

@Mathias-g
Copy link

I run a synapse server and would like to develop my own integrations for it, and it is a huge bummer that the integrations server is run by you, and that dimension is not compatible with the mobile apps, because from my current understanding it requires me to not only run dimension, but also to maintain my own versions of all the clients as the URL is set client side. And not only that, from my understanding dimension does not work for the mobile apps.

It seems to me that it should be possible for the client to get an integration server URL from the server it connects to, rather than it only being included in the client and thus forcing those who wish to run their own to maintain their own versions of all the clients. I get that the end goal is to make it so that clients can choose which integration server they wish to connect to, but it should also be possible for the server operator to set a default integration server URL for clients connecting to their server.

I imagine this sort of hierarchy;

  1. If no integration server URL has been set client or server side, default to Scalar.
  2. If an integration server URL has been set on the synapse server the client is connected to but not in the client, use the integration server specified by the synapse server.
  3. If an integration URL has been specified by the client, use the client specified integration server regardless of if the synapse server has one specified.

That way you still retain the ability to set it client side, which is what you want for p2p, but you aren't tying server operators to using your integration server, and there is still the default setting in case the server owner does not want to run an integration server.

Also, what is the rationale behind not open sourcing the integration server?

@clokep
Copy link
Member

clokep commented Jun 15, 2020

because from my current understanding it requires me to not only run dimension, but also to maintain my own versions of all the clients as the URL is set client side.

I believe that this is no longer the case, see matrix-org/matrix-spec-proposals#1957.

Also, what is the rationale behind not open sourcing the integration server?

Dimension, which you mentioned earlier is open-source: https://github.com/turt2live/matrix-dimension -- I can't speak to whether it supports mobile apps or not. See also vector-im/riot-web#7757.

Overall it sounds like any deficiencies in the current integration managers should go in the spec repo though, you can check out how to write a proposal or file issues on https://github.com/matrix-org/matrix-doc/.

@clokep clokep closed this as completed Jun 15, 2020
@Mathias-g
Copy link
Author

Thanks for the response, apologies if it is based on me not knowing enough about the inner workings of Matrix 👍

@Mathias-g
Copy link
Author

Mathias-g commented Jun 15, 2020

And yes, it does seem Dimension does not work with the mobile apps (without compiling own versions); https://github.com/turt2live/matrix-dimension/blob/master/docs/installing.md

"Note: Dimension is currently only capable of running with Riot Web or Desktop. The iOS and Android apps are not directly supported without compiling your own versions. In future, this should be handled by an integration manager specification."

I know Dimension is open source by the way, but the question is why Scalar isnt?

@clokep
Copy link
Member

clokep commented Jun 16, 2020

Thanks for the response, apologies if it is based on me not knowing enough about the inner workings of Matrix 👍

You're welcome!

I know Dimension is open source by the way, but the question is why Scalar isnt?

See vector-im/riot-web#7757.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants