summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2016-03-16Add warning detection and improveJosé Bollo10-63/+58
Change-Id: Id4fc86b86d55aac578d84b4d2357c1a2e600c58b Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-03-16http-svc: switch to epoll modelJosé Bollo1-4/+23
This prepares to handle notification. It has the side effect to make the server mono-threaded. This might be temporarily or forever, depending on next studies. Change-Id: I8a8b2b68c78c33b3ca861180bf120cf09a24b05e Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-02-23Fix horrendously wrong Volume check in Audio pluginManuel Bachmann1-1/+1
Volume bound check was always false. Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2016-02-23refactor cookie to add #portJosé Bollo3-3/+5
Change-Id: Ieac2936413a59b80db66e9ba69d586d7fa481ef8 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-02-18main: fix parsing of option aliasJosé Bollo1-4/+8
Change-Id: Ib0eb70e94fabc61ef6ceb22bafa6006d759a7984 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-02-17Allow Multiple TokenCreate when --token=""Fulup Ar Foll1-1/+1
2016-02-17Merge origin/masterFulup Ar Foll11-107/+209
2016-02-17Allow Multiple TokenCreate when --token=""Fulup Ar Foll2-15/+17
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-15add option for signaling readynessJosé Bollo2-0/+14
Change-Id: I22e64d41f51683c6c15df77b546e3cc98f427eec Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-02-15rest-api: fix verbosity of upload messageJosé Bollo1-1/+2
Change-Id: Ie9f2e513bf44b46eabf644792cc7ad0d04f10755 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-02-14adds mode managementJosé Bollo4-9/+49
Change-Id: I73240e346a06924c314961871e789c69e279cb48 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-02-11session: reset the timestamp on refreshJosé Bollo1-0/+4
Change-Id: Id685bcfa91791427a92aa69eb70cfcd1f8766e46 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-09Adds a new option: modeJosé Bollo2-29/+49
The option mode can have 3 values: local, remote, global. It indicates wether the daemon serves: - loopback (local) - external interface (remote) - both (global) Change-Id: Ibd6c25da692e607b8e0ce793da11cca88db050a2 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-02-08avoid use of keyword "private"José Bollo2-16/+16
Change-Id: I7efe1ce2e6a49b6211298e509ae0b21573d6776a Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-02-08typo: minor improvementJosé Bollo1-2/+2
Change-Id: Iaf16a80d3fcb8887260f351448c68fd91c9387fe Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-02-08removes unused smack fieldJosé Bollo2-12/+0
Change-Id: I3388fa366c44c96d2ebf37ba57ed1b3acce82869 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-02-02.gitignore: ignore more filesJosé Bollo1-0/+3
Change-Id: Id4b69276233a8119d67cfb2bb951279f31a16694 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-01-28rest-api: catch error from pluginRegisterFct()Yannick Gicquel1-2/+4
in case NULL is returned, log an error and do not register the plugin. Signed-off-by: Yannick Gicquel <yannick.gicquel@iot.bzh>
2016-01-28rest-api: fixup AFB_plugins allocated referencesYannick Gicquel1-5/+4
plugins handles pointer to AFB_plugin structures which are located in each dynamically loaded plugin. Signed-off-by: Yannick Gicquel <yannick.gicquel@iot.bzh>
2016-01-27Fix Error MessageFulup Ar Foll1-1/+1
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 Foll4-10/+20
2016-01-26fixe getPostPath for afm-mail pluginFulup Ar Foll4-105/+78
2016-01-26Fix getPostFile() upload function, return bare JSON in listManuel Bachmann4-10/+20
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 Foll4-80/+103
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 Foll3-1/+14
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-25main: minor improvement of daemonizingJosé Bollo1-1/+1
Change-Id: Iba9cb6ae3e18524a99cb82e521b4ca1aeec8d972 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-01-25http-svc: refactor of httpdLoopJosé Bollo2-14/+5
Reading stdin drives to problems when afb-daemon is launched with its input either closed or connected to /dev/null. Conversely, launching afb-daemon with the option --daemon is not always possible because it really daemonizes itself what forbids to control it or its group directly. Change-Id: I182741226762110809e50d68154f5d29d133303b Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-01-25indentJosé Bollo1-1/+1
Change-Id: Icea77134a93c643a39bd6fd1d19a7820f56fe230 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2016-01-25main: frankly removes smack argumentJosé Bollo1-8/+0
Because setting smack requires capabilities, it is better to let the system configure correctly afb-daemon context: smack, capabilities, groups, user. Change-Id: I49edffd38216e735b36b7e2c6c4554fbd8e98f37 Signed-off-by: José Bollo <jose.bollo@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 Bachmann5-27/+215
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 Bachmann7-2/+362
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-11Update README.md (PulseAudio optional dependency)Manuel Bachmann1-1/+2
Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
2016-01-11Audio Plugin: add PulseAudio supportManuel Bachmann12-115/+703
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-07Update README.md (plugins, code sample)Manuel Bachmann1-43/+42
Updated : - plugins are now implemented ; - data structures in code sample have changed ; - various typos and style details. 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>