<html> <head> <link rel="stylesheet" type="text/css" href="doc.css"> <meta charset="UTF-8"> </head> <body> <a name="Vocabulary.for.AFB-DAEMON"></a> <h1>Vocabulary for AFB-DAEMON</h1> <pre><code>version: 1 Date: 27 mai 2016 Author: José Bollo </code></pre> <p><ul> <li><a href="#Vocabulary.for.AFB-DAEMON">Vocabulary for AFB-DAEMON</a> <ul> <li><a href="#Event">Event</a></li> <li><a href="#Level.of.assurance..LOA.">Level of assurance (LOA)</a></li> <li><a href="#Plugin">Plugin</a></li> <li><a href="#Request">Request</a></li> <li><a href="#Reply.Response">Reply/Response</a></li> <li><a href="#Service">Service</a></li> <li><a href="#Session">Session</a></li> <li><a href="#Token">Token</a></li> <li><a href="#UUID">UUID</a></li> <li><a href="#x-afb-reqid">x-afb-reqid</a></li> <li><a href="#x-afb-token">x-afb-token</a></li> <li><a href="#x-afb-uuid">x-afb-uuid</a></li> </ul> </li> </ul></p> <a name="Event"></a> <h2>Event</h2> <p>Message with data propagated from the services to the client and not expecting any reply.</p> <p>The current implementation allows to widely broadcast events to all clients.</p> <a name="Level.of.assurance..LOA."></a> <h2>Level of assurance (LOA)</h2> <p>This level that can be from 0 to 3 represent the level of assurance that the services can expect from the session.</p> <p>The exact definition of the meaning of this levels and of how to use it remains to be achived.</p> <a name="Plugin"></a> <h2>Plugin</h2> <p>A shared library object intended to be plug to an afb-daemon instance to implement an API.</p> <a name="Request"></a> <h2>Request</h2> <p>A request is an invocation by a client to a method of a plugin using a message transfered through some protocol: HTTP, WebSocket, DBUS… served by afb-daemon</p> <a name="Reply.Response"></a> <h2>Reply/Response</h2> <p>This is a message sent to client as the result of the request.</p> <a name="Service"></a> <h2>Service</h2> <p>Service are made of plugins runnning by their side on their binder. It can serve many client. Each one being attached to one session.</p> <p>The framework establishes the connection between the services and the clients. Using DBus currently.</p> <a name="Session"></a> <h2>Session</h2> <p>A session is meant to be the unic context of an instance of client, identifying that instance across requests.</p> <p>Each session has an identifier. Session identifier generated by afb-daemon are UUIDs.</p> <p>Internally, afb-daemon offers a mechanism to attach data to sessions. When the session is closed or disappears, the data attached to that session are freed.</p> <a name="Token"></a> <h2>Token</h2> <p>The token is an identifier that the the client must give to be authentificated.</p> <p>At start, afb-daemon get an initial token. This initial token must be presented incoming client to be authentificated.</p> <p>A token is valid only for a period.</p> <p>The token must be renewed periodically. When the token is renewed, afb-daemon sends the new token to the client.</p> <p>Tokens generated by afb-daemon are UUIDs.</p> <a name="UUID"></a> <h2>UUID</h2> <p>It stand for Universal Unic IDentifier.</p> <p>Its is designed to create identifier in a way that avoid has much as possible conflicts. It means that if two differents instance create a UUID, the probability that they create the same UUID is very low, near to zero.</p> <a name="x-afb-reqid"></a> <h2>x-afb-reqid</h2> <p>Argument name that can be used with HTTP request. When this argument is given, it is automatically added to the “request” object of the answer.</p> <a name="x-afb-token"></a> <h2>x-afb-token</h2> <p>Argument name for giving the token without ambiguity. You can also use the name <strong>token</strong> but it may conflicts with other arguments.</p> <a name="x-afb-uuid"></a> <h2>x-afb-uuid</h2> <p>Argument name for giving explicitely the session identifier without ambiguity. You can also use the name <strong>uuid</strong> but it may conflicts with other arguments.</p> </body> </html>