Matt Lee ae7d4359f7 top users script for jaiden, fixes 8 vuotta sitten
..
nowplaying 47ba25a3df Remove 'NULL' insertions at nowplaying 13 vuotta sitten
submissions 6bc68be866 Change all $_GET to $_REQUEST 12 vuotta sitten
tests 19c4fe1816 Move to Composer for dependency management. 9 vuotta sitten
utils b0edc78369 Finish code cleanup under gnukebox/. 13 vuotta sitten
.htaccess 20b7a94edb rename projects 15 vuotta sitten
AUTHORS 6d7c13f884 newline at the end of the file 15 vuotta sitten
README 51167239ce removed libre.fm branding 15 vuotta sitten
auth-utils.php 2501f8ba75 Clean up code in gnukebox/auth-utils.php 13 vuotta sitten
composer.json 19c4fe1816 Move to Composer for dependency management. 9 vuotta sitten
composer.lock 19c4fe1816 Move to Composer for dependency management. 9 vuotta sitten
database.php 19c4fe1816 Move to Composer for dependency management. 9 vuotta sitten
display.php a87a28ad5f current place of source code, otherwise people think no one is working on source code :-( 13 vuotta sitten
help.php e553cfaf3f Fix installer conf generation. Update gnukebox help to use current client list. 9 vuotta sitten
index.php 9e9b3b46b6 Change all $_GET to $_REQUEST 12 vuotta sitten
install.php 19c4fe1816 Move to Composer for dependency management. 9 vuotta sitten
musicbrainz.php 78b3e48683 Fix table/field names in GNUkebox's SELECT queries. 13 vuotta sitten
scrobble-utils.php fa67268275 Remove spurious closing bracket from SQL. 8 vuotta sitten
stats.php 293b41823a fix typo 8 vuotta sitten
temp-utils.php 192fc6bf18 Clean up code in gnukebox/temp-utils.php. 13 vuotta sitten
top-users.php ae7d4359f7 top users script for jaiden, fixes 8 vuotta sitten
version.php 816088f265 Remove closing tag from gnukebox/version.php. 13 vuotta sitten

README

This is the GNU FM server, compatible with the last.fm API.

To install visit http://yourserver.com/install.php

As things stand you'll need the ADODB module installed.

Web services API:

To test the authentication API once the server is set up:

1. Navigate to /2.0/?method=auth.gettoken&api_key=01234567890123456789012345678901&api_sig=01234567890123456789012345678901
(The api_key and api_sig are only checked to be 32 characters long since Last.FM shared secrets cannot be checked)

2. Copy the key that is returned by the auth.gettoken method

3. Navigate to /api/auth/?api_key=01234567890123456789012345678901&token=
(Inserting the copied token into the noted place)

4. Login as testuser/password (this user is hard-coded upon database setup)

5. Close the browser when requested

6. Navigate to /2.0/?method=auth.getsession&api_key=01234567890123456789012345678901&api_sig=01234567890123456789012345678901&token=
(Once again substituting the old copied token into the noted place)

7. The 32-byte key returned between the tags in this response will be used in the Submissions protocol handshake

Submissions API:

The submissions API (http://www.last.fm/api/submissions) is used by clients for scrobbling tracks, authentication can either be carried out with a token from the web services API or via a token created by "md5(md5(password) + timestamp)"

To test standard authentication:

1. Visit /?hs=true&p=1.2&u=testuser&t=1238855138&a=a40dfdc5aa3012c64425a5953267b232&c=tst

2. You should receive "OK" (followed by a session id, and the URL for the now playing and submissions servers).