ionic-airbop-client
v1.2.0
Published
AngularJS service for connecting to AirBop GCM Push Messaging server
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-clientIn 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.
