Gearing up for push notifications

Post on 22-Jun-2015

102 views 1 download

Tags:

description

Temp

Transcript of Gearing up for push notifications

Text

Gearing up for Push Notifications“If I have seen further it is by standing on the shoulders of giants.”

- Sir Isaac Newton

1

Keith D. Moore• Independent Software Consultant• KD Moore Consulting• http://www.kdmooreconsulting.com• keith@kdmooreconsulting.com• @keithdmoore94

2

What is a Push Notification?A method of notifying a user that an event has occurred and allowing the user to launch the application associated with it.

3

Push Notification Qualities• Asynchronous• Delivered even if the

app is not running• Sent to the app, if in

the foreground• May contain

additional data in its payload that can be used by the app

4

Push Notification Guidelines• Should not be abused• Message should be

short• Not intended for

mission critical events

5

Why do we need a Push Server ?• Because we are lazy developers

6

Why do we need a Push Server ?• Capitalize on the work of

others• Focus on our application• Separation of Concerns• Multiple disparate systems

integration

7

Push Notification Servers

8

AeroGear• Backed by Red Hat• Active community• Good documentation• Rest API based• Other services (OTP,

Crypto, Geofencing)

9

Aerogear Unified Push Server• Supports Android

and iOS platforms• Cordova Plugin• Open Source• Can be hosted in

the Cloud or internally

• Java Sender API• Admin UI

10

Aerogear Unified Push Server• deviceToken (unique device identifier)• alert (“New Contact ‘John Smith’ added”)• alias (“john@acme.com”)• categories (“recruiter”, “sales”)• variants (“iOS Free”, “Android Free”)• ttl (time to live)• deviceTypes (“iPad”, “iPhone”,

“AndroidTablet”)

11

AeroGear Unified Push Server

12

Aerogear on OpenShift(PaaS)• Backed by RedHat• Convenient• Practically free• Extremely easy to setup

• Aerogear UPS Cartridge• MySQL 5.5 Cartridge

• Nice command line tools• Jenkins Support• Docker support coming soon

13

Aerogear UPS Android Setup• Create a Google API project• Obtain Google API project

number• Obtain API Credentials Public

Key

14

Aerogear UPS iOS Setup• Setup Apple iOS developer

account (pay the $99)• Create Apple App ID• Create SSL Certificate for

APNs• Create Apple Provisioning

Profile

15

Aerogear UPS Common Setup• Install Aerogear Unified Push Server

(Locally, OpenShift or wherever)• Login to Aerogear Unified Push

Server with default credentials• Add Push Application

• Add Variant(s)• Android - Provide Google API

project number and API Key• iOS - Upload certificate and

provide passphrase

16

Server/Client App Setup Checklist• Setup server side application to

send push notifications• Setup mobile client by providing

push server url, variant info, etc.

17

Credits/Links• http://aerogear.org • https://www.openshift.com• http://developer.android.com/google/gcm/index.htm

l• https://developer.apple.com/notifications• http://aerogear.org/docs/unifiedpush/aerogear-push-

ios/

• All images, copyrights and trademarks belong to their respective owners. We are not directly affiliated with any of these companies.

18