Skip to content

Commit 7a06ed7

Browse files
authored
Let call member events expire (#3831)
* Expire m.call.member events after 1 hour * Allow clients to choose their own timeouts
1 parent 07f9547 commit 7a06ed7

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

proposals/3401-group-voip.md

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -99,9 +99,11 @@ We mandate at most one call per room at any given point to avoid UX nightmares -
9999

100100
### Call participation
101101

102-
Users who want to participate in the call declare this by publishing a `m.call.member` state event using their matrix ID as the state key (thus ensuring other users cannot edit it). The event contains an array of `m.calls` object describing which calls the user is participating in within that room. This array must contain one item (for now).
102+
Users who want to participate in the call declare this by publishing a `m.call.member` state event using their matrix ID as the state key (thus ensuring other users cannot edit it). The event contains a timestamp named `m.expires_ts` describing when this data should be considered stale, and an array `m.calls` of objects describing which calls the user is participating in within that room. This array must contain one item (for now).
103103

104-
`m.call.member` state events must be ignored if their user's `m.room.member` event's membership field is not `join`.
104+
When sending an `m.call.member` event, clients should choose a reasonable value for `m.expires_ts` in case they go offline unexpectedly. If the user stays connected for longer than this time, the client must actively update the state event with a new expiration timestamp.
105+
106+
`m.call.member` state events must be ignored if the `m.expires_ts` field indicates they have expired, or if their user's `m.room.member` event's membership field is not `join`.
105107

106108
The fields within the item in the `m.calls` contents are:
107109

@@ -183,7 +185,8 @@ For instance:
183185
}
184186
]
185187
}
186-
]
188+
],
189+
"m.expires_ts": 1654616071686
187190
}
188191
}
189192
```

0 commit comments

Comments
 (0)