Commit Graph

4465 Commits

Author SHA1 Message Date
chme
80e0808b18 [mpd] command 'status': report current/next if player is stopped 2017-12-22 11:24:43 +01:00
chme
4d995c8501 [spotify] Add missing init/destroy of status_lck mutex 2017-12-22 09:53:00 +01:00
chme
210e6228bc [spotify] Prevent duplicate scan on startup
The logged_in callback is called during relogin in the initscan.
Additionally initscan explicitly starts the scan leading to a duplicate
scan run.
To prevent this from happening removed the scan call in the logged_in
callback and split the spotify_login_user function into a private
function (without scan) and a public function (with scan).
2017-12-18 22:46:09 +01:00
ejurgensen
94a3d67559 [docs] Update README.md with web interface instructions 2017-12-18 21:55:20 +01:00
ejurgensen
37e923bf74
Merge pull request #467 from chme/logging
[logger] Return early if severity or domain do not match
2017-12-17 16:01:44 +01:00
chme
4f811ff6e0 [logger] Return early if severity or domain do not match 2017-12-17 12:41:21 +01:00
chme
83d8a55701 [spotify] Make libspotify login synchronous
Scanning saved albums/playlists over the webapi requires a logged in
libspotify session. To ensure, that the login process finished before
starting the webapi scan, the login needs to be synchronous.
2017-12-17 09:39:45 +01:00
chme
64f574cd83 [spotify] Fix logdomain in log statements 2017-12-17 09:15:32 +01:00
chme
471eb9db46 [db] Do not trigger a DATABASE event if db_directory_enable_bypath does
not change the library
2017-12-17 09:13:09 +01:00
chme
1b8b0b2d83 [spotify] Only scan saved albums and playlist if webapi token is valid
and libspotify login succeeded

Each saved track needs to be registered with libspotify otherwise
playback of this track will fail. This makes sure we only add saved
tracks to the library that are playable. 

