0
0
Fork 0
Commit Graph

231 Commits

Author SHA1 Message Date
Travis Ralston be97e95dc1 Promote device management to be a dedicated section 2018-08-27 14:49:38 -06:00
Travis Ralston 8069981252 Add federation /user/* endpoints
Fixes https://github.com/matrix-org/matrix-doc/issues/1438
2018-08-27 14:19:10 -06:00
Travis Ralston d370a2c6fd Prepare the identity service and server-server APIs for r0
* Create the changelog scaffolding
* Set up the variables for versioning
2018-08-24 17:19:25 -06:00
Travis Ralston ef41b5c2bf Server ACLs
Implements the proposal for https://github.com/matrix-org/matrix-doc/issues/1383
2018-08-22 12:48:37 -06:00
Travis Ralston ebca4c7d86 Merge remote-tracking branch 'matrix-org/master' into travis/s2s/presence 2018-08-17 09:53:57 -06:00
Travis Ralston 21dc6f823a
Merge pull request #1484 from turt2live/travis/s2s/read-receipts
Document how read receipts work over federation
2018-08-17 09:50:40 -06:00
Travis Ralston 44d1f8dbe5 s/timeline/event graph 2018-08-17 09:46:11 -06:00
Travis Ralston a53fa9300d Merge remote-tracking branch 'matrix-org/master' into travis/s2s/presence 2018-08-17 09:34:16 -06:00
Travis Ralston ff1afaa8f7 Add a note about how presence lists work 2018-08-17 09:33:17 -06:00
Travis Ralston e7aed3da26 Remove poll/unpoll from presence 2018-08-17 09:16:39 -06:00
Travis Ralston 4b9922b641
Merge pull request #1494 from turt2live/travis/general/openid
Document OpenID in the client-server and server-server APIs
2018-08-17 08:57:33 -06:00
Travis Ralston 2eab07ade4 Fix header in server-server API 2018-08-16 11:45:53 -06:00
Travis Ralston 2aa0e7b00f
Merge pull request #1483 from turt2live/travis/s2s/typing
Document how typing notifications work over federation
2018-08-16 10:09:21 -06:00
Travis Ralston 88b35d1be5 Clarify how third party invites work
This adds several diagrams to the Client-Server API about how invites
are handled, including what the server is expected to do. This helps
implementors know what they are supposed to do in the common cases,
and infer where needed to get the more complex cases correct.

Although lacking in some areas, this is how third party invites work
today.

A link to the now-improved client-server documentation for third party
invites has been added to the server-server specification. The existing
server-server specification needed no further changes on the subject.

Fixes https://github.com/matrix-org/matrix-doc/issues/1366
2018-08-13 16:29:50 -06:00
Travis Ralston 50fc1c4d16 Move backfill/get events so that joins, leaves, and invites are together 2018-08-09 08:35:24 -06:00
Travis Ralston 83ea90f7ba Move the Authentication section higher in the spec
It forms the foundation for all the requests under it, so it should appear before the endpoints that need it.
2018-08-09 08:33:31 -06:00
Travis Ralston 32178bb07e Tidy up the specification
* Minor word choice changes
* Remove the now-empty "Protocol URLs" section
2018-08-09 08:33:00 -06:00
Travis Ralston 56dbeeb22a
Merge pull request #1469 from turt2live/travis/s2s/backfill
Improve documentation for backfilling rooms
2018-08-09 08:00:43 -06:00
Travis Ralston c8a8fdfa8d
Merge pull request #1493 from turt2live/travis/s2s/media
Mention how the content repository works over federation
2018-08-08 08:30:08 -06:00
Travis Ralston 0a7e670715 Document how typing notifications work over federation
Relevant synapse code: d69decd5c7/synapse/handlers/typing.py (L221-L230)
2018-08-08 08:28:52 -06:00
Travis Ralston e03bfbc47b Document how read receipts work over federation
Federation format: d69decd5c7/synapse/handlers/receipts.py (L153-L166)

Population of the fields that the above uses to construct the EDU: d69decd5c7/synapse/handlers/receipts.py (L48-L56)
2018-08-08 08:27:22 -06:00
Travis Ralston 05a2427c73 Document how presence EDUs work between servers
It's worth noting that Synapse does not make use of the `poll` or `unpoll` fields, and therefore the wording has been updated to permit servers to reject users. In the case of synapse, it would automatically reject everyone in the list by nature of ignoring it.
2018-08-08 08:24:09 -06:00
Travis Ralston a77975ba68
Merge pull request #1450 from turt2live/travis/s2s/inviting-rooms
Improve documentation for how non-third party invites work
2018-08-08 08:19:50 -06:00
Travis Ralston 0f8954d839
Merge pull request #1463 from turt2live/travis/s2s/pdus-and-edus
Improve documentation around EDUs and PDUs
2018-08-08 08:02:37 -06:00
Travis Ralston dcae88c290 Document OpenID in the server-server API
Part of https://github.com/matrix-org/matrix-doc/issues/857

Reference: d69decd5c7/synapse/federation/transport/server.py (L543-L557)
2018-08-07 22:13:21 -06:00
Travis Ralston cdcd72c0e3 Fix stray hash on client-server API link
This shouldn't be here, and nothing appears to need it. Removing it now because it has been noticed.
2018-08-07 17:02:24 -06:00
Travis Ralston 0858e7bd23 Mention how the content repository works over federation
We might want to consider promoting the media repo to it's own API, and maybe consider calling it the Media Repo rather than Content Repo.

Source of information: experience.
2018-08-07 16:58:14 -06:00
Travis Ralston 521dcdd5d5 Merge remote-tracking branch 'matrix-org/master' into travis/s2s/backfill 2018-08-07 08:54:25 -06:00
Travis Ralston 35f15ba3d8
Merge pull request #1477 from turt2live/travis/s2s/public-rooms
Document the /publicRooms endpoint for federation
2018-08-07 08:31:10 -06:00
Travis Ralston d712bfc73d
Merge pull request #1479 from turt2live/travis/s2s/server-discovery
Federation: Document the Host header; Clarify how literal IP addresses are handled
2018-08-07 08:30:47 -06:00
Travis Ralston e10770ae8b
Merge pull request #1475 from turt2live/travis/s2s/event-auth
Document /event_auth and /query_auth
2018-08-07 08:30:22 -06:00
Florian Jacob e7cebf670e Fix minor spelling mistake from #1472
Signed-off-by: Florian Jacob <projects+git AT florianjacob )DOT( de>
2018-08-06 22:59:26 +02:00
Travis Ralston dcb39f8890 Fix wording from bad merge 2018-08-05 10:55:55 -06:00
Will Hunt c826edf23b Remove dns_name from S2S Api 2018-08-05 14:46:42 +01:00
Will Hunt 7a46bdae02
Spacing 2018-08-05 14:43:05 +01:00
Will Hunt 632101dcde
Merge branch 'master' into hs/dns-to-be-hostname 2018-08-05 14:42:05 +01:00
Travis Ralston 5fbaa1deb5 Federation: Document the Host header; Clarify how literal IP addresses are handled
Fixes https://github.com/matrix-org/matrix-doc/issues/1161

The IP address clarification is to add an explicit mention of how to handle the case. The prior documentation assumed that all servers would be resolvable with DNS, and does technically have a fallback to use the fallback port, however making it clear feels like a good idea.
2018-08-03 13:20:46 -06:00
Travis Ralston 2ac80d38d7 Document the /publicRooms endpoint for federation
This intentionally doesn't document the third party network aspect of the endpoint. This is scheduled for a later area for dealing with third party network/IDs and is reported as https://github.com/matrix-org/matrix-doc/issues/1476

The client-server response has been broken out to a shared file: both the client-server and server-server /publicRoom endpoints return the same thing, with slightly different inputs.

The inputs (and behaviour) are based upon the docstring here: 43ecfe0b10/synapse/federation/transport/server.py (L583-L612)
2018-08-03 11:23:44 -06:00
Travis Ralston 73958ecbff Document /event_auth and /query_auth
/event_auth is a fairly easy endpoint to determine the use case of. /query_auth is a little harder to investigate and has a fairly interesting purpose: it appears to be used for the sending server to admit defeat and shop around for the right auth chain, correcting it's own perspective as it goes.

/query_auth is based off the following research points in synapse:
* 43ecfe0b10/synapse/handlers/federation.py (L1947-L1990)
* 43ecfe0b10/synapse/handlers/federation.py (L2049-L2187)
* 43ecfe0b10/synapse/handlers/federation.py (L1716-L1761)
* 43ecfe0b10/synapse/federation/federation_server.py (L393-L446)
* https://github.com/matrix-org/synapse/blob/master/synapse/federation/transport/server.py#L482-L487
2018-08-03 09:27:19 -06:00
Travis Ralston 6b67d501e4
Merge branch 'master' into travis/s2s/query 2018-08-03 08:55:21 -06:00
Travis Ralston 3a9fb11c9b
Merge branch 'master' into travis/s2s/backfill 2018-08-03 08:54:40 -06:00
Travis Ralston 1578da453b
Merge branch 'master' into travis/s2s/get-event 2018-08-03 08:01:43 -06:00
Travis Ralston 86d7f42173
Merge pull request #1455 from turt2live/travis/s2s/leaving-rooms
Document how leaving rooms/rejecting invites over federation works
2018-08-03 08:00:56 -06:00
Travis Ralston d48f1e1713
Merge pull request #1461 from turt2live/travis/s2s/transactions
Improve documentation on how Transactions work
2018-08-03 07:38:45 -06:00
Travis Ralston cda88f3b3d Document /get_missing_events
Fixes https://github.com/matrix-org/matrix-doc/issues/1385
2018-08-02 23:18:08 -06:00
Travis Ralston 05bb7e1050 Spelling and word choice 2018-08-02 18:45:59 -06:00
Travis Ralston 53d4003d3a manual merge of master into travis/s2s/query 2018-08-02 16:48:32 -06:00
Travis Ralston 48972addbf
Merge pull request #1428 from turt2live/travis/s2s/joining-rooms
Improve the documentation for joining rooms
2018-08-02 16:44:31 -06:00
Travis Ralston a9258ed195 an -> a 2018-08-02 16:43:29 -06:00
Travis Ralston 9d474bb819 Document event retrieval endpoints in more detail
This also adds a previously-undocumented endpoint: /state_ids

Backfill is technically not part of this section, however it is being left untouched to make the merge with #1469 easier (which moves it out of the file).

Reference material:
* Some calls to synapse on these endpoints with a relatively simple private room.
2018-08-02 12:44:54 -06:00
Travis Ralston 5aef545128 Improve documentation for backfilling rooms
There's not a whole lot to improve here - most of the changes are about reorganization and minor clarifications.
2018-08-01 13:31:23 -06:00
Travis Ralston 5027a9a59a Improve documentation around EDUs and PDUs
Clarify fields, improve examples, and make the tables in the spec be generated rather than duplicated.
2018-07-31 13:58:23 -06:00
Travis Ralston 7679b4f1d1 Improve documentation on how Transactions work
The response is based upon various sections of the Synapse code in how it generates a response.

There are no new fields added to the transaction. Originally, `previous_ids` and `pdu_failures` were to be documented however neither of these are used in the real world.
2018-07-30 16:58:13 -06:00
Travis Ralston 8f1a4ae0ea Formatting 2018-07-26 16:43:51 -06:00
Travis Ralston 9fdd8a6f96 Document how leaving rooms/rejecting invites over federation works
Fixes https://github.com/matrix-org/matrix-doc/issues/1401

This is very similar to the joining rooms handshake, and much of it is a near copy/paste of the make_join and send_join API. The major difference is the send_leave API doesn't return anything.

References:
* Handling of make_leave: d69decd5c7/synapse/handlers/federation.py (L1285-L1310)
* send_leave route: d69decd5c7/synapse/federation/transport/client.py (L267)
* make_leave route: d69decd5c7/synapse/federation/transport/server.py (L396)
* send_leave returning nothing: d69decd5c7/synapse/handlers/federation.py (L1346)
2018-07-26 14:59:43 -06:00
Travis Ralston f873bae0cc Improve documentation for how non-third party invites work
The details are fairly straightforward. An `event` has been added to the response body because that's what Synapse returns, despite the spec saying otherwise until now: d69decd5c7/synapse/federation/federation_server.py (L339)
2018-07-26 08:44:10 -06:00
Travis Ralston c2f1c6e78d Improve the joining rooms handshake documentation
There isn't a whole lot to this section that needed work. The section overall lost the table schema in favour of having the endpoints close by.

The directory query is improved in https://github.com/matrix-org/matrix-doc/pull/1443
2018-07-26 08:43:08 -06:00
Travis Ralston 8e97b0ca81 Improve the server key exchange portion of the s2s specification
Most of the text has been shuffled into the swagger definitions to bring it closer to where it matters.

This also attempts to clarify what is out in the wild. Most importantly, the first version of the key exchange is outright removed from the specification. Other research points/questions are:

* What is a "Key ID"?
  * 1241156c82/synapse/rest/key/v2/local_key_resource.py (L81-L83)
  * 1241156c82/synapse/rest/key/v2/local_key_resource.py (L88-L91)
* Returning a cached response if the server throws a 400, 500, or otherwise not-offline status code
  * 1241156c82/synapse/rest/key/v2/remote_key_resource.py (L227-L229)
* `minimum_valid_until_ts` default
  * This branch of the ladder: 1241156c82/synapse/rest/key/v2/remote_key_resource.py (L192)
* Returning empty arrays when querying offline/no servers
  * Queried by hand against matrix.org as a notary server with a fake domain name to query
* Returning all keys even when querying for specific keys
  * Queried by hand using matrix.org as a notary server against a server publishing multiple keys.

The examples and descriptions were also improved as part of this commit.
2018-07-26 08:41:00 -06:00
Travis Ralston 0ddf578b61 Combine all queries into their own section
This removes the Directory and Profile sections, instead opting to document them as Queries. 

The behaviour of profile queries is based on Synapse's behaviour. A few issues have been opened to improve the behaviour:
* https://github.com/matrix-org/matrix-doc/issues/1434
* https://github.com/matrix-org/matrix-doc/issues/1435
* https://github.com/matrix-org/matrix-doc/issues/1436
* https://github.com/matrix-org/matrix-doc/issues/1437

This fixes https://github.com/matrix-org/matrix-doc/issues/1404
2018-07-26 08:40:39 -06:00
Will Hunt bdb881420c
Merge branch 'master' into hs/dns-to-be-hostname 2018-07-24 23:12:12 +01:00
Travis Ralston 004998b98f Convert invites to swagger
The whole section reads like a description for the endpoint, and has been replaced by the swagger definition now (rather than at a later stage). All the same information should be kept.
2018-07-24 10:58:15 -06:00
Travis Ralston f09c4fd286 Convert joins to swagger 2018-07-24 10:58:15 -06:00
Travis Ralston cb4fcd1d09 Merge remote-tracking branch 'matrix-org/master' into travis/s2s/transactions-swagger 2018-07-24 09:15:36 -06:00
Travis Ralston 2aafde4549
Merge pull request #1419 from turt2live/travis/s2s/3pinvites-swagger
Convert third party invite exchange to swagger
2018-07-23 10:33:00 -06:00
Travis Ralston e226b60c7f Merge remote-tracking branch 'matrix-org/master' into travis/s2s/transactions-swagger 2018-07-18 10:59:39 -06:00
Travis Ralston 7cb918407d Merge remote-tracking branch 'matrix-org/master' into travis/s2s/keys-swagger 2018-07-18 10:32:46 -06:00
Travis Ralston cf93c88337 Convert third party invite exchange to swagger 2018-07-13 15:44:33 -06:00
Travis Ralston 51faf8ed2e Convert the general query API to swagger
Includes "moving" the directory query API into the same area. This will make more sense once the other query types are specified.
2018-07-12 13:46:42 -06:00
Travis Ralston 374ec00046 Convert things that mention "Transaction" to swagger
There's two kinds of transactions currently: one with EDUs and one without. The one with EDUs is only used on /send, however the schema is still somewhat worth splitting out for simplicity.

The examples are brought apart to make them slightly more reusable for when they get dumped into the relevant sections of the spec (see TODO in server_server_api.rst)

Further, the Transactions stuff introduces tuples to the spec. The units.py has been updated to support this.
2018-07-11 16:52:27 -06:00
Travis Ralston 96889f16e9 Split out and fix the /server and /query key APIs 2018-07-11 13:20:44 -06:00
Travis Ralston bd2c0b7c98 Convert server keys to swagger 2018-07-11 13:09:19 -06:00
Will Hunt 92f3989f2b Dirty replace of DNS name -> hostname 2018-07-05 11:37:06 +01:00
Travis Ralston 2fc2926461 Clearly say that the server/server API is unstable and subject to change 2018-07-04 11:33:51 -06:00
user 54c3003b74 newly joined -> newly-joined 2018-06-17 16:35:23 +01:00
user 5ab5fe08d1 Small grammatical and stylistic fixes 2018-06-17 15:49:39 +01:00
Andrew Morgan 2e5cdaf51c
Fix typo
"To stream events all the events" -> "To stream all the events"
2018-06-11 14:25:05 +01:00
Richard van der Hoff cefd1a832e
server_server_api: fix typo in auth section
fixes "destintation" typo
2018-06-05 17:55:21 +01:00
Richard van der Hoff 3dfa643b8b Fix membership state names
It's called 'join', not 'joined'.
2018-02-20 20:25:31 +00:00
Richard van der Hoff 15ca952cc3 remove spurious word 2017-12-20 10:10:02 +00:00
Richard van der Hoff 1fb7647021 send_join: clarify auth_chain description
The auth_chain field should contain all of the auth events required to auth the
state events, as well as those required to auth the join event itself.

(cf https://github.com/matrix-org/synapse/blob/e148438/synapse/handlers/federation.py#L1076-L1077).
2017-12-18 17:58:35 +00:00
Richard van der Hoff 08d137a588 We sign the request body, not the JSON
when signing federation requests, we put the actual request body into the
canonicaljson to be signed, not the JSON representation of it.
2017-12-10 23:09:12 +00:00
Richard van der Hoff 56f878842c Add a warning that state resolution has problems 2017-12-10 23:05:55 +00:00
Richard van der Hoff 5ab9ee6b88 Link to auth rules 2017-11-22 22:42:55 +00:00
Richard van der Hoff 0960229a80 Document the state resolution algorithm
or at least, my understanding of it.
2017-11-22 22:35:47 +00:00
Maxime Dor e8af5622a7 Use proper room event type for redaction 2017-11-21 20:29:18 +01:00
Richard van der Hoff 96d93e11d7
Tweak wording of auth rules slightly 2017-11-20 12:57:34 +00:00
Maxime Dor c4f53f58d7 Fix auth rules to allow first PL event 2017-11-18 21:25:18 +01:00
Richard van der Hoff 58a3fa3d60
Merge pull request #1075 from matrix-org/rav/pdu_fields
Improve documentation of Transactions and PDUs
2017-11-16 15:42:36 +00:00
Richard van der Hoff 6a653b742c Document auth_events 2017-11-15 23:44:46 +00:00
Richard van der Hoff 632ba032af Improve Transaction and PDU documentation
Fix a bunch of lies about the fields in these structures.
2017-11-15 23:44:41 +00:00
Marcus Medom Ryding 8a446fa6df Modify event auth rules not to rely on depth
Signed-off-by: Marcus Medom Ryding <mrok4a@gmail.com>
2017-11-15 19:24:46 +01:00
Maxime Dor bb50ec2e88 Document directory query endpoint 2017-11-15 13:40:55 +01:00
Maxime Dor 1045bc721d Document federation version endpoint 2017-11-15 04:16:30 +01:00
Richard van der Hoff 5fee8e54eb Document the event auth rules (#1027)
These are a necessary precursor to state resolution.
2017-10-20 13:36:56 +01:00
Richard van der Hoff cfb547b474 Fix perspectives project link
The perspectives project seems to be dead :/. We can at least link to the
wayback machine.
2017-09-27 15:31:55 +01:00
Brendan Abolivier 6b6a941e36
Phrasing 2017-09-15 16:58:34 +01:00
Brendan Abolivier 8de93147b1
Typo 2017-09-15 16:57:05 +01:00
Brendan Abolivier c71575c94d
Remove useless blank line 2017-09-14 19:53:11 +01:00
Brendan Abolivier 4a99691108
Move link to the bottom of the file 2017-09-14 19:48:43 +01:00
Brendan Abolivier 9d90fa2cae
Specify third-party invites 2017-09-14 19:44:49 +01:00
Brendan Abolivier af961321e9
Specify remote invite 2017-09-14 19:15:06 +01:00
Richard van der Hoff da686ba4eb Specification of unpadded Base64 2017-03-01 08:50:07 +00:00
Richard van der Hoff a091d86707 Merge pull request #775 from superdump/superdump/fed-pdu-state-update-fix
server-server api: Fix swapped pdu state update field descriptions
2017-01-03 12:11:49 +00:00
Robert Swain db26877eee server-server api: Fix swapped pdu state update field descriptions
Signed-off-by: Robert Swain <robert.swain@gmail.com>
2017-01-02 23:09:56 +01:00
Robert Swain 5855bf4b16 server-server: PDUs are signed by the origin server's private key
Not the public key.

Signed-off-by: Robert Swain <robert.swain@gmail.com>
2017-01-02 22:46:02 +01:00
Richard van der Hoff 3ee75af06f Move 'Signing JSON' to appendices
Canonical JSON and JSON signing in general are common to the C-S spec. Move
them to the appendices instead of the S-S spec.
2016-10-31 12:36:47 +00:00
Richard van der Hoff ebaaa7e3b3 Review feedback
* store-and-forward -> send-to-device
* describe motivation
* device ids are 10 capital chars
* etc
2016-09-29 13:18:45 +01:00
Richard van der Hoff ccd7bb32d5 Specification for direct-to-device messages 2016-09-27 14:27:27 +01:00
Richard van der Hoff 49cd65dd58 Add a license to the spec
We're licensing hte spec under ASLv2. Add the LICENSE file, and add the
short-form to as much of the source as is practical right now (adding it to
json source is a massive pita).
2016-07-12 17:28:30 +01:00
Richard van der Hoff 5cc9066159 Add git versions to other parts of the spec 2016-05-06 09:49:26 +01:00
Paul "LeoNerd" Evans 1f876778b5 Don't need to document /pdu/ any more 2015-12-21 16:50:56 +00:00
Paul "LeoNerd" Evans 116253b2f5 Document the /event/:event_id/ federation endpoint 2015-12-17 20:45:57 +00:00
Paul "LeoNerd" Evans b9bee6ee73 Initial hack at some federation /backfill documentation 2015-12-14 20:00:49 +00:00
Paul "LeoNerd" Evans e32070f189 Decide that joining HS is the one that specifies the join event ID 2015-12-08 14:04:40 +00:00
Daniel Wagner-Hall 2f3a00fe34 Consistently spell homeserver as homeserver 2015-12-02 19:23:33 +00:00
Daniel Wagner-Hall b479b54cd8 Add tables of contents to individual specs 2015-11-27 18:52:58 +00:00
Paul "LeoNerd" Evans 233e8486bc Wording fix - objects contain keys, not list elements directly 2015-11-16 16:50:58 +00:00
Paul "LeoNerd" Evans 6cbfba7011 'auth_events' is a List, not a String 2015-11-16 16:33:26 +00:00
Paul "LeoNerd" Evans 122c082fcf Comment about origin servers of invites having subsequently left the room 2015-11-16 16:29:43 +00:00
Paul "LeoNerd" Evans 923f05e554 More consistency around 'resident homeserver' 2015-11-16 15:34:11 +00:00
Paul "LeoNerd" Evans 36af793f05 s/full object/full event/ 2015-11-16 15:30:22 +00:00
Paul "LeoNerd" Evans 988d773476 /make_join protoevent no longer needs the pointless 'prev_state' key (SYN-517) 2015-11-13 17:49:22 +00:00
Paul "LeoNerd" Evans 885dd1e86c Explain the 'prev_events' join protoevent key 2015-11-13 16:39:31 +00:00
Paul "LeoNerd" Evans db5a90edcd Avoid using the words 'current state' when talking about the result of the /make_join request 2015-11-13 16:36:26 +00:00
Paul "LeoNerd" Evans aac45295ee Remark that the directory server step could be skipped in an invite case 2015-11-13 16:34:22 +00:00
Paul "LeoNerd" Evans d7c69fae43 Fix typo 'process' 2015-11-13 16:33:34 +00:00
Paul "LeoNerd" Evans f6c55979e0 Remove TODO comment about SYN-490 as it's unlikely to matter for v1; we'll fix it in v2 2015-11-02 15:17:18 +00:00
Paul "LeoNerd" Evans 40fa339cf7 Draw a pretty (well at least I think it's pretty) ASCII diagram of the remote join handshake 2015-11-02 15:00:18 +00:00
Paul "LeoNerd" Evans 5b6f858802 Some initial notes by way of the remote join handshake; with several TODOs and unanswered questions 2015-10-28 20:28:49 +00:00
Paul "LeoNerd" Evans 745e607577 Use 'room' or 'room ID' instead of 'context' when describing federation protocol 2015-10-28 14:49:50 +00:00
Kegan Dougal 3d087df538 Kill number prefixes for good 2015-10-15 13:40:05 +01:00