From 89db34aa9ee65a42ce242e95f342a7323c1e0e1b Mon Sep 17 00:00:00 2001 From: Manuel Bachmann Date: Mon, 30 May 2016 12:43:30 +0200 Subject: [PATCH] Update plugins documentation (helloworld, auth, tictactoe) Add doc. for Hello World, Authentication, Tic Tac Toe. Fix a few typos and formatting issues. Signed-off-by: Manuel Bachmann --- doc/afb-plugins-overview.html | 47 +++++++++++++++++++++++++++++++++--------- doc/afb-plugins-overview.md | 48 ++++++++++++++++++++++++++++++++++++------- 2 files changed, 78 insertions(+), 17 deletions(-) diff --git a/doc/afb-plugins-overview.html b/doc/afb-plugins-overview.html index e156bd3c..f67826b9 100644 --- a/doc/afb-plugins-overview.html +++ b/doc/afb-plugins-overview.html @@ -14,6 +14,9 @@ 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)

@@ -22,42 +25,66 @@ Author: Manuel Bachmann

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 AFBAUDIOOUTPUT=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

-

### 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 (by using the audio plugin).

+

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).

-

Sample applications: afb-radio

+

(if rtlsdr development libraries are not found at build time, this plugin will not be built)

### Media

A sample Media Server plugin with 1 backend: * Rygel

-

(if GUPnP/GSSDP development libraries are not fund at build time, this plugin will not be built)

+

(if GUPnP/GSSDP development libraries are not found at build time, this plugin will not be built)

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

+
+ +


+ +

Sample command-line applications: afb-client-demo (built by default)

+ +

Sample HTML5 applications: test/*.html, afb-client, afb-radio

+ +

Sample Qt/QML applications: test/token-websock.qml

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)** +--- +
+ +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* -- 2.16.6