Also attempt a rescan if libspotify login succeeded. With this change it
does not matter if a user first logs into libspotify and then authorizes
the webapi access or the other way around.
2017-12-17 09:12:01 +01:00
chme
418f808d2e [spotify] Remove scanning playlists with libspotify 2017-12-17 08:08:55 +01:00
ejurgensen
b428760599 [scan] Fix for issue #463, fname not getting updated on file rename
Also modify code style of _enable/_disable functions in db.c
2017-12-16 23:09:29 +01:00
ejurgensen
387b79496d
Merge pull request #464 from chme/mpd_noidle
[mpd] Fix 'noidle' command handling
2017-12-16 17:39:30 +01:00
chme
4034582f1a [mpd] Fix 'noidle' command handling
The noidle command did not prevent idle events to be sent to the client
directly when they occured. This resulted e. g. in M.A.L.P. in errors
trying to play an album from the library)
2017-12-16 08:19:45 +01:00
chme
5a57a564a4 [db] Instantly notify about rating changes 2017-12-15 19:08:32 +01:00
chme
e00a4a1995 [cache] Do not rebuild cache on rating change events 2017-12-15 19:08:32 +01:00
chme
e7d6fbb9fc [listener/etc.] Rename LISTENER_STICKER to LISTENER_RATING
Unit there is a real sticker implementation, make it clear, that the
event is only triggered for rating changes.
2017-12-15 19:08:32 +01:00
chme
c00febd8ac [library] remove initialization of globals to zero 2017-12-15 19:08:32 +01:00
chme
9f1568349b [mpd] minor cleanup 2017-12-15 19:08:32 +01:00
chme
9165cfc5da [mpd] Return virtual path to clients in 'sticker find' 2017-12-15 19:08:32 +01:00
chme
dec625ec30 [mpd] Implement 'sticker find' with operator/value parameters 2017-12-15 19:08:32 +01:00
chme
b17e50438c [db] Comment for DB_FILES_RATING_MAX 2017-12-15 19:08:32 +01:00
chme
7b04787fc1 [mpd] Check upper bound for sticker 'rating' 2017-12-15 19:08:32 +01:00
chme
7a916c84a2 [mpd] Refactor sticker commands 2017-12-15 19:08:32 +01:00
chme
ef52f4ddc0 Rework user rating updates 2017-12-15 19:08:32 +01:00
Wolfgang Scherer
bbc5d3787e [mpd] rating sticker translator 2017-12-15 19:08:32 +01:00
ejurgensen
7c12ea1209
Merge pull request #461 from chme/addqueueitem
[db] Fix adding urls to the queue that are not in the library
2017-12-13 23:24:55 +01:00
chme
88f7d4601d [db] Fix adding urls to the queue that are not in the library 2017-12-13 22:02:38 +01:00
chme
4ebc6da0ee [ws] Notify about player status, options, volume, queue changes 2017-12-13 21:44:33 +01:00
chme
5cb33189df [jsonapi] New endpoints for player.html
- control playback and retrieve player status
- get current queue
- set shuffle, repeat, consume mode
- set volume
2017-12-13 21:44:33 +01:00
ejurgensen
10233dcad3 [chromecast] Check for null address from getifaddrs() (credit @yantoz, issue #455) 2017-12-10 19:50:57 +01:00
ejurgensen
55e4350b18
Merge pull request #454 from chme/queue
Unique queue item ids and proper implementation of mpd commands 'plchanges' and 'plchangesposid'
2017-12-09 18:31:36 +01:00
chme
0b07cff633 [player] Only update queue item in metadata_update_cb on changed
metadata. This avoids an unnecessary update query and queue change
notification (leading to clients requesting the unchanged queue).
2017-12-09 11:01:41 +01:00
chme
2ee02d407b [mpd] Add support for version and ranges to 'plchanges' and
'plchangesposid'
2017-12-09 11:01:41 +01:00
chme
912635e737 [db] Update queue_version for changed queue items 2017-12-09 11:01:41 +01:00
chme
91573752d9 [db] Update v19.05 to v19.06
- queue table: define id column as AUTOINCREMENT (requires drop+create)
- queue table: add column queue_version
- files table: update http-stream virtual paths (constructing the
virtual path for http-streams changed in pr #449, this migrates existing
databases to be consistent to the newly created paths)
2017-12-09 11:01:41 +01:00
chme
7083c65314 [main/httpd] Configurable web root directory over cli parameter 2017-12-03 10:46:50 +01:00
chme
8776aa36e2 [player] Trigger SPEAKER event after finishing the command speaker_set 2017-12-03 10:46:03 +01:00
chme
d839e8cabb [listener/player] Adjust code comment for LISTENER_SPEAKER event 2017-12-03 10:46:03 +01:00
chme
00e9a4a5d5 [htdocs] Use minified version of vue.js 2017-12-03 10:46:03 +01:00
chme
1689182432 [player/raop] Trigger the SPEAKER event if device verification
succeeded/failed
2017-12-03 10:46:03 +01:00
chme
24782f5d45 [htdocs] List outputs in web interface and support device verification 2017-12-03 10:46:03 +01:00
chme
eece4ce768 [ws] Listen and notify about output events 2017-12-03 10:46:03 +01:00
chme
80c1ef3114 [jsonapi] New endpoints for outputs and device verification 2017-12-03 10:46:03 +01:00
chme
f696229fff [player/dacp/mpd] Pass additional information to speaker enum callback 2017-12-03 10:46:03 +01:00
Wolfgang Scherer
b363c0dac2 [mpd] Consistent playlist name setup (#450) 2017-12-02 16:45:11 +01:00
Wolfgang Scherer
bb451802d2 [db] Queue notification when metadata changes (#448) 2017-12-02 16:44:29 +01:00
Wolfgang Scherer
0d006904da [scan] Consistent HTTP virtual paths (#449) 2017-12-02 16:44:01 +01:00
ejurgensen
617a0992d0 [http] Align indentation with the rest of the code 2017-11-27 17:53:59 +01:00
Wolfgang Scherer
8f899f2051 [http] .pls playlists (#447) 2017-11-27 09:48:17 +01:00