matrix-org / matrix-org/matrix-spec

Think about how we join multiple AS bridges in one Matrix room (SPEC-269)

Open
#126 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

A-Application-Services enhancement
Dominant language
HTML
Stars
330
Forks
150
Avg merge
2h 21m
Merged PRs (30d)
3

Description

Having ASes steal attempts to join room aliases and lazily provision the rooms is great for the first time you join an "external" room via an AS bridge. E.g. #freenode_#neovim:matrix.org. But this doesn't help when I want to create a second AS bridge with the same Matrix room - say I also want to bring in the "neovim" project from gitter.im into the same room.

One way this could likely work is that an existing Matrix user in the Matrix/Freenode room could invite some Matrix entity representing the Gitter AS to join that room, and then explain to the Gitter AS which room on the Gitter side it should bridge to.

I furthermore wonder if we could use some invite metadata for this? E.g. send an invite to the Gitter AS user, with a field saying "the gitter room you should bridge is called 'neovim'", or whatever. Then it can accept or reject the invite conditionally on it being able to perform that.

(Imported from https://matrix.org/jira/browse/SPEC-269)

(Reported by @leonerd)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No files, tests, or entry points are identified. Start with the multi-AS bridge scenario and the proposed invite metadata, then determine the protocol design and specification changes needed to support multiple bridges in one Matrix room; done means an agreed, documented approach.

Written by the indexing model from the issue text.

Assessment

Domain
distributed-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.