More spec work.

This commit is contained in:
Kegan Dougal 2014-10-03 17:38:30 +01:00
parent 1fa0454288
commit 02a44664b9

View file

@ -217,10 +217,6 @@ that are in the room that can be used to join via.
| #bike >> !4rguxf:matrix.org | | #bike >> !4rguxf:matrix.org |
|________________________________| |________________________________|
.. TODO kegan
- show the actual API rather than pseudo-API?
Identity Identity
-------- --------
@ -793,8 +789,8 @@ includes:
See `Room Events`_ for more information on these events. See `Room Events`_ for more information on these events.
Modifying aliases Room aliases
----------------- ------------
.. NOTE:: .. NOTE::
This section is a work in progress. This section is a work in progress.
@ -834,9 +830,6 @@ Permissions
This section is a work in progress. This section is a work in progress.
.. TODO-doc kegan .. TODO-doc kegan
- What is a power level? How do they work? Defaults / required levels for X. How do they change
as people join and leave rooms? What do you do if you get a clash? Examples.
- List all actions which use power levels (sending msgs, inviting users, banning people, etc...)
- Room config - what is the event and what are the keys/values and explanations for them. - Room config - what is the event and what are the keys/values and explanations for them.
Link through to respective sections where necessary. How does this tie in with permissions, e.g. Link through to respective sections where necessary. How does this tie in with permissions, e.g.
give example of creating a read-only room. give example of creating a read-only room.
@ -847,12 +840,15 @@ action in a room a user must have a suitable power level.
Power levels for users are defined in ``m.room.power_levels``, where both a Power levels for users are defined in ``m.room.power_levels``, where both a
default and specific users' power levels can be set. By default all users have default and specific users' power levels can be set. By default all users have
a power level of 0, other than the room creator whose power level defaults to a power level of 0, other than the room creator whose power level defaults to
100. Power levels for users are tracked per-room even if the user is not 100. Users can grant other users increased power levels up to their own power
present in the room. level. For example, user A with a power level of 50 could increase the power
level of user B to a maximum of level 50. Power levels for users are tracked
per-room even if the user is not present in the room.
State events may contain a ``required_power_level`` key, which indicates the State events may contain a ``required_power_level`` key, which indicates the
minimum power a user must have before they can update that state key. The only minimum power a user must have before they can update that state key. The only
exception to this is when a user leaves a room. exception to this is when a user leaves a room, which revokes the user's right
to update state events in that room.
To perform certain actions there are additional power level requirements To perform certain actions there are additional power level requirements
defined in the following state events: defined in the following state events:
@ -861,8 +857,9 @@ defined in the following state events:
events. Defaults to 50. events. Defaults to 50.
- ``m.room.add_state_level`` defines the minimum level for adding new state, - ``m.room.add_state_level`` defines the minimum level for adding new state,
rather than updating existing state. Defaults to 50. rather than updating existing state. Defaults to 50.
- ``m.room.ops_level`` defines the minimum levels to ban and kick other users. - ``m.room.ops_level`` defines the minimum ``ban_level`` and ``kick_level`` to
This defaults to a kick and ban levels of 50 each. ban and kick other users respectively. This defaults to a kick and ban levels
of 50 each.
Joining rooms Joining rooms