Commit Graph

4540 Commits

Author SHA1 Message Date
chme 3bc15e1278 [jsonapi] Add endpoint to update a tracks rating and/or play_count
New endpoint is PUT api/library/tracks/[id] and supported query
parameters are:
- rating: with values between 0 and 100
- play_count: with values "reset" (resets play_count and skip_count) or
"increment" (increments play_count)
2019-01-31 09:42:53 +01:00
chme 7d0e48eb0e [db] Add support for resetting play- and skip-count 2019-01-31 09:42:53 +01:00
chme b9a7ce7dd2 [jsonapi] Add endpoint to retrieve details for a single track by its id 2019-01-31 09:42:53 +01:00
ejurgensen c70f96fdec [db] Fix integer overflow in bind_mfi (ref issue #683)
Also drop DB_TYPE_CHAR since it's not really being used.
2019-01-30 23:34:00 +01:00
ejurgensen 7abf68200d [scan] Fix parsing of iTunes "Play Date" tag (fixes #683)
"Play Date" tag was seconds since 1904 (an Apple Mac HFS+ timestamp), not a
Unix timestamp as we assumed. Seems Apple themselves realised that wasn't a
great idea (+ not a proper plist date type), and therefore provide "Play Date
UTC" as an alternative.
2019-01-30 22:32:46 +01:00
chme 81753d44a7 [mpd] Report support for protocol version 0.20 2019-01-28 22:40:25 +01:00
chme f77c216650 [mpd] Refactor parsing filter/window arguments and add support for
"group" argument in "list" command
2019-01-28 22:40:25 +01:00
chme e015032292 [mpd] Add duration attribute with millisecond precision 2019-01-28 22:40:25 +01:00
chme 5bd94df4a6 [mpd] Add listfiles command
For now listfiles simply returns the same result as lsinfo (no support
for listing files not part of the library)
2019-01-28 22:40:25 +01:00
chme 937d1e3f5f [db] Add "group" attribute to query_params and allow grouping files 2019-01-28 22:40:25 +01:00
Christian Meffert c7e65c57e1
Merge pull request #680 from chme/smartpl_fix_before
Fix smart playlist queries for date fields compared with "before"
2019-01-28 20:57:46 +01:00
chme 06aaacbe8f [smartpl] Fix wrong where clause for date field queries with "before"
keyword
2019-01-28 20:46:04 +01:00
ejurgensen a4b243921e
Merge pull request #678 from chme/jsonapi_files
[jsonapi] Fix error in web interface files-view
2019-01-28 17:38:31 +01:00
chme 9fff02841b [jsonapi] Fix error in web interface files-view if the library directory
end with a trailing slash
2019-01-28 15:00:18 +01:00
Christian Meffert 8e7105007b
Merge pull request #676 from tobyh/api-prev-pr
Fix API documentation for player/previous endpoint
2019-01-27 10:45:57 +01:00
tobyh d8281e351b
Fix API documentation for player/previous endpoint
s/prev/previous/
2019-01-27 20:04:38 +11:00
ejurgensen 1ae24dcf49
Merge pull request #675 from chme/player_segfault
[player] Fix segfault when getting single speaker/output by id
2019-01-26 21:49:35 +01:00
chme 238361ea25 [player] Fix segfault when getting single speaker/output by id 2019-01-26 17:50:30 +01:00
ejurgensen fbc2440ec1
Merge pull request #673 from chme/mpd_segfault
[mpd] Fix segfault
2019-01-26 16:09:05 +01:00
chme b000803fe3 [misc] Add compiler hint to check format parameters 2019-01-26 10:08:11 +01:00
chme 1f2b608d62 [mpd] Fix wrong number of format parameters for safe_asprintf
Fixes a segfault in cases where the default playlist directory config
(in the mpd section of the configuration file) was set/activated.
2019-01-26 10:07:48 +01:00
Christian Meffert 95a92b2fbf
Merge pull request #669 from chme/web
Update player webinterface (v0.4.2)
2019-01-23 10:05:50 +01:00
chme d0e11457ee [htdocs] Rebuild player web interface v0.4.2
- Updated dependencies
- Allow connecting to websocket over wss://
2019-01-23 09:51:13 +01:00
chme 54d2bdd390 [htdocs] admin web interface: use wss:// if connection is over https 2019-01-23 09:51:13 +01:00
Tyler Ball 0da24a3f90 support serving web interface via https proxy 2019-01-23 09:51:13 +01:00
ejurgensen 99b0b644a9
Merge pull request #668 from chme/jsonapi
New JSON API endpoint player/toggle and support for volume steps in endpoint player/volume
2019-01-22 21:22:55 +01:00
chme 116c315a84 [player] Rename struct spk_info to player_speaker_info 2019-01-22 17:47:15 +01:00
chme f91df003fe [README] Update JSON API documentation
- api/player/toggle
- api/player/volume
2019-01-22 09:24:14 +01:00
chme 343c583229 [jsonapi] Support changing volume by the given step (increase/decrease
volume)
2019-01-21 11:11:20 +01:00
chme db7b9c689b [player] Add command to get a single speaker info by its id 2019-01-21 11:11:20 +01:00
chme c165c55b5b [jsonapi] Add player/toggle endpoint
Toggles playback state depending on the current player state:
- playing --> pause
- paused, stopped --> play
2019-01-20 12:03:50 +01:00
ejurgensen 9cd274a503
[docs] Update install
Correct incorrect java/antlr command line argument, ref. issue #666
2019-01-17 21:24:53 +01:00
ejurgensen 741825d086 [cast] Add option to exclude speakers (closes #659) 2019-01-09 20:26:31 +01:00
chme 275c1cd563
Merge pull request #655 from chme/webinterface_dependencies
[htdocs/web-src] Update dependencies and rebuild player web interface
2019-01-05 08:40:55 +01:00
chme d45c7961af [htdocs/web-src] Update dependencies and rebuild player web interface
Fixes vulnerability in webpack-dev-server
2019-01-05 08:32:07 +01:00
chme 22cdd90a32
Merge pull request #652 from chme/webinterface_4
Update player webinterface (v0.4.0)
2019-01-05 07:53:21 +01:00
chme 4ebf77896a [htdocs] Rebuild player web interface v0.4.0
- Only add/play tracks matching the genre in the genre pages
- Add new files page
- Workaround for the issue that forked-daapd cannot pause playback for
stream or a pipe
- Listen for "database" events to properly update the library stats and
display the correct links on the top nav bar
2019-01-05 07:43:08 +01:00
chme 9198dbc8a9 [web-src] Update library stats after "database" event
Fixes missing display of audiobooks/podcasts link in top navbar after 
adding the first audiobook/podcast (library updated through inotify and 
not with a full scan)
2019-01-05 07:43:08 +01:00
chme f2ea608a49 [web-src] Stop playback if playing a stream or a pipe
forked-daapd can not pause playback from a stream or a pipe and returns 
an error and aborts playback in that case. This works around this issue 
by stopping playback if the now playing item is a stream or a pipe.
2019-01-05 07:43:08 +01:00
chme c4cfbe024f [web-src] Files view 2019-01-05 07:43:08 +01:00
whatdoineed2do/Ray b39e472e2a [web-src] genre play/add to Q uses genre track lists and not the album tracks (which may incl tracks of other genres) 2019-01-05 07:43:08 +01:00
chme 47bdff255c
Merge pull request #651 from chme/jsonapi_files
[jsonapi] Allow adding items by query language to the queue (plus some small fixes)
2019-01-05 07:41:51 +01:00
chme 98098698de [README] Update documentation for queue/items/add endpoint 2019-01-05 07:21:36 +01:00
chme fb60a05228 [jsonapi] Add support for "playback", "clear" and "shuffle" parameters
in
"queue/items/add" endpoint
2019-01-05 07:21:36 +01:00
chme 77a19a6df9 [jsonapi] Add checks for failed playback start and return error code 2019-01-02 09:51:54 +01:00
chme 0f4cbb3375 [http/jsonapi] Use strtok_r instead of strtok 2019-01-02 09:51:54 +01:00
chme 3de2418b49 [README] Add "database" event to push notification documentation 2019-01-02 09:51:54 +01:00
chme f23732945b [websocket] Support "database" notifications 2019-01-02 09:51:54 +01:00
chme b3853ef0f3 [jsonapi] Check for empty "uris" parameter in queue/items/add (prevents
a segfault) and log failed requests in error log
2019-01-02 09:51:54 +01:00
chme e3b0442fc7 [README] Add documentation for expression parameter in queue/items/add 2019-01-02 09:51:54 +01:00