Skip to content

Instantly share code, notes, and snippets.

View corinnekrych's full-sized avatar
🐝

corinnekrych corinnekrych

🐝
View GitHub Profile
Last AeroGear release (1.2.0) main focus is on push notifications. (TODO link to Matzew's blog.) Push notifications are heavily used in today mobile apps. They become key features, changing the UX in a push-notification-enabled application. Notifications can wake up applications to provide updates, and that simple feature brings thousands of business use cases.
However, with the broad variety of proprietary Push notification solutions: APNS (Apple Push Notification Service), GCM (Google Cloud Messaging), AMD (Amazon Device Messaging), WNS (Window Push Notification Service), etc... and with SimplePush notification for Firefox OS, notifications are for web app too! (TODO link to Dan)
It mays quickly sound like cacophony to a developer willing to target multiple market places. Here comes Unified Push Server, a solution to treat push notifications in cross platform approach. Push in the Open.
But AeroGear Unified Push Server, in short how does it work?
A picture is worth a thousand words:
public class AeroDocApplication extends Application {
private static final String TAG = AeroDocApplication.class.getSimpleName();
private static final String BASE_BACKEND_URL = "http://10.0.2.2:8080/aerodoc";
private static final String UNIFIED_PUSH_URL = "http://10.0.2.2:8080/ag-push/";
private static final String GCM_SENDER_ID = "206498020738";
private static final String VARIANT_ID = "2c8df123-c0b0-4449-8946-8008d7050964";
private static final String SECRET = "25bbf3cc-c923-422e-9157-fc7e0a54f883";
@corinnekrych
corinnekrych / gist:6081322
Created July 25, 2013 16:17
aerogear.org errors
➜ aerogear.org git:(master) ✗ bundle exec jekyll --server --auto
Configuration from /Users/corinne/aerogear/SiteResponsive/aerogear.org/_config.yml
Auto-regenerating enabled: /Users/corinne/aerogear/SiteResponsive/aerogear.org -> /Users/corinne/aerogear/SiteResponsive/aerogear.org/_site
[2013-07-25 11:12:00] regeneration: 2910 files changed
YAML Exception reading 2012-12-20-aerogear-1.0.0.M7-is-out.md: invalid byte sequence in US-ASCII
YAML Exception reading 2013-03-04-aerogear-1.0.0.CR1-is-out.md: invalid byte sequence in US-ASCII
YAML Exception reading 2013-03-28-aerogear-1.0.0-is-out.md: invalid byte sequence in US-ASCII
YAML Exception reading AerogearAndroidPipes101.asciidoc: invalid byte sequence in US-ASCII
[2013-07-25 11:12:00] INFO WEBrick 1.3.1
[2013-07-25 11:12:00] INFO ruby 1.9.1 (2011-02-18) [i386-darwin12.4.0]
@corinnekrych
corinnekrych / gist:5965177
Created July 10, 2013 10:12
File structure
drwxr-xr-x 3 corinne staff 102 Jun 17 09:11 AeroGear-OTP.xctemplate/
drwxr-xr-x 3 corinne staff 102 Jul 9 14:04 AeroGear-Push.xctemplate/
drwxr-xr-x 6 corinne staff 204 Jul 9 14:04 AeroGear.xctemplate/
drwxr-xr-x 5 corinne staff 170 Jul 9 14:04 Application.xctemplate/
drwxr-xr-x 3 corinne staff 102 Jun 17 09:11 CocoaPods.xctemplate/
./AeroGear-OTP.xctemplate:
total 8
-rwxr-xr-x 1 corinne staff 1664 Jun 17 09:11 TemplateInfo.plist*
@corinnekrych
corinnekrych / gist:5946754
Last active December 19, 2015 11:19 — forked from cvasilak/gist:5942748

Easy enterprise iOS app

Devoxx (with AeroGear)

Type: Tools in Action

Abstract: Today, it’s a fact: mobile and smartphones sales are double than personal computers. Tomorrow, enterprise applications will be mobile apps. What are the challenges of mobile apps: accessing RESTful services, paging, data storage, security features... But not only your device interacts with cloud services, enterprise applications interact with registered devices providing you valuable contextual information. How do you unified push notifications across different platforms?

@corinnekrych
corinnekrych / gist:5934947
Last active December 19, 2015 09:39
Devoxx Proposals

Easy enterprise iOS app

(with AeroGear)

Type: Tools in Action

Abstract: Today, it’s a fact: mobile and smartphones sales are double than personal computers. Tomorrow, enterprise applications will be mobile apps. What are the challenges of mobile apps: accessing RESTful services, paging, data storage, security features... But not only your device interacts with cloud services, enterprise applications interact with registered devices providing you valuable contextual information.

Libtool build/AeroGear-iOS/Build/Products/Debug-iphonesimulator/libAeroGear-iOS.a normal i386
cd /Users/corinne/aerogear/aerogear-ios/AeroGear-iOS
setenv IPHONEOS_DEPLOYMENT_TARGET 4.3
setenv PATH "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool -static -arch_only i386 -syslibroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.1.sdk -L/Users/corinne/aerogear/aerogear-ios/AeroGear-iOS/build/AeroGear-iOS/Build/Products/Debug-iphonesimulator -filelist /Users/corinne/Library/Developer/Xcode/DerivedData/AeroGear-iOS-fkgkmyifcwjulcalwqjuiwywxbng/Build/Intermediates/AeroGear-iOS.build/Debug-iphonesimulator/AeroGear-iOS.build/Objects-normal/i386/AeroGear-iOS.LinkFileList -ObjC -framework CoreGraphics -framework Securit
package org.aerogear.pushee.tests
import com.jayway.restassured.RestAssured
import groovy.json.JsonBuilder
import org.jboss.arquillian.container.test.api.Deployment
import org.jboss.arquillian.test.api.ArquillianResource
import org.jboss.shrinkwrap.api.spec.WebArchive
import spock.lang.Specification
import spock.lang.Shared
@corinnekrych
corinnekrych / gist:5712058
Last active December 18, 2015 02:38
MarJUG proposal

Purpose

Server wants to push notification to client. How to provide an unified way of pushing notification? Aerogear Unified push. See spec for explanation.

You want to contribute to this effort? What about writing functional tests! Yes... It's fun it's with Spock.

If you want to try it

Let's setup your environment for pushee (unified push server) + simplePush

Purpose
=======
Server wants to push notification to client. How to provide an unified way of pushing notification?
Aerogear Unified push. See [spec for explanation](https://github.com/aerogear/aerogear.org/blob/master/docs/specs/aerogear-server-push/index.markdown).
You want to contribute to this effort? what about writing functional test.
If you want to try it
======================
Let's setup your environment. Note that this is a work in progress.