Difference between revisions of "Protocol Design"
Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /www/htdocs/w0102f68/fos/wiki/includes/MagicWord.php on line 902
From FOS Wiki
(Started clean protocol specification) |
(Introduced the basic concepts of the protocol) |
||
Line 5: | Line 5: | ||
== Message == | == Message == | ||
A message is a json encoded object. Each message has a common "type" property, which determines it's type. | A message is a json encoded object. Each message has a common "type" property, which determines it's type. | ||
− | The message ends with the determination of the json object: } | + | The message ends with the determination of the json object: <code>}</code>. |
+ | |||
+ | = Session = | ||
+ | To start a session the client must send a valid username and password encapsulated in the json object "Login". | ||
− | |||
[[File:protocol-login-logout.png]] | [[File:protocol-login-logout.png]] | ||
+ | |||
+ | = Dynamic Data (Server ⇒ Client) = | ||
+ | |||
+ | The protocol design is ''not'' based on a request-response concept. It's based on a concept similar to the model-view concept. The idea behind is: On login the client receives the current data: all locations, all tables, all orders, all products, ... . On each change of the data on server-side, the client gets an ''update''. The goal is to have a valid (up-to-date) data pool all the time on every client. | ||
+ | |||
+ | To achieve this, it's necessary to have id-value based data structures - to be able to identify a data set in an update. |