replace 'default' with 'auto_join'

matthew/msc1772
Matthew Hodgson 3 years ago
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…
Cancel
Save