mirror of
https://github.com/matrix-org/matrix-spec
synced 2026-01-11 02:03:41 +01:00
replace 'default' with 'auto_join'
This commit is contained in:
parent
69897584e1
commit
037894a641
|
|
@ -96,7 +96,7 @@ relationship can be expressed in one of two ways:
|
|||
"via": ["example.com"],
|
||||
"present": true,
|
||||
"order": "abcd",
|
||||
"default": true
|
||||
"auto_join": true
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -117,7 +117,9 @@ relationship can be expressed in one of two ways:
|
|||
`\x20` (space) to `\x7F` (`~`), or consist of more than 50 characters, are
|
||||
forbidden and should be ignored if received.)
|
||||
|
||||
If `default` is set to `true`, that indicates a "default child": see [below](#default-children).
|
||||
If `auto_join` is set to `true`, that indicates that the child should be
|
||||
automatically joined by members of the space see
|
||||
[below](#auto-joined-children).
|
||||
|
||||
2. Separately, rooms can claim parents via the `m.room.parent` state
|
||||
event:
|
||||
|
|
@ -168,17 +170,29 @@ Cycles in the parent->child and child->parent relationships are *not*
|
|||
permitted, but clients (and servers) should be aware that they may be
|
||||
encountered, and ignore the relationship rather than recursing infinitely.
|
||||
|
||||
### Default children
|
||||
### Auto-joined children
|
||||
|
||||
The `default` flag on a child listing allows a space admin to list the
|
||||
"default" sub-spaces and rooms in that space. This means that when a user joins
|
||||
the parent space, they will automatically be joined to those default
|
||||
children.
|
||||
The `auto_join` flag on a child listing allows a space admin to list the
|
||||
sub-spaces and rooms in that space which should be automatically joined by
|
||||
members of that space.
|
||||
|
||||
XXX implement this on the client or server?
|
||||
Joining should be performed by the client. This can optionally be sped up by
|
||||
using [MSC2946](https://github.com/matrix-org/matrix-doc/pull/2946) to get a
|
||||
summary of the spacetree to be joined, and then using a batch join API (when
|
||||
available) to join whichever subset of it makes most sense for the client's
|
||||
UX.
|
||||
|
||||
Clients could display the default children in the room list whenever the space
|
||||
appears in the list.
|
||||
Obviously auto-joining can be a DoS vector, and we consider it to be antisocial
|
||||
for a space to try to join its users to more than ~100 children.
|
||||
|
||||
Clients could display the auto-joined children in the room list whenever the
|
||||
space appears in the list - thus helping users discover other rooms in a space
|
||||
even if they're not joined to that space.
|
||||
|
||||
XXX: I still think it's more common that a space admin will want users to know
|
||||
that a child exists (by showing it in the room list), rather than force them to
|
||||
actually join it. So this would be an `advertise` flag or something on the child.
|
||||
Matthew to discuss with Nad...
|
||||
|
||||
### Long description
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue