[Aerogear-users] Trouble sending Android Push Notifications
Matthias Wessendorf
matzew at apache.org
Thu Nov 26 09:32:48 EST 2015
On Thu, Nov 26, 2015 at 11:24 AM, Rob Willett <
rob.aerogear at robertwillett.com> wrote:
> Hi,
>
> We’ve got iOS notifications working well and so we thought we’d push our
> luck and get Android notifications up and running. We’ve had them working
> before with another plugin so it can’t be that difficult….
>
> We’ve followed the guide from here
>
>
> https://aerogear.org/docs/unifiedpush/aerogear-push-android/guides/#troubleshooting
>
> The Google web interface has changed but its still pretty much the same.
>
A member of our docs team is already on it:
https://issues.jboss.org/browse/AGPUSH-1536
-M
>
> 1.
>
> We’ve got and logged the Project Number (which is the Sender Id).
> 2.
>
> We’ve created a new server API key (is this the same as the GCM
> Messaging key?)
>
> This appears to be all thats needed. We have an very old version of our
> app sitting in development in the Google Play Store but its never been
> released as we focussed on the iOS version. That used to linked to the GCM
> information but we have unlinked that now.
>
> 1.
>
> We have created a new variant on the UPS for Android. We create a
> name, description and where it asks for the Google Cloud Messaging Key we
> enter the Server API key we created in point 2. This is a bit we are
> unclear about, is the google Cloud Messaging Key the same as the Server API
> key we generated in Google Play services console? One of the things we
> noticed is that the example Google Cloud Messaging Key in the UPS dialogue
> box starts with a different few header bytes e.g. 5a44 whereas all the
> Server ApI keys start Alza. We are not experts on cryptography but we
> thought that *might* indicate a different type of key. It also might
> be nothing at all and Google has simply updated something.
> 2.
>
> We add in the Project number.
> 3.
>
> This creates the Android variant in the UPS dashboard. If we click on
> the variant we can see the expanded information showing the Server URL, the
> Variant ID and the Variant Secret.
> 4.
>
> This seems to work much the same as the iOS variant.
> 5.
>
> We then update our Cordova app and update the pushConfig field.
>
> var aeroGearPushConfig = {
> pushServerURL: "https://push-jambuster.rhcloud.com/ag-push/", // Checked that this matches the Android variant.
> ios: {
> variantID: “XXXXX-TTTc-OOOO-RRRR-BBBHBHBH”, // Obscured
> variantSecret: “JKJKJ-HHHH-PPOPIO-sdsds-1231232” // Obscured
> } ,
> android: {
> senderID: “XXXXXX” , // Changed to protect the innocent but checked that the senderID is the same as the Google Project Id
> variantID: “345345-345345-45345-xxxx-zzzzz” , // Changed but checked to make sure this is the Android VariantId
> variantSecret: "9b762d92-a7f0-4e8b-b6e4-adde4950c7e6" // Changed but checked to make sure this is the Android VariantSecret
> } ,
> sendMetricInfo: true,
> alias: UUID // This is a unique string
> };
>
> We compile and run it on a real device, a Nexus 5. We create a unique
> alias to be sent to be sent as the alias. This is the UUID field
>
> 1.
>
> When we run the code and inspect the output in Chrome, the aeroGear
> Success Handler is called which we hope means success.
> 2.
>
> When we inspect the variant in the UPS dashboard, we can see that the
> a device with the right alias is created. The alias matches the alias we
> sent.
> 3.
>
> This all looks good. We have three real (i.e. non simulator) test
> devices in our UPS dashboard, two iOS devices and one Android device.
> 4.
>
> We click on the Send Push icon in the UPS dashboard to create some
> sample notifications. We send a simple test message to all variants. The
> two iPhones each get the test message and the Android phone doesn’t.
> 5.
>
> We click on the Dashboard icon in the UPS console, and then recent
> activity. We can see that the UPS server thinks it has sent the test
> message to the iOS and the Android variants. with no issues. We get alerts
> for the iOS pop up but nothing for the Android version.
>
> Notification Receivers Status Timestamp
> {"ipAddress”:”XX.YY.ZZ.216","clientIdentifier":"A... 3 installations Succeeded 26 Nov, 10:09:04, 2015
> Request IP: XX.YY.ZZ.216 Details
> Message: test11
> Variants:
> Android Jambuster Succeeded 1 installations
> Jambuster Development Succeeded 2 installations
>
>
> 1.
>
> The main UPS console doesn’t report any errors and it states that 3
> installations are registered. We’ve sent 657 notifications since yesterday
> trying to see what the problem is. We though that using the UPS console
> removed any issues with us creating the test message. Since we can see the
> iOS devices getting the test message, we are struggling to understand why
> the Android wouldn’t.
> 2.
>
> We’ve tried with the Android app running in the foreground, background
> and not running at all to see if that makes any difference and still
> nothing comes through.
> 3.
>
> If we look at the log files using roc tail, we can see that the
> messages get passed on. No error messages are reported.
>
> 2015/11/26 05:20:38,528 INFO [PushNotificationSenderEndpoint] (EJB default - 7) Processing send request with '[alert=Test12, criteria=[aliases=null, deviceTypes=null, categories=null, variants=null], time-to-live=-1]' payload
> 2015/11/26 05:20:38,530 INFO [PushNotificationSenderEndpoint] (http-/127.3.204.1:8080-5) Message submitted to PushNetworks for further processing
> 2015/11/26 05:20:38,533 INFO [GCMPushNotificationSender] (EJB default - 7) Sending payload for [1] devices to GCM
> 2015/11/26 05:20:38,590 INFO [GCMPushNotificationSender] (EJB default - 7) Message to GCM has been submitted
> 2015/11/26 05:20:38,726 INFO [APNsPushNotificationSender] (EJB default - 7) Message to APNs has been submitted
>
> Whilst it is impossible for people to debug our code and we don’t want
> people to, we’re struggling to understand what we could have done wrong.
> The fact we are getting iOS messages through whilst Android messages are
> failing (but with no error) is perplexing. We have rebuild the Server API
> kets in Google, deleted and rebuilt the Android variant but we’ve now hit a
> brick wall. We have a nagging feeling it is something to do with the GCM
> Server API key but everything reports OK.
>
> Any and all suggestions gratefully received.
>
> Thanks
>
> Rob
>
> _______________________________________________
> Aerogear-users mailing list
> Aerogear-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/aerogear-users
>
>
--
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-users/attachments/20151126/ad7d74af/attachment-0001.html
More information about the Aerogear-users
mailing list