Skip to content

Commit

Permalink
Add description of m.receipt behaviour to MSC2285 (#3875)
Browse files Browse the repository at this point in the history
This appears to have been missed/edited out as part of one or more refactors of the MSC.
  • Loading branch information
turt2live authored Sep 9, 2022
1 parent c3eb6ac commit 4e1b562
Showing 1 changed file with 27 additions and 0 deletions.
27 changes: 27 additions & 0 deletions proposals/2285-hidden-read-receipts.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,33 @@ federated. Servers MUST NOT send receipts of `receiptType` `m.read.private` to
any other user than the sender. Servers also MUST NOT send receipts of
`receiptType` `m.read.private` to any server over federation.

As implied by adding a new `receiptType`, `m.read.private` receipts are echoed
back to clients through [`m.receipt`](https://spec.matrix.org/v1.3/client-server-api/#mreceipt).
The structure is the same as `m.read`. For example:

```json
{
"type": "m.receipt",
"content": {
"$event": {
"m.read": {
"@public_user:example.org": {
"ts": 1661385089714
}
},
"m.read.private": {
"@self:example.org": {
"ts": 1661385103450
}
}
}
}
}
```

Due to the nature of private read receipts, the `m.read.private` map in `m.receipt`
should only ever have the user's own ID.

## Security considerations

Servers could act as if `m.read.private` is the same as `m.read` so the user
Expand Down

0 comments on commit 4e1b562

Please sign in to comment.