Describe knock_restricted client changes

This commit is contained in:
Travis Ralston 2022-05-30 14:54:09 -06:00
parent 41ed640130
commit 5e3175a094
2 changed files with 29 additions and 0 deletions

View file

@ -1969,6 +1969,13 @@ room listed in the join rules. If the server cannot verify membership for any
of the listed rooms then you can only join with an invite. Note that this rule
is only expected to work in room versions [which support it](/rooms/#feature-matrix).
{{% added-in v="1.3" %}} `knock_restricted`
This room can be joined as though it was `restricted` *or* `knock`. If you
interact with the room using knocking, the `knock` rule takes effect whereas
trying to join the room without an invite applies the `restricted` join rule.
Note that this rule is only expected to work in room versions
[which support it](/rooms/#feature-matrix).
The allowable state transitions of membership are:
![membership-flow-diagram](/diagrams/membership.png)
@ -1984,6 +1991,15 @@ The allowable state transitions of membership are:
##### Knocking on rooms
{{% added-in v="1.1" %}}
{{% changed-in v="1.3" %}}
{{% boxes/note %}}
As of `v1.3`, it is possible to knock on a [restricted room](#restricted-rooms)
if the room supports and is using the `knock_restricted` join rule.
Note that `knock_restricted` is only expected to work in room versions
[which support it](/rooms/#feature-matrix).
{{% /boxes/note %}}
<!--
This section is here because it's most similar to being invited/joining a
@ -2021,6 +2037,15 @@ server chose to auto-accept.
##### Restricted rooms
{{% added-in v="1.2" %}}
{{% changed-in v="1.3" %}}
{{% boxes/note %}}
As of `v1.3`, it is possible to [knock](#knocking-on-rooms) on a restricted
room if the room supports and is using the `knock_restricted` join rule.
Note that `knock_restricted` is only expected to work in room versions
[which support it](/rooms/#feature-matrix).
{{% /boxes/note %}}
Restricted rooms are rooms with a `join_rule` of `restricted`. These rooms
are accompanied by "allow conditions" as described in the

View file

@ -12,6 +12,10 @@ description: |
* `restricted` - anyone able to satisfy at least one of the allow conditions is
able to join the room without prior action. Otherwise, an invite is required.
Only available in rooms [which support the join rule](/rooms/#feature-matrix).
* `knock_restricted` - a user can request an invite using the same functions offered
by the `knock` join rule, or can attempt to join having satisifed an allow condition
per the `restricted` join rule. Only available in rooms
[which support the join rule](/rooms/#feature-matrix).
* `private` - reserved without implementation. No significant meaning.
properties:
content: