summaryrefslogtreecommitdiffstats
path: root/plugins
AgeCommit message (Collapse)AuthorFilesLines
2016-02-17Audio plugin: choose between Pulse/ALSA at runtimeManuel Bachmann3-3/+15
If the AFB_AUDIO_OUTPUT environment variable is defined to "Pulse/Alsa", it will try to initialize the given backend (still falling back to Alsa for now). Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2016-02-16afm-main-plugin: fix bugJosé Bollo1-1/+1
Change-Id: Ia39f4d38b6ace8fba9731bf1f0c700487a0e8063 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-02-15afm-main-plugin: adds mode autoJosé Bollo1-1/+2
Change-Id: Ic707b52dd6029bd60242f03fcc04b6596f1cb017 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-02-14adds mode managementJosé Bollo1-3/+43
Change-Id: I73240e346a06924c314961871e789c69e279cb48 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-02-09afm-main-plugin: utils-jbus: fix bug that blockedJosé Bollo1-3/+11
Change-Id: Id31e2c93a1a128d768f9a55fdc739b0067b85121 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-02-09afm-main-plugin: Adds verbose promptsJosé Bollo1-29/+36
Change-Id: I85f1ca065cd659f974f699ab6b5540afd89bf5eb Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-02-09afm-main-plugin: improves error reportingJosé Bollo1-1/+4
Change-Id: I766f96f74434dfc0ec578e20769f91ce0796363e Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-01-26afm-plugin: update utils-jbus versionJosé Bollo1-1/+3
Change-Id: Iafc6b6776bf10722a6217678c5a6847cc3fb0bfb Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-01-26Finalize Media Plugin upload API with full transfer logicManuel Bachmann1-23/+20
We now really transfer the file to the Media Server (Rygel e.g.) when the initial POST upload function has succeeded. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2016-01-26Merge branch 'master' of github.com:iotbzh/afb-daemonFulup Ar Foll3-9/+19
2016-01-26fixe getPostPath for afm-mail pluginFulup Ar Foll2-24/+22
2016-01-26Fix getPostFile() upload function, return bare JSON in listManuel Bachmann3-9/+19
getPostFile() does not fail anymore when creating a new folder (return value was incorrect). Media Plugin list API now directly returns JSON, with track list array indexed as "list". Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2016-01-26Merge branch 'master' of github.com:iotbzh/afb-daemonFulup Ar Foll3-27/+246
2016-01-26Fixed Post File UploadFulup Ar Foll1-8/+4
2016-01-26afm-main: adds install/uninstallJosé Bollo3-27/+246
This commits introduces several evolutions. - the install and uninstall api are now available - some responses are embedded in objects - utils-jbus is updated to a more upstream version Change-Id: Ica37ae4b36e6ea0c7e824b730cc157040cdd77ce Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-01-26GetPostPath OngoingFulup Ar Foll1-1/+1
2016-01-25Media Plugin list API now returns a JSON objectManuel Bachmann1-5/+19
We now return a JSON object instead of an arbitrary string with the "list" API. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2016-01-25Fix Media Plugin refresh, add seek APIManuel Bachmann3-15/+62
We no longer fail if init() is called multiple times (typical refresh case). We now support a "seek?value=<seconds>" API. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2016-01-23afm-main-plugin: fix fatal error on initialisationJosé Bollo1-2/+2
The code was asking to disconnect from dbus even if not connected. The library dbus aborts the program in that case. Ouch... That is now taken into account and don't fail more. Change-Id: I088ef547f6a415e0adb795ac2e64233fd45dc945 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-01-22Implement Media Plugin upload API, update README.mdManuel Bachmann3-25/+212
Media Plugin now supports a "upload?value=<file>" API. Add Media Plugin requirements to README.md. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2016-01-21Add choose, play, pause, stop to Media PluginManuel Bachmann4-20/+420
We can now play/pause/stop a track after having chosen its index number (default is 0). Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2016-01-20Fix Media Plugin content list APIManuel Bachmann4-8/+36
Listing content had various pointer-related issues. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2016-01-11Add Media PluginManuel Bachmann6-0/+355
Add a Media Plugin, based off Rygel (UPnP), with only an initialization and a "list" function for now. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2016-01-11Audio Plugin: add PulseAudio supportManuel Bachmann10-104/+693
If PulseAudio development libraries are present, Audio plugin will now support it. It may still fall back to ALSA if a PulseAudio server is not found at runtime. PulseAudio backend supports multiple clients using one audio adapter. (+ various fixes and style improvements) Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2016-01-06Fix Audio/Radio reinitialization issueManuel Bachmann2-2/+4
Audio and Radio plugins init() functions were re-creating a new client context each time, but it is actually unwanted as afb-radio <TokenRefresh> widgets uses this function to initialize AND refresh the context. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2016-01-05Fix set_mute in corner casesManuel Bachmann1-3/+5
Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2015-12-29Fix mute status for Porter/KoelschManuel Bachmann1-3/+10
Mute status on Porter/Koelsch is reversed, take this into account. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2015-12-29Switch to unique token modelFulup Ar Foll2-4/+4
Token/Session Plugin is now able to issue a globally-valid token (re-useable with all Plugins, so that an application using multiple plugins is not forced to manage multiple tokens anymore). Adapt Audio & Radio Plugins to this model (init functions do not create a token anymore, check for a prior existing one). Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh> Author: Fulup Ar Foll <fulup@iot.bzh> Author: Manuel Bachmann <manuel.bachmann@iot.bzh>
2015-12-28Fix Audio plugin loading, mute on Porter/KoelschManuel Bachmann3-9/+27
Audio plugin was crashing due to new client context model misuse. Muting/demuting sound did fail on Porter/Koelsch boards, because their audio cards do not obey standards found on desktop systems. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2015-12-28Fix plugin loading logic, radio plugin loadingManuel Bachmann1-1/+1
We should not free() a dlopened pointer. Internal plugin handle was renamed, adapt radio plugin. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2015-12-24Fixed Client Session Context by PluginFulup Ar Foll4-2/+153
2015-12-23Add plugin handle into request, pass it to free callbackManuel Bachmann2-25/+14
We need the global handle in requests, and in the free function. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2015-12-23Merge origin/masterFulup Ar Foll3-5/+16
2015-12-23Restore Previous functionalities with a unique TokenFulup Ar Foll1-1/+11
2015-12-22New Session Model [compile but not tested]Fulup Ar Foll3-34/+23
2015-12-22afm-main: update adress and bug fixJosé Bollo3-5/+16
Change-Id: I01776950ddb1328957a8f59f7316aab1ad223f9a
2015-12-22Centralize dependencies, add D-Bus dep. to README.mdManuel Bachmann2-8/+1
README.md now mentions D-Bus. Checking dbus presence is now done at the same place as json-c, libmicrohttpdd... Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2015-12-22Audio API: manage multiple-channel volumeManuel Bachmann4-21/+68
You can now set the volume for multiple channels independantly by using the "value=<1>,<2>..." syntax. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2015-12-22Fix "no plugins" detection, rename HelloWorld APIManuel Bachmann1-1/+1
afb-daemon now gracefully exits if no plugins are present. HelloWorld's API has been renamed to "hello". Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2015-12-21Fix naming issue with DBusJosé Bollo1-1/+1
Change-Id: I369b4905c7d53669a0ebd581759a2aa67ff6b9c6
2015-12-21Add plugin for the framework afm-mainJosé Bollo5-0/+873
Change-Id: Ib0bfba52aac8a60afc9a80a564202689e28b18ff
2015-12-21Export getFileUpload to helper-api.cFulup Ar Foll1-9/+6
2015-12-21Merge origin/masterFulup Ar Foll5-5/+21
2015-12-21Hack --plugins=pathFulup Ar Foll2-104/+46
2015-12-21Fix Audio API on Renesas Porter/Koelsch boardsManuel Bachmann1-0/+13
Porter/Koelsch do not expose a standard "Master" playback mixer on their default interface, as it is common with desktop audio cards. Add a bit of discovery logic for this. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2015-12-21Fix Radio and Audio plugin symbolsManuel Bachmann4-5/+8
radio-api/audio-api.so were not valid, because they were not linked correctly with librtlsdr/ALSA. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2015-12-21FixeFulup Ar Foll1-1/+1
2015-12-21Switch to a plugin modelManuel Bachmann10-22/+49
Each API now compiles to a ".so" file, which gets searched for in the "${libdir}/afb" directory at startup. We can now load an arbitrary number of plugins (> 10). Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2015-12-21Untie Radio and Audio APIsManuel Bachmann6-118/+197
Radio and Audio API functions do not cross-call themselves directly anymore ; this is necessary to have independent plugin binaries (.so) in the near future. (PS : audio buffer securization is WIP) Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2015-12-21Post File Working in Most casesFulup Ar Foll3-70/+111