Update plugins documentation (helloworld, auth, tictactoe)
authorManuel Bachmann <manuel.bachmann@iot.bzh>
Mon, 30 May 2016 10:43:30 +0000 (12:43 +0200)
committerManuel Bachmann <manuel.bachmann@iot.bzh>
Mon, 30 May 2016 10:44:26 +0000 (12:44 +0200)
Add doc. for Hello World, Authentication, Tic Tac Toe.

Fix a few typos and formatting issues.

Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
doc/afb-plugins-overview.html
doc/afb-plugins-overview.md

index e156bd3..f67826b 100644 (file)
@@ -14,6 +14,9 @@ Author:  Manuel Bachmann
 <h2>List of plugins</h2>
 
 <p>Here are the plugins shipped in the source tree:
+ * Hello World
+ * Authentication
+ * Tic Tac Toe
  * Audio <em>(2 backends: ALSA/PulseAudio)</em>
  * Radio <em>(1 backend: RTLSDR RTL2832U)</em>
  * Media <em>(1 backend: Rygel UPnP)</em></p>
@@ -22,42 +25,66 @@ Author:  Manuel Bachmann
 
 <h2>Detail of plugins</h2>
 
+<p>### Hello World</p>
+
+<p>A sample Hello World plugin for demonstration and learning purposes.</p>
+
+<p>This plugin provides a few unauthenticated requests, all beginning with "ping" ("<em>pingSample</em>", "<em>pingJson</em>", "<em>pingFail</em>"...) to demonstrate basic binder capabilities.</p>
+
+<p>### Authentication</p>
+
+<p>An sample Authentication plugin for demonstration purposes.</p>
+
+<p>This plugin provides a few requests to demonstrate the binder's token-based security mechanism.</p>
+
+<p>Calling "<em>connect</em>" with a security token will initiate a session, calling "<em>refresh</em>" will issue a new token and invalidate the previous one, calling "<em>logout</em>" will invalidate all tokens and close the session.</p>
+
+<p>### Tic Tac Toe</p>
+
+<p>A sample Tic Tac Toe game plugin.</p>
+
+<p>This plugin provides an interactive Tic Tac Toe game where the binder returns the grid as a JSON response. </p>
+
 <p>### Audio</p>
 
 <p>A sample Audio plugin with 2 backends:
  * ALSA (mandatory)
  * PulseAudio (optional)</p>
 
+<p>This plugin is able to initialize a specific soundcard, define volume levels, channels (mono/stereo...), mute sound, and play a 22,050 Hz PCM stream.</p>
+
 <p><em>(if PulseAudio development libraries are not found at build time, only ALSA will be available)</em></p>
 
 <p><em>(if a PulseAudio server is not found at runtime, the plugin will dynamically fall back to ALSA)</em></p>
 
 <p><em>(a specifc backend can be forced by using this syntax before running afb-daemon : <strong>$ export AFB</em>AUDIO<em>OUTPUT=Alsa</strong>)</em></p>
 
-<p>This plugin is able to initialize a specific soundcard, define volume levels, channels (mono/stereo...), mute sound, and play a 22,050 Hz PCM stream.</p>
-
-<p>Sample applications: <strong><a href="https://github.com/iotbzh/afb-radio">afb-radio</a></strong></p>
-
 <p>### Radio</p>
 
 <p>A sample AM/FM Radio plugin with 1 backend:
  * RTLSDR - Realtek RTL2832U dongles (mandatory)</p>
 
-<p><em>(if rtlsdr development libraries are not found at build time, this plugin will not be built)</em></p>
-
-<p>This plugin is able to initialize specific RTL2832U dongles, switch between AM/FM modes, define frequency, mute sound, and play sound (by using the <strong>audio</strong> plugin).</p>
+<p>This plugin is able to initialize specific RTL2832U dongles, switch between AM/FM modes, define frequency, mute sound, and play sound (if combining with the <strong>audio</strong> plugin).</p>
 
-<p>Sample applications: <strong><a href="https://github.com/iotbzh/afb-radio">afb-radio</a></strong></p>
+<p><em>(if rtlsdr development libraries are not found at build time, this plugin will not be built)</em></p>
 
 <p>### Media</p>
 
 <p>A sample Media Server plugin with 1 backend:
  * Rygel</p>
 
-<p><em>(if GUPnP/GSSDP development libraries are not fund at build time, this plugin will not be built)</em></p>
+<p><em>(if GUPnP/GSSDP development libraries are not found at build time, this plugin will not be built)</em></p>
 
 <p>This plugin is able to detect a local Rygel UPnP media server, list audio files, select an audio file for playback, play/pause/seek in this file, upload an audio file to the server.</p>
 
