public
Description: Objective-C Framework for the last.fm API
Homepage:
Clone URL: git://github.com/westbaer/FMEngine.git
Click here to lend your support to: FMEngine and make a donation at www.pledgie.com !
name age message
directory Classes/ Fri May 22 15:58:13 -0700 2009 fixed encoding issue on GET requests. [westbaer]
directory English.lproj/ Tue Apr 28 15:33:13 -0700 2009 first working version of FMEngine. [westbaer]
directory FMEngine.xcodeproj/ Wed May 06 14:17:56 -0700 2009 removed NHDebug [westbaer]
file FMEngine_Prefix.pch Tue Apr 28 15:33:13 -0700 2009 first working version of FMEngine. [westbaer]
file Info.plist Tue Apr 28 15:33:13 -0700 2009 first working version of FMEngine. [westbaer]
file LICENSE Tue Apr 28 15:33:13 -0700 2009 first working version of FMEngine. [westbaer]
file README Thu May 21 14:14:32 -0700 2009 Updated README. [westbaer]
file main.m Tue Apr 28 15:33:13 -0700 2009 first working version of FMEngine. [westbaer]
README
=== What's FMEngine? ===

FMEngine is an open-source Objective-C framework for the last.fm API. You can use it in your iPhone and Mac OS X 
applications.
The source is released under the terms of the MIT License. The full license text can be found in the file LICENSE. 

FMEngine does *not* parse the output of the last.fm API (BYOP - Bring your own parser). It returns an NSData object that 
contains either XML or JSON output. Therefore it handles authentication, parameter signing, etc.

== Adding FMEngine to your Xcode project ==

1. Clone the FMEngine repository: git://github.com/westbaer/FMEngine.git

2. Add *all* files in the Classes/Framework directory to your project.

3. Get your API Key + Secret Key from last.fm and enter it in FMEngine.h (_LASTFM_API_KEY_, _LASTFM_SECRETK_).

4. Comment out the line "#define _USE_JSON_ 1" if you prefer XML over JSON.

5. Add 'Security.framework' to your project.

6. Start using FMEngine. Have fun!

=== Reference ==

Asynchronous API Requests

- (void)performMethod:(NSString *)method withTarget:(id)target withParameters:(NSDictionary *)params 
andAction:(SEL)callback useSignature:(BOOL)useSig httpMethod:(NSString *)httpMethod;


Synchronous API Requests

- (NSData *)dataForMethod:(NSString *)method withParameters:(NSDictionary *)params useSignature:(BOOL)useSig 
httpMethod:(NSString *)httpMethod error:(NSError *)err;


Authentication Token

- (NSString *)generateAuthTokenFromUsername:(NSString *)username password:(NSString *)password;


=== Credits ===

Thanks to Sam Steele (c99koder) for the NSString+MD5 category and Matt Gemmell for the NSString+UUID category.


I hope you enjoy using FMEngine! :)

Cheers, 
Nicolas Haunold

Feedback:   westbaer [at] gmail [dot] com
Twitter:   http://twitter.com/_westbaer_