Commit Graph

24 Commits

Author SHA1 Message Date
chme
eaab6f887b [spotify] Decoupling of the spotify webapi from libspotify integration
Separation of scanning Spotify songs into the library (spotify_webapi.c)
and playing Spotify songs through libspotify (spotify.c).
2018-05-09 22:47:37 +02:00
chme
85257788ba [jsonapi] Add cache control header to count endpoint and fix
not-modified-since check to check against the last db update instead of
last start time
2018-05-09 22:29:52 +02:00
chme
41e99ca3cd [db/mpd/jsonapi] Include artist and album count in filecount query; add
count endpoint and additional metadata to JSON API; remove unused
artist-/album-count queries
2018-05-09 22:29:52 +02:00
chme
f167e975c2 Unify naming of "order by" clause in structs/table 2018-04-15 22:11:40 +02:00
chme
d15018cb99 [httpd/jsonapi] Add cache control headers to some json api endpoints
Adds utility functions to httpd.c for checking the request headers for
either an "If-None-Match" or an "If-Not-Modified-Since" headers. If the
header value is found and it matches the current value for the requested
resource, we return early with a http response code 403 (Not Modified).
If the request header value is not present or does not match we add the
current ETag/Last-Modified values to the response headers and process
the request normally.
2018-04-15 22:11:40 +02:00
chme
99a812ad9a [jsonapi] Add new endpoints for artist/album/playlist/seek 2018-04-15 22:11:40 +02:00
chme
33459bd4ef [jsonapi] Extend search endpoint to support queries in smartpl language 2018-04-15 22:11:40 +02:00
chme
a78ed20848 [jsonapi] Add new JSON api endpoints
Allows
- browsing artists/albums/playlists
- search
- moving a queue item
2018-03-14 19:22:13 +01:00
chme
d1b47465a8 [jsonapi] Disable gzipping response
An attempt to improve the performance of the artists and albums
endpoints.
2018-03-14 19:21:57 +01:00
ejurgensen
b1c9518a78 [-] Make json-c a required library
Already kind of was required, as it was required by Spotify, Chromecast and the web api
2018-02-22 21:49:11 +01:00
chme
1212723072 [jsonapi] Do not set "DAAP-Server" header in json api response 2018-02-15 19:19:13 +01:00
chme
0e9feac829 [jsonapi] Rework outputs endpoint and strictly match uris by request
method
2018-02-15 19:19:13 +01:00
chme
a98713ba49 [jsonapi] Return proper HTTP status codes 2018-02-11 10:55:11 +01:00
chme
93879c6f90 [player] Refactor speaker enumerate callback 2018-02-10 09:04:18 +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
chme
80c1ef3114 [jsonapi] New endpoints for outputs and device verification 2017-12-03 10:46:03 +01:00
ejurgensen
3d5aeda7aa [httpd] Implement "trusted_networks" option
Some clients aren't really capable of authenticating + some users probably
don't want to enter a password for the web interface. This option allows
clients on for instance the local network to connect without authentication.
2017-11-12 21:29:57 +01:00
ejurgensen
473a29ef8a [httpd] More refactoring, reduce code duplication in the httpd_xxx modules 2017-11-11 22:20:09 +01:00
ejurgensen
709d99d4c4 [httpd] Major refactor of the httpd request handling
Make it easier to add new parameters later, get rid of redundant code, clean
up, align between httpd_xxx modules and introduce new bugs. Yes, the refactor
got a bit out of hand.
2017-11-11 22:20:09 +01:00
chme
f82b22042f [lastfm/jsonapi/ws/main] New JSON-API-endpoints for Last.fm integration
In preparation for the new endpoints the following refactorings where
done in lastfm.c:
- Initialize lastfm.c in main.c instead of on first scrobble attempt
(necessary to retrieve the correct lastfm status)
- Return error messages if login attempt failed
- Add api function for status and logout
- Notify about Last.fm status changes

Unrelated changes in lastfm.c are:
- Refactoring of request_post
- Add request parameters sorted alphabetically and remove calling the
sort method in request_post
2017-10-28 12:22:45 +02:00
chme
6c45b808c0 [httpd/jsonapi] Fix unused variables when compiling without (#421)
--enable-spotify
2017-09-16 12:37:32 +02:00
ejurgensen
507bec8b8e [-] Fixup ifdef WEBSOCKET->HAVE_LIBWEBSOCKETS that I missed 2017-09-16 01:25:47 +02:00
ejurgensen
ef6f465aa8 [httpd_jsonapi] Add missing include 2017-09-16 00:10:26 +02:00
chme
0abf195347 [httpd/json] Add json api to httpd 2017-09-15 07:07:17 +02:00