[aerogear-dev] iOS Push Client: REGISTRATION

Matthias Wessendorf matzew at apache.org
Mon May 6 09:20:45 EDT 2013


Location of the project, is currently here:
https://github.com/matzew/ag-client-push-sdk

API:
https://github.com/matzew/ag-client-push-sdk/blob/master/push-sdk/AGDeviceRegistration.h


TEST (incl. OHHTTPStubs for mocking AFNetworking):
https://github.com/matzew/ag-client-push-sdk/blob/master/push-sdkTests/AGDeviceRegistrationSpec.m


-Matthias


On Mon, May 6, 2013 at 11:58 AM, Matthias Wessendorf <matzew at apache.org>wrote:

> Hi,
>
> the client side spec describes the required functionality to register
> devices with the Unified Push Server.
>
> The client SKD should be simple to use. For the iOS, I thought about a
> register that takes three blocks:
>
>    - ClientDeviceInformation object/protocol (similar to our
>    configuration objects)
>    - success callback
>    - failure callback
>
> // AppDelegate code/delegate function, for a push enabled application:- (void)application:(UIApplication *)application
>    // deviceToken provided by APNs
>    didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
>
>   // the AG AGDeviceRegistration helper/class:
>   [registration registerWithClientInfo:^(id<AGClientDeviceInformation> clientInfo) {
>     // apply the desired info:
>     clientInfo.token = deviceToken;
>     clientInfo.alias = @"mister at xyz.com";
>     clientInfo.mobileVariantID = @"123456432134564321345432";
>     // ... as needed more of the data;
>   } success:^(id responseObject) {
>      // invoked, on 200 HTTP response code from the Unified Push Server
>   } failure:^(NSError *error) {
>     // invoked:
>       // missing required data (e.g. no token submitted)
>       // on 4xx/5zz HTTP response codes from the Unified Push Server}];}
>
> The above registerWithClientInfo:successfailure method uses AFNetworking to
> submit the receiveddeviceToken to the *AeroGear Unified Push Server*. The
> desired information data is provided on the first callback.
>
> The concept of a "block" for setting up data/objects has been useful on
> AGPipeConfig, so reusing the concept here as well.
>
> *Note:* Class/method names may change over time...
>
> Thoughts ?
>
>
>
> -Matthias
>
>
> --
> Matthias Wessendorf
>
> blog: http://matthiaswessendorf.wordpress.com/
> sessions: http://www.slideshare.net/mwessendorf
> twitter: http://twitter.com/mwessendorf
>



-- 
Matthias Wessendorf

blog: http://matthiaswessendorf.wordpress.com/
sessions: http://www.slideshare.net/mwessendorf
twitter: http://twitter.com/mwessendorf
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/aerogear-dev/attachments/20130506/ee7de709/attachment.html 


More information about the aerogear-dev mailing list