ionic-airbop-client
v1.2.0
Published
AngularJS service for connecting to AirBop GCM Push Messaging server
Downloads
7
Maintainers
Readme
Ionic AirBop Client
An AngularJS service for connecting to AirBop GCM Push Messaging server.
Install
After creating a new Ionic project run this command:
ionic add ionic-airbop-client
In the main HTML page you have to place these references:
<script src="lib/ionic-airbop-client/airbop-client.min.js"></script>
<script src="lib/tiny-sha256/sha256.min.js"></script>
Then, include ionic-airbop-client
as a dependency in your angular module:
angular.module('myApp', ['AirBopClient'])
.controller('SampleCtrl', ['$airbopClient', function($airbopClient) {
...
}]);
Usage
This plugin has two methods: $airbopClient.register(options)
and $airbopClient.unregister(options)
.
options parameter is an object.
Registering with AirBop
Call register() with the following options:
- airbopAppKey <String> [mandantory] - AIRBOP_APP_KEY from AirBop registration
- airbopAppSecret <String> [mandantory] - APP_SECRET from AirBop registration
- regid <String> [mandantory] - this ID is coming from GCM server after registration
- country <String> [optional]
- state <String> [optional]
- label <String> [optional]
- language <String> [optional]
- latitude <String> [optional]
- longitude <String> [optional]
Unregistering from AirBop
Call unregister() with the following options:
- airbopAppKey <String> [mandantory] - AIRBOP_APP_KEY from AirBop registration
- airbopAppSecret <String> [mandantory] - APP_SECRET from AirBop registration
- regid <String> [mandantory] - this ID is coming from GCM server after registration
Additional info
You can get country code by using cordova-plugin-sim plugin.
You can get latitude and longitude by using cordova-plugin-geolocation plugin.
You can get get country and state from geolocation data using reverse geocoding.
Content Security Policy
If you use the latest Ionic version it will install cordova-plugin-whitelist plugin. It needs to whitelist the used external resources.
To allow AirBop server communication add this line to the HTML header:
<meta http-equiv="Content-Security-Policy" content="default-src 'self' airbop.com">
To enable everything ( all requests, inline styles, and eval() ) use this version:
<meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'">
Demo Application
See https://github.com/pbakondy/gcm-demo-app
License
ionic-airbop-client is licensed under the MIT Open Source license. For more information, see the LICENSE file in this repository.