Okay/Spec: Difference between revisions

No edit summary
No edit summary
Line 1: Line 1:
<pre>
'''OKAY'''
OKAY


Okay dares to ask the big questions. What if group chat was hypertext? What if discord let you write arbitrary HTML? What if protocols were bad?
Okay dares to ask the big questions. What if group chat was hypertext? What if discord let you write arbitrary HTML? What if protocols were bad?
Line 9: Line 8:


❊ A room is just a special URI which you can POST messages to and GET them back from at a later date.
❊ A room is just a special URI which you can POST messages to and GET them back from at a later date.
❊ You can use WebSockets to get a real-time feed of events that you’re interested in.
❊ You can use WebSockets to get a real-time feed of events that you’re interested in.
❊ Events are represented as HTML over the wire. This allows most client implementations skip the bit where they convert every message into HTML, while providing a stable format for non-web platforms to convert into their own inferior representations. This also lets you do really really stupid things with your messages.
❊ Events are represented as HTML over the wire. This allows most client implementations skip the bit where they convert every message into HTML, while providing a stable format for non-web platforms to convert into their own inferior representations. This also lets you do really really stupid things with your messages.
❊ Every client is authenticated with a TLS certificate that gets generated by the client on first use.
❊ Every client is authenticated with a TLS certificate that gets generated by the client on first use.


Line 56: Line 58:


◈ ok-rooms — Points to a list of all rooms hosted by the server.
◈ ok-rooms — Points to a list of all rooms hosted by the server.
◈ ok-register — Points to the server’s registration endpoint.
◈ ok-register — Points to the server’s registration endpoint.
◈ ok-prefs — Points to the server’s preferences endpoint.
◈ ok-prefs — Points to the server’s preferences endpoint.


Line 69: Line 73:
== profiles ==
== profiles ==
== subscriptions ==
== subscriptions ==
</pre>