2021-01-19 23:15:46 +01:00
|
|
|
---
|
|
|
|
|
title: Room Version 2
|
|
|
|
|
type: docs
|
|
|
|
|
weight: 20
|
|
|
|
|
---
|
2021-01-20 00:14:52 +01:00
|
|
|
|
2021-11-01 15:49:15 +01:00
|
|
|
This room version builds on [version 1](/rooms/v1) with an improved
|
2021-01-20 00:14:52 +01:00
|
|
|
state resolution algorithm.
|
|
|
|
|
|
2021-11-01 15:49:15 +01:00
|
|
|
## Client considerations
|
|
|
|
|
|
|
|
|
|
There are no client considerations introduced in this room version. Clients
|
|
|
|
|
which implement the redaction algorithm locally should refer to the
|
|
|
|
|
[redactions](#redactions) section below for a full overview of the algorithm.
|
|
|
|
|
|
2021-01-20 00:14:52 +01:00
|
|
|
## Server implementation components
|
|
|
|
|
|
2021-01-20 21:34:49 +01:00
|
|
|
{{% boxes/warning %}}
|
2021-01-20 00:14:52 +01:00
|
|
|
The information contained in this section is strictly for server
|
|
|
|
|
implementors. Applications which use the Client-Server API are generally
|
|
|
|
|
unaffected by the details contained here, and can safely ignore their
|
|
|
|
|
presence.
|
2021-01-20 21:34:49 +01:00
|
|
|
{{% /boxes/warning %}}
|
2021-01-20 00:14:52 +01:00
|
|
|
|
2021-01-21 06:45:35 +01:00
|
|
|
Room version 2 uses the base components of [room version 1](/rooms/v1),
|
2021-01-20 00:14:52 +01:00
|
|
|
changing only the state resolution algorithm.
|
|
|
|
|
|
|
|
|
|
### State resolution
|
|
|
|
|
|
2021-11-01 15:49:15 +01:00
|
|
|
{{% added-in this=true %}}
|
|
|
|
|
|
|
|
|
|
{{% rver-fragment name="v2-state-res" %}}
|
|
|
|
|
|
|
|
|
|
## Unchanged from v1
|
|
|
|
|
|
|
|
|
|
The following sections have not been modified since v1, but are included for
|
|
|
|
|
completeness.
|
|
|
|
|
|
2022-01-31 23:18:58 +01:00
|
|
|
### Redactions
|
2021-11-01 15:49:15 +01:00
|
|
|
|
2022-01-31 23:18:58 +01:00
|
|
|
{{% rver-fragment name="v1-redactions" %}}
|
2021-11-01 15:49:15 +01:00
|
|
|
|
|
|
|
|
### Event format
|
|
|
|
|
|
|
|
|
|
Events in rooms of this version have the following structure:
|
|
|
|
|
|
|
|
|
|
{{% definition path="api/server-server/definitions/pdu" %}}
|
|
|
|
|
|
2022-06-08 23:22:47 +02:00
|
|
|
#### Deprecated event content schemas
|
|
|
|
|
|
|
|
|
|
{{% rver-fragment name="v1-deprecated-formatting-off-spec" %}}
|
|
|
|
|
|
|
|
|
|
{{% rver-fragment name="v1-stringy-power-levels" %}}
|
|
|
|
|
|
2022-01-31 23:18:58 +01:00
|
|
|
### Authorization rules
|
2021-11-01 15:49:15 +01:00
|
|
|
|
2022-01-31 23:18:58 +01:00
|
|
|
{{% rver-fragment name="v1-auth-rules" %}}
|
2021-11-01 15:49:15 +01:00
|
|
|
|
2022-01-31 23:18:58 +01:00
|
|
|
### Canonical JSON
|
2021-11-01 15:49:15 +01:00
|
|
|
|
2022-01-31 23:18:58 +01:00
|
|
|
{{% rver-fragment name="v1-canonical-json" %}}
|