-<p>Sample applications: <strong><a href="https://github.com/iotbzh/afb-radio">afb-radio</a></strong></p>
+<hr />
+
+<p><br /></p>
+
+<p>Sample command-line applications: <em>afb-client-demo</em> (built by default)</p>
+
+<p>Sample HTML5 applications: <strong>test/*.html</strong>, <strong><a href="https://github.com/iotbzh/afb-client">afb-client</a></strong>, <strong><a href="https://github.com/iotbzh/afb-radio">afb-radio</a></strong></p>
+
+<p>Sample Qt/QML applications: <em>test/token-websock.qml</em></p>
 </body>
 </html>
index 3c4857d..a9728e1 100644 (file)
@@ -3,42 +3,69 @@
     Date:    30 May 2016
     Author:  Manuel Bachmann
 
+
 ## List of plugins
   Here are the plugins shipped in the source tree:
+ * Hello World
+ * Authentication
+ * Tic Tac Toe
  * Audio _(2 backends: ALSA/PulseAudio)_
  * Radio _(1 backend: RTLSDR RTL2832U)_
  * Media _(1 backend: Rygel UPnP)_
 
 All plugins may not be built, depending on the development libraries present on the system at build time.
 
+
 ## Detail of plugins
 
+
+ ### Hello World
+
+A sample Hello World plugin for demonstration and learning purposes.
+
+This plugin provides a few unauthenticated requests, all beginning with "ping" ("_pingSample_", "_pingJson_", "_pingFail_"...) to demonstrate basic binder capabilities.
+
+
+ ### Authentication
+
+An sample Authentication plugin for demonstration purposes.
+
+This plugin provides a few requests to demonstrate the binder's token-based security mechanism.
+
+Calling "_connect_" with a security token will initiate a session, calling "_refresh_" will issue a new token and invalidate the previous one, calling "_logout_" will invalidate all tokens and close the session.
+
+
+ ### Tic Tac Toe
+
+A sample Tic Tac Toe game plugin.
+
+This plugin provides an interactive Tic Tac Toe game where the binder returns the grid as a JSON response. 
+
+
  ### Audio
 
 A sample Audio plugin with 2 backends:
  * ALSA (mandatory)
  * PulseAudio (optional)
 
+This plugin is able to initialize a specific soundcard, define volume levels, channels (mono/stereo...), mute sound, and play a 22,050 Hz PCM stream.
+
 _(if PulseAudio development libraries are not found at build time, only ALSA will be available)_
 
 _(if a PulseAudio server is not found at runtime, the plugin will dynamically fall back to ALSA)_
 
 _(a specifc backend can be forced by using this syntax before running afb-daemon : **$ export AFB_AUDIO_OUTPUT=Alsa**)_
 
-This plugin is able to initialize a specific soundcard, define volume levels, channels (mono/stereo...), mute sound, and play a 22,050 Hz PCM stream.
-
-Sample applications: **[afb-radio](https://github.com/iotbzh/afb-radio)**
 
  ### Radio
 
 A sample AM/FM Radio plugin with 1 backend:
  * RTLSDR - Realtek RTL2832U dongles (mandatory)
 
-_(if rtlsdr development libraries are not found at build time, this plugin will not be built)_
+This plugin is able to initialize specific RTL2832U dongles, switch between AM/FM modes, define frequency, mute sound, and play sound (if combining with the **audio** plugin).
 
-This plugin is able to initialize specific RTL2832U dongles, switch between AM/FM modes, define frequency, mute sound, and play sound (by using the **audio** plugin).
+_(if rtlsdr development libraries are not found at build time, this plugin will not be built)_
 
-Sample applications: **[afb-radio](https://github.com/iotbzh/afb-radio)**
 
  ### Media
 
@@ -49,5 +76,12 @@ _(if GUPnP/GSSDP development libraries are not fund at build time, this plugin w
 
 This plugin is able to detect a local Rygel UPnP media server, list audio files, select an audio file for playback, play/pause/seek in this file, upload an audio file to the server.
 
-Sample applications: **[afb-radio](https://github.com/iotbzh/afb-radio)**
 
+---
+<br />
+
+Sample command-line applications: _afb-client-demo_ (built by default)
+
+Sample HTML5 applications: **test/*.html**, **[afb-client](https://github.com/iotbzh/afb-client)**, **[afb-radio](https://github.com/iotbzh/afb-radio)**
+
+Sample Qt/QML applications: *test/token-websock.qml*