Next: Introduction, Previous: (dir), Up: (dir) [Contents][Index]
This is the cl-lastfm Reference Manual, version 0.1, generated automatically by Declt version 4.0 beta 2 "William Riker" on Wed Jun 15 03:48:51 2022 GMT+0.
Next: Systems, Previous: The cl-lastfm Reference Manual, Up: The cl-lastfm Reference Manual [Contents][Index]
A Common Lisp wrapper around Last.fm 2.0 web service.
Add the projet and load it using Quicklisp:
CL-USER> (push #p"/projects/cl-lastfm/" asdf:*central-registry*)
CL-USER> (ql:quickload "cl-lastfm")
Fork, hack and run unit tests:
CL-USER> (setq lisp-unit:*print-failures* t)
CL-USER> (setq lisp-unit:*print-errors* t)
CL-USER> (setq lisp-unit:*print-summary* t)
CL-USER> (setf cl-lastfm-test::*api-key* "xxxx")
CL-USER> (lisp-unit:run-tests :all :cl-lastfm-test)
Get a LastFM API Key and make some requests:
CL-USER> (setq *api-key* "xxxxx")
CL-USER> (cl-lastfm:artist-get-info *api-key* :artist-name "U2")
The Last.fm Web Services API is described here :
http://www.lastfm.fr/api
cl-lastfm implements theses features :
[ ] album.addTags
[x] album.getInfo
[ ] album.getTags
[ ] album.removeTag
[x] album.search
[ ] artist.addTags
[x] artist.getEvents
[x] artist.getInfo
[x] artist.getSimilar
[ ] artist.getTags
[x] artist.getTopAlbums
[x] artist.getTopFans
[x] artist.getTopTags
[x] artist.getTopTracks
[ ] artist.removeTag
[x] artist.search
[ ] artist.share
[ ] auth.getMobileSession
[ ] auth.getSession
[ ] auth.getToken
[ ] auth.getWebSession
[ ] event.attend
[x] event.getInfo
[ ] event.getShouts
[ ] event.share
[x] geo.getEvents
[x] geo.getTopArtists
[x] geo.getTopTracks
[x] group.getmembers
[x] group.getWeeklyAlbumChart
[x] group.getWeeklyArtistChart
[x] group.getWeeklyChartList
[x] group.getWeeklyTrackChart
[ ] library.addAlbum
[ ] library.addArtist
[ ] library.addTrack
[x] library.getAlbums
[x] library.getArtists
[x] library.getTracks
[ ] playlist.addTrack
[ ] playlist.create
[ ] playlist.fetch
[x] tag.getSimilar
[x] tag.getTopAlbums
[x] tag.getTopArtists
[x] tag.getTopTags
[x] tag.getTopTracks
[x] tag.getWeeklyArtistChart
[x] tag.getWeeklyChartList
[x] tag.search
[x] tasteometer.compare
[ ] track.addTags
[ ] track.ban
[x] track.getInfo
[x] track.getSimilar
[x] track.getTags
[x] track.getTopFans
[x] track.getTopTags
[ ] track.love
[ ] track.removeTag
[x] track.search
[ ] track.share
[x] user.getEvents
[x] user.getFriends
[ ] user.getInfo
[x] user.getLovedTracks
[x] user.getNeighbours
[ ] user.getPastEvents
[ ] user.getPlaylists
[x] user.getRecentTracks
[ ] user.getRecommendedEvents
[x] user.getShouts
[x] user.getTopAlbums
[x] user.getTopArtists
[x] user.getTopTags
[x] user.getTopTracks
[x] user.getWeeklyAlbumChart
[x] user.getWeeklyArtistChart
[x] user.getWeeklyChartList
[x] user.getWeeklyTrackChart
A changelog is available here.
Nicolas Lamirault nicolas.lamirault@gmail.com
Next: Modules, Previous: Introduction, Up: The cl-lastfm Reference Manual [Contents][Index]
The main system appears first, followed by any subsystem dependency.
Common Lisp wrapper for the Last.fm web service.
Nicolas Lamirault <nicolas.lamirault@gmail.com>
Nicolas Lamirault <nicolas.lamirault@gmail.com>
MIT License
0.1
src (module).
Next: Files, Previous: Systems, Up: The cl-lastfm Reference Manual [Contents][Index]
Modules are listed depth-first from the system components tree.
cl-lastfm (system).
Next: Packages, Previous: Modules, Up: The cl-lastfm Reference Manual [Contents][Index]
Files are sorted by type and then listed depth-first from the systems components trees.
Next: cl-lastfm/src/package.lisp, Previous: Lisp, Up: Lisp [Contents][Index]
cl-lastfm (system).
Next: cl-lastfm/src/conditions.lisp, Previous: cl-lastfm/cl-lastfm.asd, Up: Lisp [Contents][Index]
src (module).
Next: cl-lastfm/src/specials.lisp, Previous: cl-lastfm/src/package.lisp, Up: Lisp [Contents][Index]
package.lisp (file).
src (module).
Next: cl-lastfm/src/tools.lisp, Previous: cl-lastfm/src/conditions.lisp, Up: Lisp [Contents][Index]
package.lisp (file).
src (module).
*debug* (special variable).
Next: cl-lastfm/src/lastfm.lisp, Previous: cl-lastfm/src/specials.lisp, Up: Lisp [Contents][Index]
src (module).
Previous: cl-lastfm/src/tools.lisp, Up: Lisp [Contents][Index]
tools.lisp (file).
src (module).
with-lastfm-stream (macro).
Next: Definitions, Previous: Files, Up: The cl-lastfm Reference Manual [Contents][Index]
Packages are listed by definition order.
Common Lisp wrapper to Last.fm web service.
See more explanation from the @a[http://www.lastfm.fr/api]{website}.
It has been tested under @a[http://www.sbcl.org]{SBCL}
@begin[Albums]{section}
@aboutfun{album-get-info}
@aboutfun{album-search}
@end{section}
@begin[Artists]{section}
@aboutfun{artist-get-events}
@aboutfun{artist-get-info}
@aboutfun{artist-get-similar}
@aboutfun{artist-get-top-albums}
@aboutfun{artist-get-top-fans}
@aboutfun{artist-get-top-tags}
@aboutfun{artist-get-top-tracks}
@aboutfun{artist-search}
@end{section}
@begin[Geo]{section}
@aboutfun{geo-get-events}
@aboutfun{geo-top-artists}
@aboutfun{geo-top-tracks}
@end{section}
@begin[User]{section}
@aboutfun{user-get-events}
@aboutfun{user-get-friends}
@aboutfun{user-get-loved-tracks}
@aboutfun{user-get-neighbours}
@aboutfun{user-get-top-albums}
@aboutfun{user-get-top-artists}
@aboutfun{user-get-top-tags}
@aboutfun{user-get-top-tracks}
@aboutfun{user-get-recent-tracks}
@aboutfun{user-get-shouts}
@aboutfun{user-get-weekly-album-chart}
@aboutfun{user-get-weekly-artist-chart}
@aboutfun{user-get-weekly-chart-list}
@aboutfun{user-get-weekly-track-chart}
@end{section}
@begin[Group]{section}
@aboutfun{group-get-members}
@aboutfun{group-get-weekly-album-chart}
@aboutfun{group-get-weekly-artist-chart}
@aboutfun{group-get-weekly-chart-list}
@aboutfun{group-get-weekly-track-chart}
@end{section}
@begin[Library]{section}
@aboutfun{library-get-albums}
@aboutfun{library-get-artists}
@aboutfun{library-get-tracks}
@end{section}
@begin[Tag]{section}
@aboutfun{tag-get-similar}
@aboutfun{tag-get-similar}
@aboutfun{tag-get-top-albums}
@aboutfun{tag-get-top-artists}
@aboutfun{tag-get-top-tracks}
@aboutfun{tag-get-top-tags}
@aboutfun{tag-get-weekly-artist-chart}
@aboutfun{tag-get-weekly-chart-list}
@aboutfun{tag-search}
@end{section}
@begin[Track]{section}
@aboutfun{track-get-info}
@aboutfun{track-get-similar}
@aboutfun{track-get-top-fans}
@aboutfun{track-get-top-tags}
@aboutfun{track-search}
@end{section}
@begin[Events]{section}
@aboutfun{event-get-info}
@aboutfun{event-get-shouts}
@end{section}
@begin[TasteOMeter]{section}
@aboutfun{tasteometer-compare}
@end{section}
common-lisp.
Next: Indexes, Previous: Packages, Up: The cl-lastfm Reference Manual [Contents][Index]
Definitions are sorted by export status, category, package, and then by lexicographic order.
Next: Internals, Previous: Definitions, Up: Definitions [Contents][Index]
Next: Ordinary functions, Previous: Public Interface, Up: Public Interface [Contents][Index]
If T activate some logs.
Next: Generic functions, Previous: Special variables, Up: Public Interface [Contents][Index]
@short{Get the metadata for an album on Last.fm using the album name or a
musicbrainz id. See @fun{playlist-fetch} on how to get the album playlist.
This service does not require authentication.}
@arg[api-key]{A Last.fm API key}
@arg[artist-name]{The artist name in question}
@arg[album-name]{The album name in question}
@arg[mbid]{The musicbrainz id for the album}
@arg[lang]{The language to return the biography in, expressed as an
ISO 639 alpha-2 code}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Search for an album by name. Returns album matches sorted by relevance.
This service does not require authentication.}
@arg[api-key]{A Last.fm API key}
@arg[album-name]{The album name in question}
@arg[limit]{Limit the number of albums returned at one time. Default (maximum)
is 30}
@arg[page]{Scan into the results by specifying a page number. Defaults to
first page}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get a list of upcoming events for this artist. Easily integratable
into calendars, using the ical standard.
This service does not require authentication.}
@arg[api-key]{A Last.fm API key}
@arg[artist-name]{The artist name in question}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get the metadata for an artist on Last.fm. Includes biography. .
This service does not require authentication.}
@arg[api-key]{A Last.fm API key}
@arg[artist-name]{The artist name in question}
@arg[mbid]{The musicbrainz id for the artist}
@arg[lang]{The language to return the biography in, expressed as an ISO 639
alpha-2 code}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get all the artists similar to this artist.
This service does not require authentication.}
@arg[api-key]{A Last.fm API key}
@arg[artist-name]{The artist name in question}
@arg[limit]{Limit the number of similar artists returned}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get the top albums for an artist on Last.fm, ordered by popularity.
This service does not require authentication.}
@arg[api-key]{A Last.fm API key}
@arg[artist-name]{The artist name in question}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get the top fans for an artist on Last.fm, based on listening data.
This service does not require authentication.}
@arg[api-key]{A Last.fm API key}
@arg[artist-name]{The artist name in question}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get the top tags for an artist on Last.fm, ordered by popularity.
This service does not require authentication.}
@arg[api-key]{A Last.fm API key}
@arg[artist-name]{The artist name in question}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get the top tracks by an artist on Last.fm, ordered by popularity
This service does not require authentication.}
@arg[api-key]{A Last.fm API key}
@arg[artist-name]{The artist name in question}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Search for an artist by name. Returns artist matches sorted by
relevance.
This service does not require authentication.}
@arg[api-key]{A Last.fm API key}
@arg[artist-name]{The artist name in question}
@arg[limit]{Limit the number of artists returned at one time. Default
(maximum) is 30}
@arg[page]{Scan into the results by specifying a page number. Defaults to
first page}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get the metadata for an event on Last.fm. Includes attendance
and lineup information}
@arg[api_key]{A Last.fm API key}
@arg[eventid]{The numeric Last.fm event id}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get shouts for this event} @arg[api_key]{A Last.fm API key} @arg[eventid]{The numeric Last.fm event id} @see-condition{lastfm-request-error} @return{An XML stream}
@short{Get all events in a specific location by country or city name.
This service does not require authentication}
@arg[api_key]{A Last.fm API key}
@arg[location]{Specifies a location to retrieve events for (service returns
nearby events by default}
@arg[lat]{Specifies a latitude value to retrieve events for (service returns
nearby events by default}
@arg[long]{Specifies a longitude value to retrieve events for (service returns
nearby events by default)}
@arg[page]{Display more results by pagination}
@arg[distance]{Find events within a specified distance}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get the most popular artists on Last.fm by country.
This service does not require authentication}
@arg[api_key]{A Last.fm API key}
@arg[country-name]{A country name, as defined by the ISO 3166-1 country names
standard}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get the most popular tracks on Last.fm by country .
This service does not require authentication}
@arg[api_key]{A Last.fm API key}
@arg[country-name]{A country name, as defined by the ISO 3166-1 country names
standard}
@arg[location]{A metro name, to fetch the charts for (must be within the country
specified)}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get a list of members for this group.
This service does not require authentication}
@arg[api_key]{A Last.fm API key}
@arg[group]{The group name to fetch the members of}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get an album chart for a group, for a given date range. If no date range
is supplied, it will return the most recent album chart for this group.}
@arg[api_key]{A Last.fm API key}
@arg[group]{The last.fm group name to fetch the charts of}
@arg[from]{The date at which the chart should start from}
@arg[to]{The date at which the chart should end on}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get an artist chart for a group, for a given date range. If no date
range is supplied, it will return the most recent album chart for this group}
@arg[api_key]{A Last.fm API key}
@arg[group]{The last.fm group name to fetch the charts of}
@arg[from]{The date at which the chart should start from}
@arg[to]{The date at which the chart should end on}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get a list of available charts for this group, expressed as date
ranges which can be sent to the chart services}
@arg[api_key]{A Last.fm API key}
@arg[group]{The last.fm group name to fetch the charts list for}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get a track chart for a group, for a given date range. If no date
range is supplied, it will return the most recent album chart for this group}
@arg[api_key]{A Last.fm API key}
@arg[group]{The last.fm group name to fetch the charts of}
@arg[from]{The date at which the chart should start from}
@arg[to]{The date at which the chart should end on}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{A paginated list of all the albums in a user’s library, with play
counts and tag counts}
@arg[api_key]{A Last.fm API key}
@arg[user]{The user whose library you want to fetch}
@arg[limit]{Limit the amount of albums returned}
@arg[page]{The page number you wish to scan to}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{A paginated list of all the artists in a user’s library, with play
counts and tag counts}
@arg[api_key]{A Last.fm API key}
@arg[user]{The user whose library you want to fetch}
@arg[limit]{Limit the amount of artists returned}
@arg[page]{The page number you wish to scan to}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{A paginated list of all the tracks in a user’s library, with play
counts and tag counts. }
@arg[api_key]{A Last.fm API key}
@arg[user]{The user whose library you want to fetch}
@arg[limit]{Limit the amount of tracks returned}
@arg[page]{The page number you wish to scan to}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Search for tags similar to this one. Returns tags ranked by
similarity, based on listening data}
@arg[api_key]{A Last.fm API key}
@arg[tag]{The tag name in question}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get the top albums tagged by this tag, ordered by tag count}
@arg[api_key]{A Last.fm API key}
@arg[tag]{The tag name in question}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get the top artists tagged by this tag, ordered by tag count}
@arg[api_key]{A Last.fm API key}
@arg[tag]{The tag name in question}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Fetches the top global tags on Last.fm, sorted by popularity
(number of times used).}
@arg[api_key]{A Last.fm API key}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get the top tracks tagged by this tag, ordered by tag count}
@arg[api_key]{A Last.fm API key}
@arg[tag]{The tag name in question}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get an artist chart for a tag, for a given date range.
If no date range is supplied, it will return the most recent artist chart
for this tag}
@arg[api_key]{A Last.fm API key}
@arg[tag]{The tag name in question}
@arg[from]{The date at which the chart should start from}
@arg[to]{The date at which the chart should end on}
@arg[limit]{The number of chart items to return}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get a list of available charts for this tag, expressed as date
ranges which can be sent to the chart services}
@arg[api_key]{A Last.fm API key}
@arg[tag]{The tag name in question}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Search for a tag by name. Returns matches sorted by relevance}
@arg[api_key]{A Last.fm API key}
@arg[tag]{The tag name in question}
@arg[limit]{Limit the number of tags returned at one time}
@arg[page]{Scan into the results by specifying a page number}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get a Tasteometer score from two inputs, along with a list of
shared artists. If the input is a User or a Myspace URL, some additional
information is returned.}
@arg[api_key]{A Last.fm API key}
@arg[fisrt-type]{Must be user, artists or myspace}
@arg[second-type]{Must be user, artists or myspace}
@arg[first-value]{Must be : Last.fm username or comma-separated artist names
or a MySpace profile URL}
@arg[second-value]{Must be : Last.fm username or comma-separated artist names
or a MySpace profile URL}
@arg[limit]{How many shared artists to display}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get the metadata for a track on Last.fm using the artist/track name
or a musicbrainz id}
@arg[api-key]{A Last.fm API key}
@arg[artist]{The artist name in question}
@arg[track]{The track name in question}
@arg[mbid]{The musicbrainz id for the track}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get the similar tracks for this track on Last.fm, based on
listening data}
@arg[api-key]{A Last.fm API key}
@arg[artist]{The artist name in question}
@arg[track]{The track name in question}
@arg[mbid]{The musicbrainz id for the track}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get the top fans for this track on Last.fm, based on listening data.
Supply either track & artist name or musicbrainz id}
@arg[api-key]{A Last.fm API key}
@arg[artist]{The artist name in question}
@arg[track]{The track name in question}
@arg[mbid]{The musicbrainz id for the track}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get the top tags for this track on Last.fm, ordered by tag count.
Supply either track & artist name or mbid}
@arg[api-key]{A Last.fm API key}
@arg[artist]{The artist name in question}
@arg[track]{The track name in question}
@arg[mbid]{The musicbrainz id for the track}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Search for a track by track name. Returns track matches sorted by
relevance}
@arg[api-key]{A Last.fm API key}
@arg[track]{The track name in question}
@arg[limit]{The number of tracks returned at one time}
@arg[page]{Scan into the results by specifying a page number}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get a list of upcoming events that this user is attending.
Easily integratable into calendars, using the ical standard.
This service does not require authentication}
@arg[api_key]{A Last.fm API key}
@arg[user]{The user to fetch the events for}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get a list of the user’s friends on Last.fm
This service does not require authentication}
@arg[api_key]{A Last.fm API key}
@arg[user]{The last.fm username to fetch the friends of}
@arg[limit]{An integer used to limit the number of friends returned}
@arg[page]{An integer representing the page number to fetch. Defaults to first page}
@arg[recenttracks]{Whether or not to include information about friends’ recent
listening in the response}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get the last 50 tracks loved by a user.
This service does not require authentication}
@arg[api_key]{A Last.fm API key}
@arg[user]{The user name to fetch the loved tracks for}
@arg[limit]{An integer representing the number of results to fetch per page. Defaults to 50}
@arg[page]{An integer representing the page number to fetch. Defaults to first page}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get a list of a user’s neighbours on Last.fm
This service does not require authentication}
@arg[api_key]{A Last.fm API key}
@arg[user]{The last.fm username to fetch the neighbours of}
@arg[limit]{An integer used to limit the number of neighbours returned}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get a list of the recent tracks listened to by this user. Indicates
now playing track if the user is currently listening}
@arg[api_key]{A Last.fm API key}
@arg[user]{The user name to fetch the recent tracks of}
@arg[limit]{An integer used to limit the number of tracks returned}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get shouts for this user} @arg[api_key]{A Last.fm API key} @arg[user]{The user name to fetch shouts for} @see-condition{lastfm-request-error} @return{An XML stream}
@short{Get the top albums listened to by a user. You can stipulate a time
period. Sends the overall chart by default}
@arg[api_key]{A Last.fm API key}
@arg[user]{The user name to fetch top albums for}
@arg[period]{overall | 3month | 6month | 12month - The time period over which
to retrieve top albums for.}
@arg[limit]{The number of results to fetch per page. Defaults to 50}
@arg[page]{The page number to fetch. Defaults to first page}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get the top artists listened to by a user. You can stipulate a time
period. Sends the overall chart by default.}
@arg[api_key]{A Last.fm API key}
@arg[user]{The user name to fetch top artists for}
@arg[period]{overall | 3month | 6month | 12month - The time period over which
to retrieve top albums for.}
@arg[limit]{The number of results to fetch per page. Defaults to 50}
@arg[page]{The page number to fetch. Defaults to first page}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get the top tags used by this user} @arg[api_key]{A Last.fm API key} @arg[user]{The user name} @arg[limit]{The number of tags returned} @see-condition{lastfm-request-error} @return{An XML stream}
@short{Get the top tracks listened to by a user. You can stipulate a time
period. Sends the overall chart by default. }
@arg[api_key]{A Last.fm API key}
@arg[user]{The user name to fetch top tracks for}
@arg[period]{overall | 3month | 6month | 12month - The time period over which
to retrieve top tracks for.}
@arg[limit]{The number of results to fetch per page. Defaults to 50}
@arg[page]{The page number to fetch. Defaults to first page}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get an album chart for a user profile, for a given date range.
If no date range is supplied, it will return the most recent album chart for
this user.}
@arg[api_key]{A Last.fm API key}
@arg[user]{The last.fm username to fetch the charts of}
@arg[from]{The date at which the chart should start from}
@arg[to]{The date at which the chart should end on}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get an artist chart for a user profile, for a given date range.
If no date range is supplied, it will return the most recent artist chart for
this user.}
@arg[api_key]{A Last.fm API key}
@arg[user]{The last.fm username to fetch the charts of}
@arg[from]{The date at which the chart should start from}
@arg[to]{The date at which the chart should end on}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get a list of available charts for this user, expressed as date
ranges which can be sent to the chart services}
@arg[api_key]{A Last.fm API key}
@arg[user]{The last.fm username to fetch the charts list for}
@see-condition{lastfm-request-error}
@return{An XML stream}
@short{Get a track chart for a user profile, for a given date range.
If no date range is supplied, it will return the most recent track chart
for this user}
@arg[api_key]{A Last.fm API key}
@arg[user]{The last.fm username to fetch the charts of}
@arg[from]{The date at which the chart should start from}
@arg[to]{The date at which the chart should end on}
@see-condition{lastfm-request-error}
@return{An XML stream}
Next: Conditions, Previous: Ordinary functions, Up: Public Interface [Contents][Index]
code.
Previous: Generic functions, Up: Public Interface [Contents][Index]
Main Lastfm error.
simple-error.
Explanation message.
:message
This slot is read-only.
Lastfm protocol error.
Condition raised when an invalide request to the
Lastfm web services is performed.
Available codes are :
@pre{
* 2 : Invalid service -This service does not exist
* 3 : Invalid Method - No method with that name in this package
* 4 : Authentication Failed - You do not have permissions to access the service
* 5 : Invalid format - This service doesn’t exist in that format
* 6 : Invalid parameters - Your request is missing a required parameter
* 7 : Invalid resource specified
* 9 : Invalid session key - Please re-authenticate
* 10 : Invalid API key - You must be granted a valid key by last.fm
* 11 : Service Offline - This service is temporarily offline. Try again later.
* 12 : Subscribers Only - This service is only available to paid last.fm subscribers
}
The error code.
:code
This slot is read-only.
Previous: Public Interface, Up: Definitions [Contents][Index]
Next: Special variables, Previous: Internals, Up: Internals [Contents][Index]
The LastFM web service.
Next: Ordinary functions, Previous: Special variables, Up: Internals [Contents][Index]
Macro which creates an HTTP url, add parameters executing body, and performs the HTTP request defined by uri.
Extract a LastFM error from a ‘XML’ message. Returns an error code and an error message.
Get current date in YYYY-MM-DD hh:mm:ss format.
Get current date in CONTROL-STRING format.
Get current date in YYYYMMDDHHMMSS format.
Retreive informations from LastFM Web Service.
‘QUERY’ is the HTTP request.
‘PARAMETERS’ is a list of assoc list which specify HTTP parameters.
‘METHOD’ is the HTTP method used to perform the HTTP call.
Get the Unix timestamp : seconds since Jan 01 1970.
URL encode in UTF-8 the sequence.
Previous: Definitions, Up: The cl-lastfm Reference Manual [Contents][Index]
Jump to: | A D E F G L M P R T U W |
---|
Jump to: | A D E F G L M P R T U W |
---|
Next: Data types, Previous: Functions, Up: Indexes [Contents][Index]
Jump to: | *
+
C M S |
---|
Jump to: | *
+
C M S |
---|
Jump to: | C F L M P S T |
---|
Jump to: | C F L M P S T |
---|