Okay/Spec: Difference between revisions

No edit summary
Line 25: Line 25:


== connections ==
== connections ==
Connections in Okay <span class="should">should</span> happen over HTTPS, but plaintext HTTP will do in a pinch (TODO: elaborate).
Connections in Okay <span class="should">should</span> happen over HTTPS. Plaintext HTTP is acceptable for testing purposes.


A typical connection to a never before seen space usually goes like this:
A typical connection to a never before seen space usually goes like this:


* The user hands the client a URI to examine;
* The user hands the client a URI to examine;
* The client issues a GET request to the URI and examines the response;
* The client issues a GET request to the URI and checks the response against the [[Okay#discovery|discovery requirements]];
* If the response meets all the [[Okay#discovery|discovery requirements]], it generates a new key pair and registers itself with the space’s registration endpoint;
* If the response meets all requirements, it generates a new key pair and [[Okay#registration|registers]] itself;
* Once everyone’s happy, the client can begin posting messages to rooms.
* Once everyone’s happy, the client can begin posting messages to rooms.


Line 80: Line 80:


'''Key''': <span class="required"><span class="symbol">◈</span> '''required'''</span>, <span class="optional><span class="symbol">◇</span> '''optional'''</span>, <span class="multiple"><span class="symbol">❖</span> '''can be specified multiple times'''
'''Key''': <span class="required"><span class="symbol">◈</span> '''required'''</span>, <span class="optional><span class="symbol">◇</span> '''optional'''</span>, <span class="multiple"><span class="symbol">❖</span> '''can be specified multiple times'''
TODO: install [https://fonts.google.com/noto/specimen/Noto+Sans+Symbols+2Noto Sans Symbols 2] so these symbols render consistently


{| class="wikitable"
{| class="wikitable"