summaryrefslogtreecommitdiffstats
path: root/doc/afb-plugins-overview.md
diff options
context:
space:
mode:
Diffstat (limited to 'doc/afb-plugins-overview.md')
-rw-r--r--doc/afb-plugins-overview.md48
1 files changed, 41 insertions, 7 deletions
diff --git a/doc/afb-plugins-overview.md b/doc/afb-plugins-overview.md
index 3c4857dd..a9728e1f 100644
--- a/doc/afb-plugins-overview.md
+++ b/doc/afb-plugins-overview.md
@@ -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*